08/16(水),フードコードでお勉強。
- 2時間(18:30-20:30)
- 13ページ(110-122P)
- 4.4.2-4.6章(4章完了)
Python
- 改行させずに出力する場合は、引数
end
を指定する。
2. 組み込み関数 — Python 3.6.1 ドキュメント
for i in range(5): print(i, end=" ") # ⇒ 0 1 2 3 4
numpy.random.randn
:標準正規分布を生成できる。引数2個の場合行列が生成される。numpy.nditer
:多次元配列を、1個のループで回せる.
【Python】numpy.nditer()という関数 - ITの隊長のブログ
a = np.arange(4).reshape(2,2) # 2×2の行列 for x in np.nditer(a): print(x, end=" ") # ⇒ 0 1 2 3 4 it = np.nditer(a, flags=['multi_index']) while not it.finished: print(it.multi_index, end=" ") it.iternext() # ⇒ (0, 0) (0, 1) (1, 0) (1, 1)
from IPython.core.debugger import Pdb; Pdb().set_trace()
JupyterまたはiPython Notebookでデバッグをする方法 - Qiita
- importにアスタリスクを使うと全ての関数を読み込める。
from greeting import *
- Jupyterで
In [*]
は、実行中を表す.
『ゼロから作るDeep Learning』
ニューラルネットワークの学習:重みとバイアスを訓練データに適応するよう調整すること。
ニューラルネットワークの学習の手順
- ミニバッチ:訓練データからランダムににデータを選び出す
- 勾配の算出:ミニバッチの損失関数を減らすために、重みパラメータの勾配を求める
- パラメータの更新:重みパラメータを勾配方向に微小量だけ更新する
- ステップ1に戻る
確率的勾配法は"Stochastic Gradient Descent"で、「SGD」と言われる
エポック(epoch):学習において、訓練データをすべて使いきったときの回数
[疑問] 皆が基準にしているMNISTのデータは、いつ、どのようにして取得したのが気になりますね。 以下のサイトから、米国勢調査局の従業員と米国内の高校生から収集したもの、ということまでは分かりました。
H2OのRパッケージ{h2o}でお手軽にDeep Learningを実践してみる(3):MNISTデータの分類結果を他の分類器と比較する - 六本木で働くデータサイエンティストのブログ[感想] ミニバッチサイズ100の勾配を計算が、全然終わらなかった(5分以上。Thinkpad460sで計算)。 デスクトップPCで計算してみよう。