Improving Discrete Latent Representations With Differentiable Approximation Bridgesを読んだのでメモ
はじめに
Improving Discrete Latent Representations With Differentiable Approximation Bridgesを読んだのでメモ.
気持ち
ニューラルネットの学習のために非連続な関数の勾配を近似/推論したいというもの.そのためにdifferentiable approximation bridge (DAB)と呼ばれる方法を提案.これをsort,top-k,kmeansなどの離散の課題に対して適用して有効性を検証.
Model
を学習データの集合,を対応するラベル,ただし分類問題においてはで再構成においては.目標はパラメータ,,を事前に定義されたメトリックに対して最適化すること.
まずモデルをに分解し,それぞれの出力をとする.ここでは微分可能な関数を微分不可能な関数に置き換えることを考える.を直接に置き換えることは,が微分不可能でありbackpropによって学習ができなくなるため非現実的である.
微分不可能な関数への置き換え方法を探るため,まず通常のニューラルネットが非連続な関数を近似していく過程を可視化する.ターゲットの値を-margin signum function とする.ただし,はの絶対値が以下の場合に0を出力し,以上の場合に符号化関数として振る舞う関数.これを活性化関数にELUを使った3層ニューラルネットワークで近似する.損失は二乗誤差を使いAdamで最適化を行なったとのこと.ニューラルネットはVAEやWord2Vecのような潜在空間の補間に利用されることがあり,この論文ではこの補間を可能にしているのは入力をターゲット値に変換するためにsmooth K-Lipschitz mappingを学習するためであるとしている(論文では仮定としていないが引用がなかったためここではこの論文ではとしている).smooth K-Lipschitz mappingを学習しているということは滑らかな勾配を持つ関数を非連続な関数に当てはめているということを意味するため,この性質を利用してDAB,,を構築する.
DABは前の層からを受け取り出力を返す.この出力はL2正則化によって真の非連続関数の出力に近しい値であるという制約を課せられる.すなわちを制約として課せられる.ただしは正則化の強さをコントロールするハイパーパラメータ.実験的にの値の設定は結果にあまり影響はなく頑張って良い値を見つける必要はないとのこと.このDABの正則化を目的関数に加えてモデルを学習することで非連続な関数の微分を近似する.
言ってしまえば非連続な関数を近似する小規模なニューラルネットを別途用意しようというもの.推論時にはDABはを置き換えて計算するため余計なメモリは使わないとのこと.
まとめ
非常に単純なアイディアで今まで本当に提案されていなかったのか不思議.実験結果を見ると有名なGumbel-Softmaxをoutperformする結果を示していてなかなか驚き.