LoginSignup
0
0

More than 5 years have passed since last update.

「ゼロから作る Deep Learning」本 コマンド操作で学んでつまづいた箇所メモ

Last updated at Posted at 2017-06-22

ゼロから作る Deep Learning をコマンドをうちながら学ぶ つまづいたところなど

環境

  • windows10
  • Anaconda 4.4.0
  • python3.6.1

下準備

  • anacondaのインストール https://www.continuum.io/downloads  よりダウンロードしてインストールする
  • 『ゼロから作る Deep Learning』のリポジトリのインストール
  • anacondaと同一ディレクトリに https://github.com/oreilly-japan/deep-learning-from-scratch からダウンロードしたファイルを展開。通常はC:\Users\ユーザー名\Anaconda3 配下にインストールする。
  • window10のコマンドプロンプトを起動して、C:\Users\ユーザー名\Anaconda3 配下にcdする。

コマンドはチェンジディレクトリして、フルパスで指定する

C:\Users\ユーザー名\Anaconda3 配下にpython.exeがあるので、例えば サブディレクトリーch01 からコマンドを実行する場合には、ch01にチェンジディレクトリして、C:\Users\ユーザー名\Anaconda3\python img_show.py などとpython自体はフルパスで入力することとなる。 
ちなみに、本書の章に該当するのがch01(1章)などのサブディレクトリである。

気づいた点など

  • 本書のリポジトリのch0xディレクトリは、本書の章に対応している。1章ならch01であり、その中にプログラムやデーターがある。
  • shapeは要素の確認が可能 ndimは次元を確認する(2次元行列であれば、行数、列数にかかわらず2となる。ベクトルは1次元)
  1. a=np.array([[2,3],[3,2]])
      a.shape=(2,2) この場合、2行2列の行列となる
      a.ndim=2 2次元の行列である

  2. a=np.array([2,3])
      a.shape=(2,) この場合、行列ではなくてベクトルとして表示される。大きさは2
      a.ndim=1 1次元のベクトルである

  3. a=np.array([[2,3]])
      a.shape=(1,2) 上記とよく似ているが、この場合、行列として表される。1行2列の行列である。
      a.ndim=2 2次元の行列である

  • 行列でSIZEをとると?
x=np.array([[1,2],[3,4]])
for idx in range(x.size):

この場合は、x.sizeは要素の数となり2x2の4となる。
4回ループするので、idxは0から始まり3で終了する。xの要素の中身が入るわけではない。

  • 形の異なる行列の和は求められるのか? p114 2レイヤーの出力の予想値を求める計算で、 a1 = np.dot(x,W1) + b1

この時、x.shape(100,782) W.shape(782,100) b1.shape(100,) であり、100行100列x1行100列の和の計算ができないのでは?と思ったが、各行の値にb1を足せるようだ。(基本的な事?)


a=np.array([1,1,1])
b=np.array([[2,2,2],[3,3,3]])
c=a+b
print(c)

[[3 3 3]
[4 4 4]]

  • shape(0)の意味 hoge.shape(0)は配列の0番目の中身だと思ったが、そうではないらしい。・・ 下記によると、shape[0]とした場合は、hogeの行数が返される。ちなみにshape[1]は列数が返される。

# 行列の大きさ
print("行列Aの大きさ:", A.shape)
print("行列Aの行数:", A.shape[0])  
print("行列Aの列数:", A.shape[1])

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0