比例道

月に1回更新します

計算のどこを2値化したのか

Binarized Neural Networksでどこを2値化して,どこは実数のまま計算しているかまとめた.

重みW:推論で入力と積をとるところは2値,学習のときは実数(ただし-1 to 1にクリッピング) 積和s:推論のときは整数.学習のときも整数. 活性a:推論のときは実数で積和sを計算するときだけ2値,学習のときは実数値も2値も使う

重み勾配gW:学習のときは実数.添え字bが付いているけど2値じゃない 積和勾配gs:学習のときは実数. 活性勾配ga:学習のときは実数.活性aの絶対値が1以上のときは0.

2値の部分が驚くほど少ない.また実数で計算したものを2値化しても計算上のメリットがない.Binarizedと言っている割に性能が出ていないのはうなずける.2値化したなら,消費電力は3桁削減できないとおかしいのにそうなってない.