Trato de dar la mejor explicación que pueda,
Descargo de responsabilidad: no tengo mucha experiencia en el campo del aprendizaje automático; Entonces quizás me equivoque.
Suponga que un problema basado en clasificación tiene solo dos características [matemática] (x [/ matemática] [matemática] y [/ matemática] [matemática] y) [/ matemática] como entrada y salida pertenece a cualquiera de las clases [matemática] [/ matemática] [matemáticas] 0 [/ matemáticas] o [matemáticas] clase [/ matemáticas] [matemáticas] 1 [/ matemáticas], matemáticamente Se puede escribir como
- ¿Qué es el automorfismo?
- ¿Qué es [matemáticas] \ Pr [X \ ge Y] [/ matemáticas] cuando [matemáticas] X, Y [/ matemáticas] son variables aleatorias independientes con distribución exponencial?
- ¿Cuál es el punto de escribir una pregunta matemática para encontrar el último dígito de 7 ^ 2016x cuando x puede tomar los valores 1, 3, 5 o 7?
- Tengo una C- en álgebra abstracta. ¿Eso significa que probablemente debería renunciar a mi especialización en matemáticas?
- ¿Cuál es la integral indefinida [matemáticas] \ int \ frac {1} {2 \ cos \ theta -1} d \ theta [/ matemáticas]?
Supongamos que mi función original z se define así (teóricamente)
matemáticamente:
¡Hecho! Ahora llega a la red neuronal
Aquí están mis suposiciones,
- Es una red neuronal simple de 1 capa de entrada y 1 capa de salida.
- La capa de entrada consta de 2 neuronas para cada característica [matemática] x, [/ matemática] [matemática] y [/ matemática] respectivamente.
- La capa de salida consiste en 1 neurona sigmoidea.
Para aquellos que no saben qué es sigmoide, es una función matemática en forma de S.
Elegí sigmoide solo porque su rango es [matemática] [0, 1] [/ matemática] (y también me gusta esta función: p pero no tanto como Tanh: p)
Ahora es el momento de elegir nuestro conjunto de entrenamiento.
¿Se ve bien? Me aseguré de que realmente satisface esa ecuación, así que no te preocupes.
Comencemos nuestra red neuronal y dejemos que generalice las cosas.
20 iteraciones y la red aprendieron la función, ¡guau!
¿Qué pasa realmente? bueno, es muy simple pensar que la red aprendió a pesar exactamente que debería predecir la función dada, ¿verdad?
Y esos pesos no son otros que [matemática] 1 / a [/ matemática] [matemática] y [/ matemática] [matemática] 1 / b [/ matemática].
Cambiemos las características de la capa de entrada,
¿Qué hay de cambiar [matemáticas] x [/ matemáticas] [matemáticas] con [/ matemáticas] [matemáticas] x ^ 2 [/ matemáticas] [matemáticas] y [/ matemáticas] [matemáticas] y [/ matemáticas] [matemáticas] con [ / matemáticas] [matemáticas] y ^ 2 [/ matemáticas]. Recuerde que la función original y el conjunto de entrenamiento siguen siendo los mismos.
así que comencemos nuestra red neuronal para bebés: p
Más de 150 iteraciones, pero aún no hay signos de buena generalización. ¿derecho?
¿Qué pasa con nuestra hermosa red?
umm, echemos un vistazo a la explicación matemática
En el primer ejemplo que te he mostrado, la red aprendió pesos [matemáticos] [/ matemáticos] [matemáticos] w1, [/ matemáticos] [matemáticos] w2 [/ matemáticos] [matemáticos] y [/ matemáticos] [matemáticos] w3 [/ math] de la siguiente función y capaz de predecir valores adicionales muy fácilmente.
podemos ver que esta función es muy similar a la función original z. ¡Por eso nuestra red neuronal se sacudió! aplausos: p
En el segundo ejemplo, la red intentó lo mejor para predecir el peso, lo que minimizará el error tanto como sea posible de acuerdo con la siguiente función.
pero es imposible expresar un polinomio con grado 1 a partir del polinomio de grado 2. ¿sí?
Es por eso que nuestra red no logró generalizar las cosas.
Tu respuesta ahora:
Siempre es bueno que proporcione tantas funciones como pueda si no sabe cómo se ve la función original; Pero aumentar de nuevo el número de características aumentaría el número de dimensiones y, por lo tanto, la complejidad de tiempo / espacio de la red neuronal;
Incluso la función [matemática] x / y [/ matemática] puede aprender, pero luego requiere un poco más de conexiones y neuronas. así que aumenta la complejidad de la neurona o aumenta la complejidad de las características que proporcionas, por lo tanto, las dimensiones. así que siempre hay una compensación. Es mejor que juegues con tu red con algunos casos y luego te establezcas con los mejores valores posibles.
🙂