Estoy tratando de aproximar la función sine() utilizando una red neuronal que yo mismo escribí. He probado mi red neuronal en un problema simple de OCR y funcionó, pero estoy teniendo problemas para aplicarla a Sine() aproximado. Mi problema es que durante el entrenamiento mi error converge exactamente en el 50%, así que supongo que es completamente aleatorio.Función de aproximación con la red neuronal
Estoy utilizando una neurona de entrada para la entrada (0 a PI) y una neurona de salida para el resultado. Tengo una sola capa oculta en la que puedo variar el número de neuronas, pero actualmente estoy probando alrededor de 6-10.
Tengo la sensación de que el problema es porque estoy usando la función de transferencia sigmoidea (que es un requisito en mi aplicación) que solo produce entre 0 y 1, mientras que la salida para seno() está entre -1 y 1. Para tratar de corregir esto intenté multiplicar la salida por 2 y luego restando 1, pero esto no solucionó el problema. Estoy pensando que tengo que hacer algún tipo de conversión en alguna parte para que esto funcione.
¿Alguna idea?
Si está interesado en ver implementaciones de investigación de la aproximación basada en NN, consulte mi [documento de encuesta sobre computación aproximada] (https://www.academia.edu/20201007/A_Survey_Of_Techniques_for_Approximate_Computing) que puede responder a su pregunta en detalle. – user984260