Pregunta

Estaba leyendo un resumen de alto nivel sobre Alphago de Google (http://googleresearch.blogspot.co.uk/2016/01/alphago-mastering-ancient-game-of-go.html), y me encontré con los términos "red de políticas" y "red de valor". En un alto nivel, entiendo que la red de políticas se usa para sugerir movimientos y la red de valor se usa para "reducir la profundidad del árbol de búsqueda [y estimar] el ganador en cada posición en lugar de buscar hasta el camino hasta el camino hasta el camino hasta el camino hasta el camino hasta el camino al fin del juego."

Estas dos redes me parecen redundantes. ¿Qué está haciendo la red de políticas si no está utilizando la red de valor para podar sus políticas? Parece bastante claro que la red de valor es una red neuronal de aprendizaje profundo; ¿Es la red de políticas solo una abstracción teórica y no una red neuronal real? La variable de destino para la red de valor parece ser ganancia/pérdida. ¿Existe una variable objetivo para la red de políticas; Si es así, ¿qué es? ¿Cuál es la red de políticas que intenta optimizar?

El PDF completo del artículo de Google, publicado en Nature, se puede encontrar aquí:https://vk.com/doc-44016343_437229031?dl=56ce06e325d42fbc72

¿Fue útil?

Solución

En resumen, cada red tiene un propósito diferente como usted mencionó:

  • La red de valor se usó en los nodos de la hoja para reducir la profundidad de la búsqueda del árbol.
  • La red de políticas se utilizó para reducir la amplitud de la búsqueda de un nodo (que guía hacia acciones inmediatas prometedoras).

En general, puede usar los métodos de función de valor para encontrar una política óptima o buscar directamente en el espacio de la política para optimizar una función de política parametrizada (por supuesto, hay pros y contras). Puede usar aproximadores de funciones (por ejemplo, redes profundas) en cada caso. Veo que principalmente estás confundido sobre la red de políticas, así que enfoco mi respuesta en esto.

La red de políticas fue la primera:

Entrenado para hacer los movimientos que probablemente un humano hará un estado de la junta (por lo que la entrada es un estado de la junta y la salida es un histograma que muestra la probabilidad de cada acción dada ese estado). La red puede aproximar la función de probabilidad subyacente a la asignación de los estados a las acciones. Es razonable pensar que comenzar a construir su política a partir de datos disponibles después de todo. Después de la capacitación supervisada, utilizando expertos, la red de políticas podría jugar el juego suficiente (aunque lejos de un nivel de maestro). Simplemente, intentó capturar el patrón general de selección de acción de jugadores profesionales.

Después,

Fue entrenado en juegos con el oponente mismo, para optimizar la política anterior aprendida. Esta vez sus pesos se actualizaron utilizando el algoritmo de refuerzo. Al hacer esto, actualiza los parámetros netos para la maximización de la recompensa esperada. Eventualmente tienes una red que no solo selecciona las acciones como un jugador profesional, sino también para ganar el juego (¡sin embargo, no puede planificar!).

Después de este paso, se aproximaron a la función de valor de una versión un poco más ruidosa de la política aprendida, por regresión (la entrada es el tablero estatal y se dirige al resultado del juego). Puede usar esta red para afectar la evaluación del nodo Leaf.

Hablando conceptualmente, la red de políticas le brinda una probabilidad sobre las acciones, pero esto no indica que terminará en un bien, para ganar el juego, estado. Alphago tuvo algunos "puntos ciegos" y durante el torneo hizo algunos movimientos realmente malos, pero también un movimiento excepcional que un humano nunca podría haber pensado.

Finalmente, puede usar su algoritmo de planificación (MCTS) en combinación con estas redes. ¿Por qué tomamos todos estos pasos? Brevemente, los MCT simples sin ninguna "intuición" habrían fallado.

Otros consejos

Aquí está mi proceso de pensamiento conciso para comprender las dos redes diferentes.

En primer lugar, el objetivo es encontrar una solución óptima (o muy casi óptima) sin usar una búsqueda exhaustiva, lo que definitivamente es un desafío.

Por posición o estado, habrá N movimientos posibles, y en cada movimiento habrá su propia profundidad D en un árbol de búsqueda completo. Es posible o matemáticamente posible caminar por todos los caminos y encontrar una solución óptima. Sin embargo, no queremos hacer una búsqueda completa.

Ahora tenemos dos preguntas separadas para desarrollar un enfoque de aproximación.

Q1. ¿Cómo podemos omitir o ignorar algunos movimientos de N por posición? (es decir, reducción de la respiración)

Q2. ¿Cómo podemos detenernos a una profundidad intermedia en un árbol de búsqueda en lugar de caminar hasta el final del juego, sin no encontrar una solución óptima? (es decir, reducción de profundidad)

La red de políticas está diseñada principalmente para filtrar movimientos inútiles de n, pero sin no encontrar una solución óptima. Aquí esta red se basa inicialmente en movimientos de expertos humanos, es decir, SL y mejorado por RL más tarde.

La red Value está diseñada principalmente para encontrar la probabilidad ganadora sin una búsqueda completa.

Estas dos redes tienen un objetivo común de encontrar una solución óptima, sin embargo, en cada elección estratégica de movimiento, cada red juega un papel diferente.

Solo espero que esto ayude. Sé que todavía estaría en un alto nivel.

Creo que el OP confundía Alphago con Alpha-Beta. En Alpha-Beta, utilizaría la red de políticas para ayudar con la poda, pero no aquí. Nuevamente, no hay poda ya que el algoritmo se basa en la búsqueda de árboles de Monte-Carlo (MCTS).

Cualquiera que piense que mi respuesta es demasiado larga podría saltar a la sección Resumen, donde afirmo por qué las dos redes no son redundantes.

En el siguiente ejemplo, haré algo de simplificación para que mis ideas sean más fáciles de entender.

Ejemplo:

Imagine que tiene una posición donde hay dos movimientos legales. El primer movimiento es un perdido para ti, sin embargo, el segundo movimiento te da una ventaja ganadora.

  • Primer movimiento: pérdida forzada para ti
  • Segundo movimiento: Win fored para ti

Red de evaluación

Supongamos que la red de evaluación que Google le brinda es perfecta. Puede evaluar cualquier posición de hoja en nuestro ejemplo perfectamente. No cambiaremos nuestra red de valor en el ejemplo.

Para simplificar nuestro ejemplo, supongamos que nuestra red de valor da:

  • -1000 para cualquier posición de hoja que sea una pérdida para ti
  • +1000 para cualquier posición de hoja que sea una victoria para ti

Red de políticas

Supongamos que Google le brinda dos redes de políticas. Las probabilidades generadas para nuestra posición es:

  • Política 1: 0.9 para el movimiento 1 y 0.1 para el movimiento 2
  • Política 2: 0.2 para el movimiento 1 y 0.8 para el movimiento 2.

Tenga en cuenta que nuestra primera red de políticas da incorrecto Probabilidad previa para nuestro ejemplo. Da 0.9 para el movimiento 1, que es un movimiento perdedor. Esto está bien porque ni siquiera Google podría entrenar una red de políticas perfecta.

Jugando con la primera red de políticas

Alphago necesita generar una simulación con Monte-Carlo, y necesita elegir Move 1 o 2. Ahora, Alphago dibuja una variable aleatoria distribuida uniforme, y elegirá:

  • Mover 1 si el número aleatorio es <= 0.9
  • Mover 2 si el número aleatorio es> 0.9

Por lo tanto, es mucho más probable que Alphago elija el movimiento perdedor para simular (en nuestra primera simulación). En nuestra primera simulación, también utilizaremos la red de valor para obtener una puntuación para la simulación. En el papel, es:

enter image description here

Este valor sería -1000, porque esta simulación conduciría a una pérdida.

Ahora, Alphago necesita generar la segunda simulación. Nuevamente, el primer movimiento sería mucho más probable que elija. Pero eventualmente, el segundo movimiento sería seleccionado porque:

  • Nuestra probabilidad previa para el segundo movimiento es 0.1, no cero
  • Se alienta a Alphago a probar movimientos que no se han explorado mucho. En el artículo, esto se hace por esta ecuación:

enter image description here

Tenga en cuenta que N es el número de movimientos buscados para el movimiento y está en el denominador. Cuanto más probable se busque nuestro primer movimiento, menor será u función es. Por lo tanto, la probabilidad de seleccionar nuestro segundo movimiento mejora porque Alphago en realidad elige un movimiento de esta ecuación:

enter image description here

enter image description here

Este es el llave ecuación. Míralo cuidadosamente:

  • Tiene un término P Para la probabilidad previa (dada por la red de políticas)
  • Tiene un término Q para los puntajes de evaluación (dados por la red de valor)

Ahora, sabemos que nuestro segundo movimiento eventualmente será elegido. Cuando sucede, la red de valor da un +1000. Esto aumentará Q, que hace que el segundo movimiento sea mucho más probable ser elegido en las simulaciones posteriores.

Dadas suficientes simulaciones, el número de veces que se elige el segundo movimiento para la simulación debería ser más del número de veces que se elige el primer movimiento.

Finalmente, el movimiento que Alphago decide hacer es (citado del documento):

Una vez que se completa la búsqueda, el algoritmo elige el movimiento más visitado de la posición de la raíz.

Jugando con la segunda red de políticas

Nuestra segunda red de políticas necesitará menos iteraciones para elegir el movimiento 2 porque su probabilidad previa dada por la red de políticas es correcta en primer lugar.

Observaciones

Todo aquí es muy similar a Bayesian análisis. Comenzamos con cierta probabilidad previa (dada por la red de políticas), luego generamos datos para mover la distirUrbción de probabilidad (dada por la red de valor).

Resumen

  • La red de políticas se utiliza para generar probabilidades previas para guiar qué movimiento debe elegir la búsqueda de Monte-Carlo
  • Value Network se utiliza para generar datos para validar la red de políticas. Si la red de políticas es mala, Alphago necesitaría más recursos informáticos para converger (si alguna vez).
  • Puedes pensar en ello como el análisis bayesiano

Red de políticas: La red que aprende a dar una salida definida al dar una entrada particular al juego se conoce como red de políticas.

Redes de valor: La red de valor asigna valor/puntaje al estado del juego calculando un puntaje acumulativo esperado para el estado actual s. Cada estado pasa por la red de valor. Los estados que obtienen más recompensa obviamente obtienen más valor en la red.

Mejor entendimiento con animaciones Ven aquí: Redes de políticas frente a redes de valor en el aprendizaje de refuerzo

enter image description here

Por lo que entiendo, la diferencia está en las salidas. Cuando la red de políticas genera una distribución de probabilidad sobre los posibles movimientos, la red de valor devuelve un valor real que puede interpretarse como la probabilidad de ganar dada la configuración de esta placa. A partir de ahí, la búsqueda de árboles de Monte-Carlo se realiza mediante la toma de los movimientos de Top K y luego reduce el árbol de búsqueda nuevamente tomando salidas de red de valor K de Top K.

Siéntete obligado a corregirme si me equivoco.

Licenciado bajo: CC-BY-SA con atribución
scroll top