Discusión sobre el artículo "Redes neuronales: así de sencillo (Parte 48): Métodos para reducir la sobreestimación de los valores de la función Q"

 

Artículo publicado Redes neuronales: así de sencillo (Parte 48): Métodos para reducir la sobreestimación de los valores de la función Q:

En el artículo anterior, presentamos el método DDPG, que nos permite entrenar modelos en un espacio de acción continuo. Sin embargo, al igual que otros métodos de aprendizaje Q, el DDPG tiende a sobreestimar los valores de la función Q. Con frecuencia, este problema provoca que entrenemos los agentes con una estrategia subóptima. En el presente artículo, analizaremos algunos enfoques para superar el problema mencionado.

El problema de la sobreestimación de los valores de la función Q aparece con bastante frecuencia al entrenar varios modelos usando el método DQN y sus derivados. Es característico tanto de los modelos con acciones discretas como de la resolución de problemas en un espacio continuo de acciones. Las causas de este fenómeno y los métodos para afrontar sus consecuencias pueden ser específicos en cada caso. Por lo tanto, resulta importante adoptar un enfoque global para resolver este problema. Uno de estos enfoques se presentó en el artículo "Addressing Function Approximation Error in Actor-Critic Methods", publicado en febrero de 2018. En este se propuso un algoritmo denominado Twin Delayed Deep Deterministic policy gradient (TD3). Este algoritmo es una extensión lógica del DDPG y le introduce algunas mejoras para mejorar la calidad del entrenamiento del modelo.

Al principio, los autores añaden un segundo Crítico. La idea no es nueva y ya se ha usado antes para modelos con un espacio de acción discreto. Sin embargo, los autores del método han aportado su comprensión, visión y enfoque al uso del segundo Crítico.

La idea es que ambos Críticos se inicialicen con parámetros aleatorios y se entrenen en paralelo con los mismos datos. Inicializados con diferentes parámetros iniciales, comienzan su aprendizaje partiendo de diferentes estados, pero ambos Críticos se entrenan con los mismos datos, por lo que deberían moverse hacia el mismo mínimo, idealmente global. Aunque es bastante natural que sus resultados de predicción converjan durante el proceso de aprendizaje, no resultarán idénticos debido a diversos factores, y sí, cada uno es susceptible al problema de la sobreestimación de la función Q. No obstante, en un momento dado, un modelo sobrestimará la función Q y el otro la subestimará, e incluso cuando ambos modelos sobrestimen la función Q, el error de un modelo será menor que el del otro. Basándose en estos supuestos, los autores del método proponen usar el mínimo de las predicciones para entrenar a ambos Críticos. De esta forma, minimizamos el impacto de la sobreestimación de la función Q y la acumulación de errores durante el proceso de aprendizaje.

Una vez finalizado el trabajo de creación de los programas, procederemos a entrenar y validar los resultados. Como es habitual, los modelos se han entrenado con los datos históricos del marco temporal H1 de EURUSD para el periodo comprendido entre enero y mayo de 2023. En cuanto a los parámetros de los indicadores y todos los hiperparámetros, hemos utilizado los parámetros establecidos por defecto.

Diremos de entrada que el proceso de entrenamiento ha sido bastante largo e iterativo. En la primera fase hemos creado una base de datos con 200 trayectorias. El primer proceso de entrenamiento se ha ejecutado durante 1 000 000 de iteraciones. La política del Actor se ha actualizado 1 vez después de cada 10 iteraciones de actualización de los parámetros del Crítico. Asimismo, hemos realizado actualizaciones suaves de los modelos objetivo después de cada 1 000 iteraciones de actualización del Crítico.


Tras la primera fase de entrenamiento, hemos añadido otras 50 trayectorias a la base de datos de ejemplos y hemos iniciado la segunda fase de entrenamiento del modelo. Al mismo tiempo, el número de iteraciones antes de actualizar los modelos del Actor y objetivo se ha reducido a 3 y 100, respectivamente.

Tras unos 5 ciclos de entrenamiento (hemos añadido 50 trayectorias en cada ciclo), hemos obtenido un modelo capaz de generar beneficios con la muestra de entrenamiento. En la muestra de entrenamiento de 5 meses, el modelo ha sido capaz de generar casi un 10% de rentabilidad. Esta lectura no es grande. Se han realizado 58 transacciones. La proporción de transacciones rentables se ha acercado solo al 40%. El factor de beneficio es 1,05, y el factor de recuperación es 1,50. Hemos obtenido beneficios gracias al tamaño de las posiciones rentables. El beneficio medio de por transacción es 1,6 veces superior a la pérdida media, mientras que el beneficio máximo es 3,5 veces superior a la pérdida máxima de una operación.


Autor: Dmitriy Gizlyk