なぜこのマージが有益であると判明したのですか?
共有バリュー/ポリシーネットワークは、懸念の分離ではなく、バリューコンポーネントとポリシーコンポーネントが上にある共有コンポーネント(残余ネットワークレイヤー)で構成されると考えると、より理にかなっています。
基本的な前提は、ネットワークの共有部分(ResNet)が、浅いバリューネットワークとポリシーネットワークの両方に適した入力表現である入力(移動に至るまでのゲームの状態)の高レベルの一般化を提供することです。
その場合、単一の共有ResNetをトレーニングし、2つのResNetを値とポリシー用にトレーニングするよりもはるかに単純な2つのネットワークに使用することで、計算負荷を大幅に削減できます。この場合、2つを一緒にトレーニングすると、正則化も改善され、より堅牢で一般的な表現が作成されます。
具体的には、Silver らによるAlpha Go Zeroペーパー。、人間の知識なしで囲碁ゲームをマスターするは、次のように述べています。
ポリシーと値を1つのネットワークに組み合わせると、移動予測の精度はわずかに低下しましたが、値エラーが減少し、AlphaGoでの再生パフォーマンスが約600 Elo向上しました。これは部分的には計算効率の向上によるものですが、より重要なこととして、二重目的はネットワークを複数のユースケースをサポートする共通の表現に正規化します。
この手法は一般的に適用できますか、それとも特殊な場合にのみ適用できますか?
ソフトウェアライブラリの一般的なコンポーネントと同様に、解決しようとしている問題が共有表現から恩恵を受ける場合にのみ意味があります。
同様のタスクの分類器をトレーニングする場合、またはより大きな類似したデータセットで分類器をトレーニング済みの場合に、少ないデータで新しいタスクをトレーニングする場合に使用できます。
Goの外では、画像認識でよく使用されます。ImageNet ILSVRCコンペティションのネットワークなど、事前にトレーニングされた深いネットワークは、一般的に開始点として使用されます。それらは、100万を超える画像で(数週間!)トレーニングされた分類子です。
次に、お気に入りの自転車のブランドを認識するネットワークを作成するとします。まず、ImageNetでトレーニングされた一般的な画像認識パイプラインから始め、実際の分類を行う最後のレイヤー(「それはボーダーコリーです」)を選び、追加します。気になる自転車だけを取り出す小さな新しい分類子。
事前トレーニング済みの分類器は、画像認識の優れた構成要素である高レベルの画像概念をすでに提供しているため(200のカテゴリを分類)、これにより、トレーニングが大幅に削減され、非常に堅牢な分類器が作成されます。
もちろん、問題が有用な共有表現を持たない場合が多いため、ネットワークを組み合わせてもメリットはありません。それにもかかわらず、それは適切な状況で有用なツールです。
見上げ転送ラーニングやマルチタスク学習をこれについての詳細を学ぶために。