ディープラーニングG検定の勉強中 その15(ベクトルの長さ(絶対値))

書籍「最短コースでわかるディープラーニングの数学」の内容に沿って勉強しています。

今回は、ベクトルの長さについて見ていきます。

ベクトルの長さは、正とした向きのベクトルをそのまま正反対にしても同じであるため、ベクトルaについて、
式1のように絶対値で表します。

式1
3-3-1-1.png

このとき、図1のように各ベクトルが直角三角形になっている場合には、三平方の定理がそのまま当てはまります。

図1
3-3-1-2.png

斜辺の長さの2乗は、他の2つの辺の長さのそれぞれ2乗と等しいので、式3が成立します。

式3
3-3-1-3.png

つまり、斜辺の長さは式4となるわけです。

式4
3-3-1-4.png


このことは、3次元でも成り立ちます。
図2のとき、

図2
3-3-1-5.png

△OABと、△OBCは、それぞれが直角三角形になっているので、その2つの三角形のそれぞれで三平方の定理が成り立ちます。

式5
3-3-1-6.png

式6
3-3-1-7.png

この式5と式6から、式7も成り立つことになります。

式7
3-3-1-8.png

図2により、式8となるため、

式8
3-3-1-10.png

3次元においても、式9のように三平方の定理が成り立つことになります。同様にして式10のように多次元でも三平方の定理が成り立ちます。

式9
3-3-1-11.png

式10
3-3-1-14.png

この式10を総和∑で書くと式11になります。

式11
3-3-1-15.png


実際に数値を入れて計算してみます。

図2の目盛りを「1」とすると、式12がOCの長さということになります。

式12
3-3-1-12.png


これをPythonでも確認してみます。
参考サイト
UNPySide(【Python】三平方の定理)

--------------------
import math

OA = 3
AB = 4
BC = 2
OB = math.sqrt(OA**2 + AB**2)
OC = math.sqrt(OA**2 + AB**2 + BC**2)

print("OC = " + str(OC))

--------------------
出力結果
OC = 5.385164807134504

式10の√29と一致するかどうか、googleの検索窓に入れて検索してみると、自動的に計算されて、式13となり、Pythonの出力結果と同じとなりました(小数点以下の桁数は違いますが、小数第11位までは一致しています)。

式13
3-3-1-13.png


出力結果をルート記号のままで出力できそうですが、いろいろなサイトを見ても、概数で表示していることがほとんどのようです。
そういうものなんでしょうか。

ブログ気持玉

クリックして気持ちを伝えよう!

ログインしてクリックすれば、自分のブログへのリンクが付きます。

→ログインへ

なるほど(納得、参考になった、ヘー)
驚いた
面白い
ナイス
ガッツ(がんばれ!)
かわいい

気持玉数 : 0

この記事へのコメント