いきなりまとめ
few-shot learningの概要
- ハイパーパラメーターの最適化であるmeta-learningを行う
- meta-learnerにはLSTM-based meta-learnerを使用
- LSTMのinput-gateおよびforget-gateのパラメーターを学習
パフォーマンス
- 5-shotにおいて60%のaccuracy
- 比較モデルより良好なパフォーマンス
Today I Learned
OPTIMIZATION AS A MODEL FOR FEW-SHOT LEARNING
を参考に。
背景
image classification、machine translation、speech modelingなどにおいてDNNは成功を収めた。
それはキャパの高いDNNを大量のラベル付きデータでトレーニングしたため、
gradient-based optimizationが少ないトレーニングデータでうまくいかないのは2つの理由がある。
- Adagrad, Adadelta, ADAMなどはアップデート回数の制約下でうまくいくようデザインされていない
- 別々のデータセットではパラメーターがランダム状態から再スタートしなければならない
トレーニングのスタート時における最適な共通のinitializationの学習方法が必要。
LSTM-based meta-learner
・概要
LSTM-based meta-learner optimizerに対してneural network classifierを最適化するようトレーニングする。ゴールをアップデート回数が制限されたもとで各learnerが各タスクに対して良好なパフォーマンスをもたらすアルゴリズムの発見。
そうしてmeta-learnerはlearner classifierを少ないトレーニングデータで収束するようトレーニングされる。
これによりmeta-learnerはタスク固有(短期)およびタスク共通(initialization)の知識を学習する。
・データセット
トレーニング、バリデーション、テストごとに複数のデータセットからなるメタセットを用いる。meta-learnerはトレーニングセットのうちの1つを入力として高パフォーマンスをもたらすclssifierを作る。
バリデーションとテストセットでmeta-learnerのハイパーパラメーターの選択と評価を行う。
・モデル
meta-learnerはinput-gateとforget-gateのパラメーターを学習するLSTMセル。learnerのパラメーターθがLSTMのstate、gradientsがcandidate state。
ANNのアップデートおいてinput-gateはlearning-rate、forget-gateは1に相当。
input-gateおよびforget-gateは4つの値の関数。
- the current parameter value
- the current gradient
- the current loss
- the previous learning rate
・トレーニング
LSTM meta-learnerはトレーニングごとにlearner(classifier)からgradientとerrorを受け取る。そしてlearnerのパラメーターをアップデートする。
その後、最終パラメーターを用いて、テストを行う。
テストロスでmeta-learnerをトレーニングする。
learnerのgradientとerrorはmeta-learnerのパラメーターに依存しているが、meta-learnerのトレーニングに際してはこれを無視する。
LSTMパラメーターの初期値は通常のgradient descent with small learning rateと近くなるよう設定する。
- small-random-weightで初期化
- forget-gateのbiasはforget-gateが1になるよう大きくとる
- input-gateのbiasは小さくとる
学習速度と安定性向上のためbatch-normalizationを行う。
・パフォーマンス
1-shotおよび5-shotにおいてベースラインモデルよりも遥かに良かった。Matching Networkに対しては、1-shotで同程度(43%)。
5-shotで51% vs 60%となり良好なパフォーマンスだった。
0 件のコメント:
コメントを投稿