内積とは?新人エンジニアのためのやさしい解説

こんにちは。ゆうせいです。

今日は「内積」についてわかりやすく解説していきます。数学が苦手な方や、まだベクトルにあまり触れていない新人エンジニアの方でも理解できるように、できるだけ噛み砕いて説明しますね。

内積とは何か?

内積(ないせき)とは、二つのベクトルの関係を数値で表す方法です。ベクトルというのは「大きさ」と「向き」を持つ量のことです。たとえば、東に10メートル進む、というのもベクトルになります。

内積は、2つのベクトルが「どれくらい同じ方向を向いているか」を測るものだと思ってください。

  • 同じ方向なら大きな正の値
  • 直角(90度)なら0
  • 真逆の方向なら負の値

という結果になります。

ちょっとイメージしてみましょう。学校で習った「掛け算」に似ていて、ただし向きの要素が加わっているものです。

数式での表現

内積は次の2通りの方法で表せます。

1つ目は座標を使う方法です。
ベクトル a = (a₁, a₂) と b = (b₁, b₂) の内積は

a・b = a₁b₁ + a₂b₂

となります。これは単純に対応する成分を掛け算して足し算しているだけです。

2つ目は角度を使う方法です。
ベクトルの大きさを |a|, |b| とすると

a・b = |a||b|cosθ

ここで θ は2つのベクトルのなす角度です。

つまり、向きが同じなら cosθ = 1 なので最大値、直角なら cosθ = 0 で0、反対なら cosθ = -1 で負の値になります。

内積の具体例

例えば、a = (1, 2)、b = (3, 4) なら

a・b = 1×3 + 2×4 = 11

となります。11というのは2つのベクトルがある程度同じ方向を向いていることを意味します。

どんな場面で使うのか?

エンジニアとして内積はたくさんの場面で出てきます。

  • 機械学習での特徴量の類似度の計算
  • ゲーム開発でキャラクターの視界判定
  • 3Dグラフィックスでの光の当たり方の計算

など、幅広い分野で利用されます。

メリットとデメリット

メリットは「簡単な計算でベクトルの関係がわかる」こと。特に類似度を測るにはとても便利です。
一方のデメリットは「数値だけでは直感的に方向関係を完全に把握しづらい」点です。グラフで見ると理解しやすいのですが、数字だけではピンとこないかもしれません。

まとめ

内積は「2つのベクトルがどれくらい同じ方向を向いているか」を測るものです。
計算方法には「成分を掛け算して足す」と「大きさ×大きさ×cosθ」の2種類があり、状況に応じて使い分けられます。

次のステップとしては、内積と対になる概念である「外積」にも挑戦してみると理解が深まりますよ!

さて、あなたは今、自分が扱っているデータやプログラムに「内積」を応用できる場面を思いつきましたか?

セイ・コンサルティング・グループの新人エンジニア研修のメニューへのリンク

投稿者プロフィール

山崎講師
山崎講師代表取締役
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。