Propósito del ruido Dirichlet en el papel AlphaZero


10

En los documentos AlphaGo Zero y AlphaZero de DeepMind , describen la adición de ruido Dirichlet a las probabilidades previas de acciones desde el nodo raíz (estado del tablero) en Monte Carlo Tree Search:

Se logra una exploración adicional al agregar ruido de Dirichlet a las probabilidades anteriores en el nodo raíz , específicamente , donde y ; Este ruido garantiza que se puedan probar todos los movimientos, pero la búsqueda aún puede anular los movimientos incorrectos. P ( s , a ) = ( 1 - ε ) p a + ε η a η Dir ( 0.03 ) ε = 0.25s0P(s,a)=(1ε)pa+εηaηDir(0.03)ε=0.25

(AlphaGo Zero)

Y:

El ruido de Dirichlet se agregó a las probabilidades anteriores en el nodo raíz; esto se escaló en proporción inversa al número aproximado de movimientos legales en una posición típica, a un valor de para ajedrez, shogi y Go respectivamente.α = { 0.3 ,Dir(α)α={0.3,0.15,0.03}

(AlphaZero)

Dos cosas que no entiendo:

  1. P(s, a)es un vector dimensional. ¿Es abreviatura para la distribución de Dirichlet con parámetros, cada uno con valor ?Dir ( α ) n αnDir(α)nα

  2. Solo me he encontrado con Dirichlet como el conjugado anterior de la distribución multinomial. ¿Por qué fue recogido aquí?

Para el contexto, P(s, a)es solo un componente del cálculo PUCT (árbol de confianza superior polinómico, una variante en los límites de confianza superiores) para un estado / acción dado. Se escala por una constante y una métrica de cuántas veces se seleccionó la acción dada entre sus hermanos durante MCTS, y se agregó al valor de acción estimado Q(s, a):

  • PUCT(s, a) = Q(s, a) + U(s, a).
  • U(s,a)=cpuctP(s,a)bN(s,b)1+N(s,a) .

1
Bien, entonces Dir (a) en realidad significa Dir (a, a, ...). Para a <1, esto se concentrará cerca de los vectores base estándar de R ^ n (cuanto más pequeño, más apretado). Entonces Dirichlet (a) ayuda a (1) a mantener constante la suma de los parámetros, (2) concentrarse cerca de los vectores base y (3) no prefiere ninguno de ellos.
monje el

Respuestas:


6

La pregunta 1 es sencilla, aquí es un vector de repeticiones del valor dado. (Como respondió Max S.)α

La pregunta 2 es más interesante: la distribución de Dirichlet tiene la siguiente interpretación relevante en este contexto: cuando es el vector observado de conteos de resultados extraídos de alguna distribución categórica (desconocida) con probabilidades de resultado , entonces es la probabilidad de que sea ​​la distribución subyacente real dado que observó como recuento. (Esta es básicamente la definición de una distribución dual).απDir(α)(π)Cat(π)α

Ahora P(s,a)se estima la probabilidad de que un jugador de buena jugaría aen s, es decir, los parámetros de su distribución categórica, que AlphaZero quiere aprender. Entonces muestrearía estimaciones razonables para si observamos que un buen jugador juega movimientos veces. Pero si algunos , entonces todos tienen , lo que impide la exploración. Al agregar el ruido, suponen que han observado cada movimiento que se juega un pequeño número de veces (aquí elegido 0.3, 0.15, 0.03).Dir(α)pi=α α i = 0 π D i r ( α ) π i = 0 αP(s,a)ααi=0πDir(α)πi=0α

En cuanto a cómo obtuvieron las constantes, supongo que suponen haber observado ~ 10 jugadas aleatorias en cada juego: en ajedrez, supone que has visto cada movimiento jugado 0.3 veces. Dado que hay ~ 35 movimientos disponibles según Allis , los autores suponen que has visto ~ 10 movimientos aleatorios en cada nodo. En Go, si asumimos ~ 270 movimientos legales en promedio (3/4 de 361 posiciones en el tablero), vemos un equivalente a observar ~ 8 movimientos aleatorios. (No tengo los datos para Shogi).Dir(0.3)


3

α

Para la pregunta 2, las muestras extraídas de una distribución Dirichlet tienen la propiedad de que los elementos sumarán 1. Supongo que están usando esto para asegurarse de que después de agregar el ruido, y los elementos aún sumen 1.


Gracias. Además de sumar a uno (lo que también podríamos hacer al escalar algún conjunto de distribuciones arbitrarias), prefiere los vectores base estándar. Eso parece útil.
monje el
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.