ディープラーニングについてディープにラーニング。

思いっきり、自分が学んだことのアウトプットしていきますが、何分初心者。もし何かアドバイス等頂けましたら幸いです!

今日はUNDEMY

今日は数学の勉強から始めた。

いよいよ、ベクトル、テンソルの話に入り始め、
人工知能感が出てきた。


ではアウトプット。


スカラー

f:id:kawam0t0:20191218201852p:plain


1とか4とか1.2とかー7とかの通常の数値のこと。

ここは問題ないよね。
ちなみに、たまにコード書いてると、
b = 1.2e5とか書いてるやつある。
あれって、1.2×10の5乗って意味らしい。だから、今回やったら12万になる。

ベクトル

f:id:kawam0t0:20191218201912p:plain

スカラーを直線状に表したもの。
図みたいに小文字に矢印乗っけるやつ。
縦のベクトルもあれば、横のやつもある。

行列

f:id:kawam0t0:20191218201953p:plain

これ、行と列、めっちゃ間違えるけど、
横が行で縦が列になる。
行列の表現方法は( 行数 , 列数 )になる。
図の場合は、(3 , 4)。

テンソル

スカラーを複数次元で表現したもの。
言葉より図のほうがわかりやすい。

f:id:kawam0t0:20191218202302p:plain

こんな感じ。
テンソルになると、縦、横、奥行きが加わってくる。つまりは3方向の計算になり、複雑になる。
更に、「階」って考え方があって図のやつは3階で表現される。

コードで書いたほうがわかりやすいかな。

import numpy as np
a = np.array([[[0,1,2,3],
               [2,3,4,5],
               [4,5,6,7]],
              
              [[4,5,6,7],
               [5,6,7,8],
               [6,7,8,9]]]) #(2 , 3, 4)の3階のテンソル

b = np.array([[[0,1,2,3],
               [2,3,4,5],
               [4,5,6,7]],
              
              [[4,5,6,7],
               [5,6,7,8],
               [6,7,8,9]] ,
             
             [[4,5,6,7],
               [5,6,7,8],
               [6,7,8,9]]]) #(3 ,3 ,4)の3階のテンソル
"""
(2 ,3 , 4)とか(3 ,3 ,4)とかは何を表現しているのか?

2 → 層の数。
3 → 行数
4 → 列数
"""

コメントにも記載しているが、
Numpyで表現する場合、
(何層の行列があるのか , そのテンソルの行数 , そのテンソルの列数 ) で要素が3つあるから3階のテンソル

ということになる。
( 2 , 3 , 4 )だと、
2層のテンソルがあって、その各テンソルの行列は行3×列4で構成される3階のテンソルである。

って意味。
ここまではOK。


ではまた。