シグモイドニューロンにおけるone-hot表現からビットワイズ表現への変換
4/8 自主ゼミ用
参照
テキスト
nnadl-ja.github.io 解説集 github.com
問題
one-hot表現層では,正しい出力が0.99以上で活性化し,誤った出力が0.01以下で活性化する.このとき,ビットワイズ表現層の重みとバイアスを計算せよ.
解説
ビットワイズ表現とone-hot表現の対応
①ビットワイズ表現のの位が1であるのは,one-hot表現(10進数)が8,9のときのみである.
②ビットワイズ表現のの位が1であるのは,one-hot表現(10進数)が4,5,6,7のときのみである.
③ビットワイズ表現のの位が1であるのは,one-hot表現(10進数)が2,3のときのみである.
④ビットワイズ表現のの位が1であるのは,one-hot表現(10進数)が1,3,5,7,9のときのみ.
各ビットワイズ表現層の重みベクトル
①
②
③
④
この定数倍なら,バイアスとのかみ合わせでうまくいきそうである.
具体例の考察
ビットワイズ表現層ののシグモイドニューロンの重みベクトルとバイアスについて考える.
ⅰ.前の層であるone-hot表現層が正しい出力として判定し,活性化したとき,となってほしい.
ⅱ.前の層であるone-hot表現層が正しい出力として判定し,活性化したとき,となってほしい.
ここで,仮にとすると,,となり,それなりに求めている結果に近い.ここから,重み,ベクトルに対して定数倍して調節することを考える.
問題文から,求める精度は0.01であるので,
(であるのは,重みベクトルのビットが2本立っているから)
これを計算すると,となる.
条件を満たす重みベクトルとバイアスの考察
一般化して考えると,重みベクトルで立っているビットの本数が本のとき(なら)
の取りうる値を考えて,となる.求める答えは
すべてのビットワイズ表現層共通で,