Q-learning

Anotar y corregir la puntuación esperada de cada acción

Puntos clave
  • Q-learning construye una tabla que anota la puntuación esperada de cada acción, en cada situación, y va corrigiendo esos números.
  • El número de una casilla significa: "si en esta situación se elige esta acción, la puntuación que se recibirá de aquí en adelante es más o menos esta".
  • Al corregir, se toma la puntuación recibida y se le suma el mayor número de la situación siguiente, algo rebajado, mezclando ese resultado con el valor anterior.
  • Una vez llena la tabla, la política sale sola: basta con elegir, en la fila de la situación actual, la casilla con el número más alto.
  • Cuando las situaciones y las acciones se multiplican, la tabla ya no da abasto. Hacer que una red neuronal recuerde esa tabla en su lugar es lo que hace DQN (Deep Q-Network, red Q profunda).
Contenido

1La analogía

En la oficina de un cine hay una cartelera pegada a la pared. En vertical van las franjas horarias, en horizontal los tipos de película que se pueden proyectar, y en cada casilla hay un número escrito a lápiz. En la fila de las siete de la tarde, la casilla de acción tiene un 8, la de familiar un 5; en la fila de las dos de la tarde, el orden está invertido. Ese número es una estimación de qué tan bien iría poner esa película a esa hora. Cuando llega el dato real de asistencia del día anterior, se borra el número de la casilla correspondiente y se vuelve a escribir un poco más alto o un poco más bajo. Al cabo de unos meses, la cartelera se vuelve bastante confiable, y programar se simplifica: basta con elegir el número más alto de la fila de esa franja horaria.

2En detalle

Lo que significa una casilla

Una casilla de la tabla es el punto donde se cruzan una situación y una acción. El número que hay ahí escrito no es la puntuación que se va a recibir en el instante, sino una estimación de la suma total de puntuación que se recibirá desde que se elige esa acción hasta el final. Por eso, la casilla de una acción que sale perdiendo ahora pero conviene más tarde tiene un número alto.

Al principio, todas las casillas están en cero o llenas de números cualquiera. No pasa nada por empezar con una tabla mal armada. Corrigiendo poco a poco con la puntuación recibida al actuar, los números van encontrando su lugar con el tiempo. Una vez que la tabla se asienta, ya no hace falta aprender la política por separado: elegir la casilla más alta de la fila actual ya es la política.

Cómo se corrigen los números

Cada vez que se actúa, se obtienen cuatro datos: en qué situación se estaba, qué se eligió, cuánta puntuación se recibió y a qué situación se pasó. Con estos cuatro se corrige el número de la casilla que se acaba de elegir.

Primero se construye una nueva estimación: la puntuación recibida, más el número más alto de la fila de la situación a la que se pasó, algo rebajado. Después se mezcla el número que ya estaba escrito con esta nueva estimación. No se sustituye entero de golpe, se desplaza solo un poco cada vez, porque el resultado de una sola vez trae mezclada algo de suerte. Al valor que decide cuánto desplazar se le llama tasa de aprendizaje.

Por qué se toma el mayor valor de la siguiente fila

Pensemos en un problema donde la puntuación llega solo al final. Al principio, solo sube el número de la última casilla. Pero al corregir la casilla anterior a esa, la situación a la que se pasó es justo la fila donde está esa última casilla. El valor más alto de esa fila se arrastra hacia atrás, y el número de la casilla anterior también sube. Así, la buena noticia se va contagiando hacia atrás, casilla por casilla, desde el final.

Aquí hay una propiedad importante: lo que se arrastra es el valor más alto de la siguiente fila, no lo que realmente se eligió después. Por eso, aunque durante el aprendizaje se prueben montones de acciones cualquiera, la tabla sigue creciendo hacia la mejor política, y se puede aprender lo mejor mientras se anda dando tumbos con libertad.

Hay que probar para llenar la tabla

El número de una casilla nunca elegida se queda tal como estaba al principio. Si siempre se elige la casilla más alta, se termina eligiendo siempre la que por casualidad salió alta al inicio, y la mejor de al lado nunca llega a confirmarse. Por eso, durante el aprendizaje, de vez en cuando se elige a propósito cualquier casilla al azar.

Es habitual empezar con una proporción alta de elegir al azar y reducirla a medida que la tabla se asienta. Hay que dar bastantes tumbos para que se llene de forma pareja, y solo así se puede confiar en el número más alto que se elige al final.

Cuando la tabla crece más de lo manejable

El límite de Q-learning es el tamaño de la tabla. El número de casillas crece multiplicando la cantidad de situaciones por la de acciones. En una cuadrícula de veinte casillas donde se elige entre cuatro direcciones, bastan ochenta casillas, pero si se toma directamente la imagen de la pantalla como situación, el número de casillas se vuelve incontable.

Además, cada casilla es independiente. Por más parecida que sea la situación de la casilla de al lado, lo aprendido no se traslada. Por estas dos razones, en cuanto la situación se complica un poco, el método de tabla se derrumba. Por eso, en lugar de anotar casilla por casilla, se pasó a usar una red neuronal que, dada la situación, estima el número de cada acción. Eso es DQN.

3Con más precisión

Q-learning es un método que aprende el valor de acción para cada par de estado y acción. La fórmula de corrección desplaza el valor actual, según la tasa de aprendizaje, hacia la diferencia entre el valor actual y un valor objetivo formado por la recompensa recibida más el máximo valor de acción del siguiente estado, descontado. Como el valor objetivo se construye con el máximo posible y no con la acción realmente elegida, se clasifica como un método fuera de política. Está demostrado que, si todos los pares se visitan con suficiente frecuencia y la tasa de aprendizaje se reduce de forma adecuada, converge al valor de acción óptimo.

La analogía también cojea en algún punto. La cartelera está pensada para leerse de un vistazo, pero el número de casillas de una tabla Q enseguida supera lo que un ojo humano puede recorrer. Además, el número de la cartelera solo guarda el resultado de esa franja horaria, mientras que el valor Q lleva mezclado, ya descontado, todo lo que viene después. Y el cine anota el resultado ya conocido, pero Q-learning corrige su propia estimación con base en otra estimación todavía no confirmada. Por eso, al principio, los números quedan bastante desajustados.

4Pruébalo

5Malentendidos comunes

  • Es fácil pensar que el valor Q representa la puntuación que se va a recibir en el instante, pero en realidad es una estimación de la suma total, ya descontada, de todo lo que viene después de esa acción.

  • Es fácil creer que la tabla tiene que estar completa antes de poder usarla, pero en realidad, mientras se va llenando, ya se está actuando mirando esa tabla y corrigiéndola al mismo tiempo.

  • Es fácil pensar que Q-learning y DQN son métodos distintos, pero en realidad DQN es el mismo método, solo que cambia la tabla por una red neuronal que la recuerda en su lugar.

7Resumen en una línea

En resumenQ-learning es un método que anota la puntuación esperada de cada situación y cada acción, y va corrigiendo poco a poco esos números con el resultado de cada intento.

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