OPはAlphaGoとalpha-betaを混同していたと思います。アルファベータ版では、実際にはポリシーネットワークを使用してプルーニングを支援しますが、ここでは使用しません。ここでも、アルゴリズムはモンテカルロツリー検索(MCTS)に依存しているため、枝刈りはありません。
私の答えが長すぎると思う人はだれでも要約セクションに飛ぶかもしれません。そこではなぜ2つのネットワークが冗長でないのかを述べています。
次の例では、アイデアをわかりやすくするためにいくつかの単純化を行います。
例:
あなたが2つの法的動きがある立場にあると想像してください。最初の動きはあなたにとって完全に失われますが、2番目の動きはあなたに勝利の利点を与えます。
- 最初の動き:あなたのための強制的な損失
- 2番目の移動:強制的な勝利
評価ネットワーク
Googleが提供する評価ネットワークが完璧だとしましょう。この例では、葉の位置を完全に評価できます。この例では、バリューネットワークを変更しません。
この例を単純化するために、バリューネットワークが以下を提供すると仮定します。
- あなたにとって損失である葉の位置については-1000
- あなたのための勝利である葉の位置のための+1000
ポリシーネットワーク
Googleが2つのポリシーネットワークを提供すると仮定しましょう。ポジションに対して生成される確率は次のとおりです。
- ポリシー1:移動1で0.9、移動2で0.1
- ポリシー2:移動1で0.2、移動2で0.8
この例では、最初のポリシーネットワークが誤った事前確率を与えていることに注意してください。移動1に対して0.9を与えますが、これは負けです。Googleでさえ完璧なポリシーネットワークをトレーニングできないため、これは問題ありません。
最初のポリシーネットワークで遊ぶ
AlphaGoは、Monte-Carloを使用してシミュレーションを生成する必要があり、移動1または2を選択する必要があります。AlphaGoは、一様分布のランダム変数を描画し、選択します。
- 乱数が0.9以下の場合は1を移動します
- 乱数が0.9より大きい場合は2を移動します
そのため、AlphaGoは(最初のシミュレーションで)負けた動きを選んでシミュレートします。最初のシミュレーションでは、値ネットワークを使用してシミュレーションのスコアを取得します。論文では、次のとおりです。
このシミュレーションは損失につながるため、この値は-1000になります。
ここで、AlphaGoは2番目のシミュレーションを生成する必要があります。繰り返しになりますが、最初の動きは選択する可能性がはるかに高いでしょう。しかし、最終的に、2番目の動きは次の理由から選択されます。
- 2番目の動きの事前確率は0ではなく0.1です。
- AlphaGoは、あまり調査されていない動きを試すことをお勧めします。論文では、これは次の方程式によって行われます。
N
は、その移動で検索された移動の数であり、分母にあることに注意してください。最初の動きが検索される可能性が高いほど、u
関数は小さくなります。したがって、AlphaGoは実際に次の式で移動を選択するため、2番目の移動を選択する確率が向上します。
これが重要な方程式です。注意深く見てください:
P
事前確率の用語があります(ポリシーネットワークによって与えられます)
Q
評価スコア(バリューネットワークによって与えられる)の用語があります。
これで、2番目の動きが最終的に選択されることがわかりました。それが起こると、値ネットワークは+1000を与えます。これは増加しQ
、2番目の動きが後のシミュレーションで選択される可能性が非常に高くなります。
十分なシミュレーションを考えると、シミュレーションのために2番目の動きが選択される回数は、最初の動きが選択される回数よりも多くなければなりません。
最後に、AlphaGoが決定した動きは次のとおりです(論文から引用)。
検索が完了すると、アルゴリズムはルート位置から最も訪問された動きを選択します。
2番目のポリシーネットワークで遊ぶ
2番目のポリシーネットワークは、最初にポリシーネットワークによって与えられる事前確率が正しいため、移動2を選択するのに必要な反復回数が少なくなります。
備考
ここでのすべてはBayesian
分析に非常に似ています。事前の確率(ポリシーネットワークによって与えられる)で開始し、その後、確率分散(値ネットワークによって与えられる)を移動するためのデータを生成します。
まとめ
- ポリシーネットワークを使用して事前確率を生成し、モンテカルロ検索で選択すべき動きを導きます
- 値ネットワークは、ポリシーネットワークを検証するためのデータを生成するために使用されます。ポリシーネットワークが悪い場合、AlphaGoは収束するためにより多くのコンピューティングリソースを必要とします(もしあれば)。
- ベイジアン分析のように考えることができます