Recientemente comencé a jugar con redes neuronales (uso la biblioteca brain.js) y tengo un problema con el entrenamiento de mi red. Quiero crear una red neuronal que proporcione un cierto número (en esta situación, probabilidad) como salida. Los datos de entrada provienen del sensor que detecta un determinado evento. Proporciono datos en el siguiente formato:
{ input: "1 4 0", output: "0.003"}Los números en la entrada corresponden a: índice de rango de tiempo en que el sensor realizó una medición, día de la semana en que se realizó la medición y el último es la medición en sí (número 0 o 1). Están en texto, porque cuando traté de aprender redes neuronales con números, el resultado fue aún peor. Entreno red con alrededor de 3300 medidas de sensores. Traté de aprender la red con una cantidad de datos mucho menor (~ 30) y me tomó alrededor de 20-30 minutos entrenar y dar salida, lo cual fue una buena salida.
Traté de usar la red neuronal LSTM con la siguiente configuración:
const config = { binaryThresh: 0.5, hiddenLayers: [3], activation: 'relu', };y entrenamiento:
const trainConfig = { iterations: 20000, errorThresh: 0.01, log: true, logPeriod: 1000, learningRate: 0.5, momentum: 0.1, callback: null, callbackPeriod: 10, timeout: 600000, }No importa cuánto cambie esta configuración, el entrenamiento comienza con un enorme error de entrenamiento que termina en 'Infinito' pero, a pesar de eso, el entrenamiento todavía se está ejecutando.
¿Alguien podría ayudarme y decirme qué estoy haciendo mal? Traté de cambiar incluso el formato de los datos :(