DQNDeep Q-Network

Hacer que una red neuronal recuerde la tabla de valores Q

Puntos clave
  • DQN (Deep Q-Network, red Q profunda) es un método que hace que una red neuronal recuerde, en lugar de una tabla, la puntuación esperada de cada acción.
  • Al meter una situación, salen de una vez los valores de todas las acciones. Ante una situación nunca vista, también estima el valor apoyándose en situaciones parecidas.
  • Guarda lo vivido en un almacén y luego lo saca al azar, mezclado, para volver a entrenar con eso. Es un mecanismo para evitar que se concentre en escenas vistas seguidas.
  • El valor que se toma como objetivo se saca de una copia congelada por un rato. Si el punto de referencia se mueve en cada paso, el aprendizaje se descontrola.
  • Aprender un videojuego a partir de la imagen cruda de la pantalla se logró de forma masiva por primera vez con este método, que después se convirtió en la base del aprendizaje por refuerzo.
Contenido

1La analogía

Pensemos en poner un precio a cada asiento de un recinto de treinta mil butacas. Pegarle a cada asiento un papel con su número escrito requeriría treinta mil papeles, y si se construye un recinto nuevo, habría que empezar de cero otra vez. Así que, en la práctica, no se hace así. Se arma un criterio que, con solo meter unos pocos datos, como el piso, la distancia al escenario y cuánto tapa la vista, devuelve un precio. La tabla desaparece; solo queda el criterio. Con esto, hasta un asiento nunca antes valorado tiene precio de inmediato, y los asientos vecinos salen con valores parecidos. Con los resultados de venta se va ajustando el criterio poco a poco, y así mejora de golpe el precio de todos los asientos a la vez. Eso es lo que hace DQN: construir ese criterio.

2En detalle

Una máquina que da el valor en vez de anotar una casilla

El método de tabla anota un número por separado en cada punto donde se cruzan una situación y una acción. Cuando la situación se vuelve tan compleja como la imagen de una pantalla, el número de casillas se dispara sin control, y la mayoría se quedan sin llenar jamás.

DQN cambia esa tabla por una red neuronal. Al meter la situación actual, sale de una vez, en una sola fila, el valor de cada acción posible. Si hay cuatro acciones, salen cuatro números a la vez, y se elige el más alto: esa es la acción. Al corregir el valor, en lugar de borrar y volver a escribir una casilla, se desplazan poco a poco los valores internos de la red, para que la salida de esa situación se acerque al objetivo.

Lo aprendido se traslada entre situaciones parecidas

El mayor problema del método de tabla era que las casillas no tenían nada que ver entre sí. Por más parecida que fuera la situación de al lado, lo aprendido no se trasladaba. La red neuronal es al revés: situaciones parecidas dan valores parecidos, y lo aprendido en un punto se contagia a toda la zona cercana.

Gracias a eso, salen valores razonables incluso en situaciones nunca vividas: ante una pantalla nunca vista, se puede elegir una acción con algo de sentido. Claro que es una estimación y a veces se equivoca; cuanto más rara la situación, más disparatado puede salir el valor.

Guardar lo vivido para luego mezclarlo

Las escenas que se viven a lo largo de una partida van pegadas unas a otras. La imagen que se acaba de ver y la siguiente son casi idénticas. Si se entrena solo con estas escenas en orden, la red se ajusta únicamente a los últimos segundos y olvida lo aprendido antes.

Por eso, lo vivido se va guardando de a uno en un almacén: la situación, qué se eligió, cuánta puntuación se recibió y a dónde se pasó. Al entrenar, se saca un puñado al azar de ese almacén. Como se mezclan escenas de momentos distintos, se reduce la concentración, y como cada experiencia se reutiliza varias veces, también se aprovecha mejor.

Por qué se congela el punto de referencia un rato

Al corregir un valor, el número que se toma como objetivo es el más alto de la situación siguiente. Pero ese número también lo produce la misma red. Cuando lo que se corrige y el objetivo viven en el mismo cuerpo, mover uno mueve también al otro: es como medir una distancia con la misma regla que se está empujando.

Por eso se saca una copia aparte, y el valor objetivo se toma solo de esa copia. La copia se deja quieta un buen rato y de vez en cuando se actualiza a la versión más reciente. Mientras el punto de referencia se queda quieto, el aprendizaje se estabiliza. Guardar y mezclar experiencias, y mantener esta copia, son los dos mecanismos que hicieron de DQN algo realmente usable.

Qué es lo que cambió, en el fondo

El esqueleto sigue siendo el de Q-learning. Se toma como objetivo la puntuación recibida más el mayor valor de la situación siguiente, algo rebajado, y se desplaza el valor actual un poco hacia ahí. Lo que cambió es dónde se guarda ese valor: al pasar de una tabla a una red neuronal, se rompió el límite de la cantidad de situaciones.

A cambio, aparecieron problemas nuevos. Los valores que da la red son estimaciones, así que tienden a inflarse más de la cuenta, y si el aprendizaje se tuerce, a veces no vuelve a enderezarse. Después llegaron mejoras como separar quién elige la acción de quién la evalúa, aprender por separado el valor de la situación en sí y la diferencia entre acciones, o sacar del almacén con más frecuencia las escenas de las que hay más que aprender.

3Con más precisión

DQN aproxima la función de valor de acción con una red neuronal, y usa a la vez un búfer de repetición de experiencias y una red objetivo para estabilizar el entrenamiento. La pérdida se calcula como la diferencia entre el valor objetivo y la salida actual, y se reduce con descenso de gradiente. El valor objetivo es la recompensa recibida más el valor máximo, descontado, que la red objetivo le da al estado siguiente. Cuando la entrada son píxeles de pantalla, se coloca al frente una capa convolucional, y se apilan varios fotogramas recientes para captar el movimiento. Como la acción tiene que ser de un número contable de opciones, en valores continuos, como el ángulo de un volante, se usa otra familia de métodos.

La analogía también cojea en algún punto. El criterio de precio de asiento lo arma una persona eligiendo los datos que entran; DQN, en cambio, decide por sí solo incluso qué mirar. Aunque nadie le diga qué patrón de píxeles es importante, lo va descubriendo durante el aprendizaje. Además, el precio del asiento tiene una respuesta segura en el resultado de venta, pero el objetivo que persigue DQN es otra estimación producida por su propia copia. Es una estructura donde una estimación corrige a otra estimación, así que, si algo se tuerce, todo el conjunto de valores puede desajustarse a la vez.

4Pruébalo

5Malentendidos comunes

  • Es fácil pensar que DQN es una teoría nueva que reemplaza a Q-learning, pero en realidad usa la misma fórmula de corrección; solo cambió dónde se guarda el valor, de una tabla a una red neuronal.

  • Es fácil creer que una red neuronal es siempre mejor que el método de tabla, pero en realidad, en problemas con apenas unas decenas de situaciones, la tabla es más rápida y más estable.

  • Es fácil pensar que DQN sirve para cualquier tipo de acción, pero en realidad solo funciona cuando las acciones posibles son un número contable de opciones.

7Resumen en una línea

En resumenDQN cambió por una red neuronal la tabla que anotaba la puntuación esperada de cada acción, para poder estimar un valor incluso en situaciones nunca vividas.

¿Has visto un error o tienes una analogía mejor? Sugerir una corrección · Última actualización2026-09-02