落書き ニューラルネットワークのミニバッチ

投稿者: | 2016年7月3日

合ってるんだか間違ってるんださっぱりかわからないミニバッチの図。

適当にスケッチするだけのつもりだったけど、思いのほかお絵かきが楽しすぎて終わらない。時間がどんどん消費されてちょっとあぶない。

minibatch

そして後半失速。大事な逆伝播の方がちょっと適当に。

minibatch2

少なくともバイアス項のことは完全に忘れていたよ。

こんな感じでやればRuby + Numo/Narray + Parallel + OpenBlas でマルチプロセスでミニバッチしたneural network作れるんじゃなかろうか。。

というのは憶測で、数式も他人のコードもほとんど読まずに書いているのでこのまま動かすのは自信なし。数式はどうせわからないから仕方ないとして、プロの方がnumpyでちゃんと書いてある実装でも読んで勉強してこよう。。

おまけ

下に書いてあった不具合がもう修正されている。毎回そのスピードにおどろく。newdimのかわりにexpand_dimsがあった。

↑とかnewdim は reshape(なんちゃらほい,1,なんちゃらほい)とかで対処するとして、
ReLUのために a * (a > 0) がほしいなあ。
a[a < 0] = 0; a すればいいとしても (a > 0).to_f なんかは簡単に書く方法が思いつかない。

落書き ニューラルネットワークのミニバッチ」への1件のフィードバック

  1. ピンバック: MF / Pythonの標準出力のバッファサイズを0にする

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です