Discusión sobre el artículo "Redes neuronales: así de sencillo (Parte 6): Experimentos con la tasa de aprendizaje de la red neuronal"

 

Artículo publicado Redes neuronales: así de sencillo (Parte 6): Experimentos con la tasa de aprendizaje de la red neuronal:

Ya hemos hablado sobre algunos tipos de redes neuronales y su implementación. En todos los casos, hemos usado el método de descenso de gradiente para entrenar las redes neuronales, lo cual implica la elección de una tasa de aprendizaje. En este artículo, queremos mostrar con ejemplos lo importante que resulta elegir correctamente la tasa de aprendizaje, y también su impacto en el entrenamiento de una red neuronal.

El tercer experimento supone una ligera desviación respecto al tema principal del artículo. Su idea surgió durante los dos primeros experimentos. Entonces, decidimos compartirlo con el lector. Al observar el entrenamiento de la red neuronal, vimos que la probabilidad de omitir un fractal oscila alrededor del 60-70%, y rara vez cae por debajo del 50%. La probabilidad de aparición de un fractal, ya sea de compra o venta, se encuentra alrededor del 20-30%. Esto resulta bastante natural, ya que hay muchos menos fractales en el gráfico que velas dentro de las tendencias. Por consiguiente, nuestra red neuronal se sobreentrena y obtenemos los resultados anteriores. Casi el 100% de los fractales se omiten y solo en raras ocasiones se pueden detectar.  

Entrenamiento del asesor con un ritmo de aprendizaje de 0.01

Para solucionar este problema, hemos decidido compensar ligeramente el desequilibrio de la muestra y, ante la inexistencia de un fractal en el valor de referencia, hemos indicado 0.5 en lugar de 1 al entrenar la red.

            TempData.Add((double)buy);
            TempData.Add((double)sell);
            TempData.Add((double)((!buy && !sell) ? 0.5 : 0));

Este paso ha dado sus frutos. Tras iniciar el asesor experto con una tasa de aprendizaje de 0.01 y una matriz de pesos tras los experimentos previos y después de 5 épocas de entrenamiento, vemos una estabilización del error en torno al 0.34. En este caso, además, la proporción de fractales omitidos disminuyó al 51%, y los "aciertos" aumentaron en un 9,88%. En el gráfico, podemos ver que el asesor emite señales en grupos, definiendo así algunas zonas. Está claro que la idea requiere de elaboración y pruebas adicionales, pero los resultados obtenidos indican la consistencia de este enfoque. 

Aprendizaje con 0.5 para la ausencia de fractal

Autor: Dmitriy Gizlyk