Qué piensan los grandes nombres sobre AlphaGo
La red de políticas, que predice/muestra el siguiente movimiento en función de la posición actual.
Lanzamiento rápido, que tiene los mismos objetivos que 1, pero es 1000 veces más rápido, con un modesto sacrificio en la calidad del ajedrez.
Value Network, dada la situación actual, se estima que ganarán las blancas o las negras.
Monte Carlo Tree Search (MCTS), que conecta estos tres componentes para formar un sistema completo.
Nuestros sistemas DarkForest y AlphaGo también están construidos con 4. DarkForest usó 1 durante el entrenamiento, pero le faltaban 2 y 3, y luego reemplazó 2 con el componente de política predeterminado del software de código abierto Pachi. A continuación se encuentran descripciones de cada sección.
1. Red móvil
La red móvil toma la posición actual como entrada y predice/muestra el siguiente movimiento. Sus predicciones no sólo dan el movimiento más fuerte, sino también las puntuaciones de todos los siguientes movimientos posibles en el tablero. Con 361 puntos en el tablero, otorga una puntuación de 361, y los buenos movimientos se puntúan más que los malos.
DarkForest innova en esta parte para mejorar la calidad del resultado de la política al predecir tres movimientos en lugar de uno durante el entrenamiento, lo que es consistente con su progreso desde go-go después del autoemparejamiento utilizando la red de aprendizaje por refuerzo (. red RL) logró resultados comparables. Por supuesto, no utilizaron la red después del aprendizaje por refuerzo en el sistema final, sino que utilizaron directamente la red aprendida mediante el entrenamiento (red SL), con el argumento de que los movimientos de ajedrez generados por la red RL carecían de variación, lo que no conducía a buscar.
Vale la pena señalar que, por consideraciones de velocidad, AlphaGo solo usa una red con un ancho de 192, en lugar de usar la red óptima con un ancho de 384 (consulte la Figura 2 (a)), por lo que si Si la GPU fuera un poco (o mucho) más rápida, AlphaGo definitivamente sería más potente.
El llamado juego de ajedrez de 0,1 segundos se refiere simplemente al uso de dicha red para realizar movimientos de ajedrez legales con la mayor confianza. Este método no realiza ninguna búsqueda, pero tiene una visión general muy sólida y no caerá en batallas locales, por lo que no es exagerado decir que es un modelo con "sentido del ajedrez". Sorprendimos a todos al colocar la red móvil de DarkForest directamente en KGS en el nivel 3D.
Se puede decir que esta ola de avances en la inteligencia artificial Go se debe principalmente al avance de la red Move. Esto era inimaginable en el pasado. Los métodos de generación de Go utilizados anteriormente basados en reglas, o basados en formas locales y entrenamiento de clasificador lineal simple, requirieron ajustar lentamente los parámetros durante muchos años antes de que se pudiera lograr progreso.
Por supuesto, en lo que respecta a lo que vimos en "DarkForest", también hay muchos problemas al usar solo la red Go, es decir, puedes luchar y robar innecesariamente sin importar el tamaño, y puedes apartarte del camino innecesariamente. Puedes cometer errores independientemente de la localización, etc. Es un poco como un juego casual de nivel maestro sin pensarlo seriamente. Debido a que la red de ajedrez no tiene función de juicio de valor y solo puede jugar ajedrez basándose en la "intuición", solo después de agregar la búsqueda la computadora puede tener la capacidad de emitir juicios de valor.
2. Ajedrez rápido
Con Internet, ¿por qué necesitamos ajedrez rápido? Hay dos razones: primero, la velocidad de ejecución de la red de ajedrez es relativamente lenta, dijo AlphaGo, 3 milisegundos, que es similar aquí, mientras que el ajedrez relámpago puede alcanzar un nivel de varios microsegundos, una diferencia de 1000 veces. Por lo tanto, cuando la red no devuelve una jugada de ajedrez, la CPU tiene que seguir buscando. Cuando la red devuelve una jugada de ajedrez mejor, se actualiza la información de la jugada de ajedrez correspondiente.
En segundo lugar, se pueden utilizar movimientos rápidos para evaluar el tablero. Debido al número astronómico de posiciones posibles, la búsqueda en Go es irremediablemente exhaustiva, por lo que en algún momento de la búsqueda es necesario estimar las posiciones existentes.
En ausencia de una red de valoración, a diferencia del ajedrez, que puede valorar con mayor precisión el tablero calculando las puntuaciones de las piezas, la estimación del tablero en Go debe realizarse simulando movimientos, todo el tiempo hasta el final del juego. tablero actual, calcule el resultado independientemente de los caminos laterales y luego use el resultado como una estimación del valor del tablero actual.
Aquí hay una cuestión de compensación: al mismo tiempo, la calidad de la caminata simulada es alta, la precisión de una sola estimación es alta, pero la velocidad de la caminata simulada es lenta; Es rápido, incluso usando caminatas aleatorias, aunque la precisión de la estimación secundaria es baja, pero se puede simular varias veces para calcular el promedio y el efecto no es necesariamente malo. Por lo tanto, si tienes una estrategia de alta calidad para mover el ajedrez rápidamente, te será de gran ayuda para mejorar tus habilidades ajedrecísticas.
Para lograr este objetivo, el modelo de red neuronal parece demasiado lento, por lo que aún necesitamos utilizar el método tradicional de coincidencia de patrones locales más el método de regresión lineal (regresión logística). No es nuevo, es eficaz y se pueden utilizar casi todas las recomendaciones publicitarias, clasificaciones de ofertas y clasificación de noticias. él.
Su capacidad para ajustar automáticamente los parámetros mediante el descenso de gradiente después de absorber muchos juegos expertos mejora el rendimiento más rápido y con menos esfuerzo que los programas más tradicionales basados en reglas. AlphaGo utilizó este método para lograr una velocidad de juego de ajedrez de 2 microsegundos y una precisión de juego del 24,2%. 24,2% significa que su mejor predicción tiene una probabilidad del 0,242% de ser el mismo movimiento que un maestro de Go. 0,242% de probabilidad de superposición, mientras que la red Go logró una precisión del 57% en solo 2 milisegundos en la GPU. Aquí vemos el equilibrio entre velocidad y precisión en Go-play.
A diferencia del entrenamiento de modelos de aprendizaje profundo, Fast Go utiliza la coincidencia de funciones locales, lo que naturalmente requiere cierto conocimiento en el campo Go para seleccionar funciones locales. Con este fin, AlphaGo solo proporciona la cantidad de funciones locales (consulte la Tabla 4 ampliada) sin especificar los detalles específicos de las funciones. Recientemente experimenté con su enfoque y logré una precisión del 25,1 % y velocidades de movimiento de 4 a 5 microsegundos, pero la integración total del sistema no estaba a la altura de la de ellos.
Creo que el 24,2% no resume completamente el poder de sus movimientos rápidos, porque solo un movimiento clave conducirá a un juicio de posición completamente incorrecto y la Figura 2(b) refleja mejor sus movimientos rápidos; no enfatizó el hecho de que la precisión del ajedrez al estimar la situación del tablero requiere más esfuerzo para alcanzar el nivel de la Figura 2(b) que simplemente igualar el 24,2%.
Debido a que AlphaGo juega ajedrez muy rápido, puede hacerlo en una sola máquina sin la necesidad de una red de juego de ajedrez o una red de valoración, sin la ayuda de aprendizaje profundo o GPU, y sin el uso de refuerzo. aprendizaje ya ha alcanzado el nivel de 3D, lo cual es impresionante (ver la penúltima fila de la Tabla ampliada 7). Se necesitarían años para que cualquier programa Go alcance este nivel en una sola máquina utilizando métodos tradicionales. Antes de AlphaGo, Aja Huang había escrito un excelente programa de Go y creo que tiene una amplia experiencia en esta área.
3. Red de valoración
La red de valoración de AlphaGo es la guinda del pastel. Según la Figura 2 (b) y la tabla ampliada 7, sin la red de valoración, AlphaGo no será demasiado débil. , al menos no demasiado débil en el nivel 7d-8d. La falta de la red de valoración reduce la puntuación del nivel en 480 puntos, pero la falta de la red móvil reduce la puntuación del nivel entre 800 y 1000 puntos. Lo que es particularmente interesante es que usar solo la red de valoración para evaluar la situación (2177) no es tan efectivo como usar solo el movimiento rápido (2416), pero solo combinar los dos es aún mejor.
Supongo que la red de valoración y los movimientos rápidos del ajedrez se complementan entre sí. Al comienzo del juego, cuando todos juegan de manera pacífica, la red de valoración es más importante, pero después En puntos muertos complejos. o matar movimientos, la estimación rápida de los movimientos de ajedrez en el tablero se vuelve aún más importante. Teniendo en cuenta que la red de valoración es la parte más difícil de entrenar de todo el sistema (requiere 30 millones de partidas de ajedrez jugadas por uno mismo), supongo que es la última parte en completarse y la que es más probable que se mejore aún más.
En cuanto a la generación de datos de formación de la red de valoración, cabe destacar la letra pequeña del anexo del artículo. A diferencia de la red Go, para evitar el sobreajuste, solo se toma una muestra de cada juego para el entrenamiento. De lo contrario, la entrada del mismo juego es ligeramente diferente, pero la salida es la misma, lo que no favorecerá el entrenamiento. Por eso se necesitan 30 millones de fichas de ajedrez en lugar de 30 millones de tableros de ajedrez. Para cada juego de autoemparejamiento, el muestreo es muy cuidadoso. Primero, se utiliza la red SL para garantizar la diversidad de movimientos, luego los movimientos se aleatorizan, se toma el tablero y, finalmente, se utiliza la red RL más precisa para obtener el resultado. estimación más precisa de la victoria o la derrota. Por supuesto, no puedo decir qué tan bien funciona esto en comparación con el uso de una sola red.
Lo que me sorprendió es que no realizaron ningún análisis local de vida o muerte, sino que entrenaron una red de valoración bastante buena únicamente a través de métodos de entrenamiento de fuerza bruta. Esto muestra, en parte, que las redes convolucionales profundas (DCNN) pueden descomponer automáticamente un problema en subproblemas y resolverlos por separado.
Además, supongo que utilizaron reglas chinas para determinar el resultado final al extraer muestras de entrenamiento. Entonces, esto significa que el partido de marzo contra Lee Sedol también necesitará usar reglas chinas; de lo contrario, será necesario volver a entrenar la red de valoración si se usan otras reglas (aunque supongo que la diferencia en los resultados no será demasiado grande). En cuanto a por qué se usaron las reglas chinas en primer lugar, supongo que es muy fácil de programar (sentí lo mismo cuando escribí DarkForest).
4. Búsqueda de árbol de Monte Carlo
Esta parte es básicamente un método tradicional. No hay nada que comentar. Usan UCT con a priori, es decir, primero se considera DCNN. Piense en mejores movimientos, luego espere a que cada movimiento se explore más y luego elija creer más en el valor de la tasa de ganancia que aporta la exploración. DarkForest selecciona directamente los primeros 3 o 5 pasos recomendados por DCNN para la búsqueda. Mis pruebas preliminares mostraron resultados similares, aunque, por supuesto, su enfoque es más flexible y permite realizar una gran cantidad de búsquedas para encontrar movimientos que la DCNN considera malos pero que son críticos para la situación.
Un punto interesante es que no expanden los nodos hoja inmediatamente en cada búsqueda, sino que esperan hasta alcanzar un cierto número de visitas (40 veces) antes de expandir los nodos hoja, lo que evita generar demasiadas ramas. y distrae la atención de la búsqueda y ahorra valiosos recursos de la GPU. Al mismo tiempo, al expandir los nodos hoja, la estimación del disco de los nodos hoja será más precisa. Además de esto, también utilizaron algunos trucos para evitar múltiples hilos buscando cambios en el camino al comienzo de la búsqueda, algo que también notamos y mejoramos en DarkForest.
5. Resumen
En general, todo el artículo es un trabajo sistemático y la victoria no se puede lograr logrando avances en uno o dos puntos pequeños. Detrás del éxito está la acumulación de autores, especialmente los dos primeros autores, David Silver y Aja Huang, durante su doctorado y más de cinco años después de graduarse. Esto no se puede lograr de la noche a la mañana. Merecen el honor de crear AlphaGo y disfrutarlo.
También se puede ver en el análisis anterior que, en comparación con los sistemas Go anteriores, AlphaGo depende menos del conocimiento del dominio Go, pero está lejos de ser un sistema universal. Los ajedrecistas profesionales pueden comprender el estilo del oponente y adoptar las estrategias correspondientes después de ver algunas partidas de ajedrez, y los ajedrecistas experimentados pueden dominar rápidamente nuevas partidas de ajedrez después de jugar algunas partidas. Sin embargo, hasta ahora, los sistemas de inteligencia artificial todavía necesitan una gran cantidad de. muestras para alcanzar el nivel humano. Se puede decir que sin la acumulación de Go por parte de muchos jugadores durante miles de años, hoy no existiría la inteligencia artificial de Go.