Deep Learningのパラメータをバイナリ―化(-1と1にエンコード)することにより、必要なメモリ容量を抑え検出を高速化する方法がある。 有名なバイナリ―化方法としては、下記の2つが知られている。 1)BinaryConnect:パラメータ自体は連続値で持っておいて、forward時に決定的または確率的に重みパラメータwを+1または-1に変換する。決定的な変換方法とは、wが0以上の場合+1、0未満の場合-1に変換するものである。一方、確率的な変換方法とは、確率p=σ(w)(hard sigmoid関数)に従って+1にし、確率1-pに従って-1に変換するものである。つまり、wが正に大きいほど+1になる確率が高くなる。backward時はバイナリ化は行わないものの、wの更新時に、wの値が[-1,1]になるようにclippingの操作を入れている。 詳細については、下記の論文を参照。 Bi