¿Cuál fue el algoritmo utilizado por AlphaGo para ganar el juego de Go contra el campeón europeo de Go humano?

El aprendizaje profundo AlphaGo combina de manera inteligente diferentes tipos de redes neuronales para la selección de movimientos y la evaluación de posición con Monte Carlo Tree Search (MCTS). En la base, utiliza redes neuronales convolucionales que usan una imagen de 19 × 19 de la posición del tablero con 48 planos de características como entrada (17328 entradas).

Al reconocer las posiciones y los patrones del tablero, ciertamente no imita el proceso lógico humano en absoluto, ya que AlphaGo casi no comprende los conceptos lógicos como rodear, sente, aji, influencia, dónde hacer territorio de manera más eficiente, etc. En cambio, ha aprendido a seleccionar movimientos ganadores de alta probabilidad ultrarrápidos y eficientes y luego ‘estima’ el resultado del juego desde una posición dada usando básicamente lanzamientos de MCTS. Puede encontrar más información sobre cómo AlphaGo ha sido entrenado y funciona bajo el capó en mi blog: Parte 2: AlphaGo bajo una lupa (El partido histórico del aprendizaje profundo AlphaGo vs. Lee Sedol) REVISADO

No había un solo ‘algoritmo’.

Primero supervisaron el aprendizaje en una muestra de juegos humanos, para predecir el movimiento humano dada una posición de ir.

Luego hicieron los lanzamientos de Monte Carlo desde la posición hasta la posición final para estimar el puntaje final de los juegos. Luego alimentaron la posición y la puntuación en un algoritmo de aprendizaje supervisado para generar una red de valor.

Luego tomaron posiciones e hicieron implementaciones de Monte Carlo con el algoritmo de aprendizaje supervisado y calificaron las posiciones usando la red de valores, en función del valor al que condujo el movimiento inicial: se calificó el movimiento inicial. Esto se usó para entrenar una red de políticas.

Finalmente, se jugó un gran número de juegos de autojuego y estos juegos de autojuego se usaron para actualizar la política y la red de valor.

More Interesting

¿Cuáles son las aplicaciones en tiempo real del algoritmo de Dijkstra?

¿Qué algoritmos son buenos candidatos para el reconocimiento de sonido? Estoy principalmente interesado en reconocer sonidos en un entorno doméstico, por ejemplo, un temporizador de microondas que suena, un teléfono que suena, un timbre, etc.

¿Cuáles son los mejores algoritmos de aprendizaje sin supervisión para la corrección de errores tipográficos?

¿Cuál es el enfoque para resolver Gráficos Chef y Bipartitos?

¿Cuál es la mejor manera de enseñarme a resolver problemas con algoritmos en Java Script? Ese es mi problema número uno hasta ahora. Soy un principiante, obviamente.

Cómo calcular la correlación de cada fila en una matriz 2D con una matriz 1D de la misma longitud

¿Debería un algoritmo de aprendizaje automático estar completo?

¿Qué algoritmos puedo usar para predecir la temperatura o dichos parámetros en función de sus datos históricos?

¿Cuál es un ejemplo de un árbol binario roscado?

Con la complejidad de O (n) u O (1) u O (log n), ¿cómo encuentro cuándo se romperá una bola rompible cuando se lance desde un piso de un edificio que tiene más de 100 pisos?

¿Cómo se puede calcular el número de inversiones entre dos matrices en O (N log N)?

Si f (n) es O (g (n)) yf (n) es O (h (n)), entonces cuál de las siguientes afirmaciones debe ser verdadera: f (n) + g (n) es O (h (n)), g (n) + h (n) es O (f (n)), f (n) es O (g (n) + h (n)), o ninguno de los anteriores?

¿Qué tecnologías y algoritmos se usan comúnmente para la resolución de entidades basadas en una intersección de algunos atributos?

¿Cómo debo practicar para poder asear la mayoría de los concursos Gold de USACO?

¿Cómo se conocen entre sí los procesos en un sistema distribuido?