ナンクル力学系

学んだ事を書き連ねていこう。

Posts Tagged ‘バグ

悲しいバグ

leave a comment »

ニューラルネットワークのアクティベーション(sigmoid関数やtanh関数など)は、ニューロンの出力からその微分値を計算出きるので、バックプロパゲーションをするプログラムではその関係式を使う。例えば、

u = \tanh (x)

du/dx = d \tanh (x) / dx = 1 - (\tanh x)^2 = 1-u^2

という関係。

自分で計算する時にはニューロンの出力はu、内部値はxと置くんだけど、ボスは逆。今書いてるプログラムはボスに合わせて書いているので、自分の記法では無い。そのせいでプログラムにバグが混入してた。微分値計算の関数に、xではなく慣れてる方のuを入れてしまっていた。気をつけてるつもりだったのに!

気づけてよかったけど何か悲しいし悔しい。

Advertisements

Written by tkf

October 31, 2008 at 3:08 am

Posted in 研究日誌, programming

Tagged with ,