Penso che l'OP abbia confuso AlphaGo con alpha-beta. In alpha-beta, useresti davvero la rete di policy per aiutare con la potatura, ma non qui. Ancora una volta, non c'è potatura poiché l'algoritmo si basa sulla ricerca dell'albero di Monte-Carlo (MCTS).
Chiunque ritenga che la mia risposta sia troppo lunga potrebbe passare alla sezione di riepilogo, dove dichiaro perché le due reti non sono ridondanti.
Nel seguente esempio, farò alcune semplificazioni per rendere le mie idee più facili da capire.
Esempio:
Immagina di avere una posizione in cui ci sono due mosse legali. La prima mossa è una perdita persa per te, tuttavia, la seconda mossa ti dà un vantaggio vincente.
- Prima mossa: perdita forzata per te
- Seconda mossa: vittoria forzata per te
Rete di valutazione
Supponiamo che la rete di valutazione che Google ti offre sia perfetta. Può valutare perfettamente qualsiasi posizione dell'anta nel nostro esempio. Nell'esempio non cambieremo la nostra rete di valori.
Per semplificare il nostro esempio, supponiamo che la nostra rete di valori dia:
- -1000 per qualsiasi posizione dell'anta che è una perdita per te
- +1000 per ogni posizione foglia che è una vittoria per te
Rete politica
Supponiamo che Google ti dia due reti di norme. Le probabilità generate per la nostra posizione sono:
- Politica 1: 0.9 per la mossa 1 e 0.1 per la mossa 2
- Politica 2: 0,2 per la mossa 1 e 0,8 per la mossa 2.
Si noti che la nostra prima rete di policy fornisce probabilità errate per il nostro esempio. Fornisce 0,9 per la mossa 1, che è una mossa persa. Questo va bene perché nemmeno Google potrebbe formare una rete politica perfetta.
Giocare con la prima rete politica
AlphaGo deve generare una simulazione con Monte-Carlo e deve scegliere la mossa 1 o 2. Ora AlphaGo disegna una variabile casuale distribuita uniformemente e sceglierà:
- Sposta 1 se il numero casuale è <= 0.9
- Sposta 2 se il numero casuale è> 0.9
Quindi AlphaGo ha molte più probabilità di scegliere la mossa perdente da simulare (nella nostra primissima simulazione). Nella nostra prima simulazione, utilizzeremo anche la rete di valori per ottenere un punteggio per la simulazione. Nel documento, è:
Questo valore sarebbe -1000, perché questa simulazione comporterebbe una perdita.
Ora AlphaGo deve generare la seconda simulazione. Ancora una volta, la prima mossa avrebbe molte più probabilità di scegliere. Ma alla fine, la seconda mossa sarebbe scegliere perché:
- La nostra probabilità precedente per la seconda mossa è 0,1, non zero
- AlphaGo è incoraggiato a provare mosse che non sono state esplorate molto. Nel documento, questo è fatto da questa equazione:
Si noti che N
è il numero di mosse ricercate per la mossa ed è nel denominatore. Più è probabile che venga cercata la nostra prima mossa, più piccola è la u
funzione. Pertanto, la probabilità di selezionare la nostra seconda mossa migliora perché AlphaGo effettivamente sceglie una mossa da questa equazione:
Questa è l' equazione chiave . Per favore, guardalo attentamente:
- Ha un termine
P
per la probabilità precedente (dato dalla rete politica)
- Ha un termine
Q
per i punteggi di valutazione (forniti dalla rete di valori)
Ora sappiamo che alla fine verrà scelta la nostra seconda mossa. Quando ciò accade, la rete di valori fornisce +1000. Ciò aumenterà Q
, il che rende molto più probabile che la seconda mossa venga scelta nelle simulazioni successive.
Date abbastanza simulazioni, il numero di volte in cui viene scelta la seconda mossa per la simulazione dovrebbe essere maggiore del numero di volte in cui viene scelta la prima mossa.
Infine, la mossa che AlphaGo decide di fare è (citato dal documento):
Una volta completata la ricerca, l'algoritmo sceglie la mossa più visitata dalla posizione radice.
Giocare con la seconda rete politica
La nostra seconda rete politica avrà bisogno di meno iterazioni per scegliere la mossa 2 perché la sua probabilità precedente data dalla rete politica è corretta in primo luogo.
Osservazioni
Tutto qui è molto simile Bayesian
all'analisi. Iniziamo con alcune probabilità precedenti (fornite dalla rete delle politiche), quindi generiamo dati per spostare la distirubazione delle probabilità (fornita dalla rete dei valori).
Sintesi
- La rete di politiche viene utilizzata per generare le probabilità precedenti per guidare ciò che la ricerca Monte-Carlo dovrebbe scegliere
- La rete valori viene utilizzata per generare dati per convalidare la rete delle politiche. Se la rete dei criteri non funziona, AlphaGo avrebbe bisogno di più risorse di elaborazione per convergere (se mai).
- Puoi pensarlo come un'analisi bayesiana