Las redes neuronales operan con reglas de aprendizaje que buscan los mejores parámetros (peso) para una categoría particular de modelos: redes de neuronas. El enfoque general es seguir el negativo del gradiente del error.
Los algoritmos genéricos son en su mayoría libres de modelos. Aunque, por lo general, las personas piensan en términos de genes y cromosomas, esto es realmente solo una analogía. La configuración de cualquier modelo con cualquier número de parámetros de cualquier tipo puede modelarse como una secuencia (genoma) de parámetros (genes). Los algoritmos genéticos usan una población de modelos (individuos) con parámetros aleatorios, y usan recombinación, mutación y selección para optimizar la función de aptitud.
Al contrario de lo que han respondido otras personas, no existe realmente una diferencia entre la predicción y la optimización: un problema planteado de una manera, se puede establecer fácilmente del otro tipo:
Predicción o aprendizaje == optimización de 1 / error.
- Estamos asombrados del progreso en IA (Inteligencia artificial), es decir, hasta que tome nuestro trabajo. ¿Deberíamos aconsejar a quienes se acercan a la universidad que busquen caminos que conduzcan a puestos que sean 'intrínsecamente humanos' y, por lo tanto, seguros? Que trabajos
- ¿Por qué el aprendizaje automático es menos satisfactorio que la codificación estándar?
- ¿Qué trabajos no pueden ser reemplazados por robots?
- ¿Puede la IA reemplazar a un juez?
- ¿Crees que este auge de la IA es sostenible en contraste con los casos anteriores? ¿Qué lo hace diferente esta vez?
Puede entrenar una red neuronal con un algoritmo genético, utilizando 1 / error de predicción como función de aptitud. Los pesos en la red neuronal se modelan como los genes (o alelo, para usar la terminología biológica más precisa). Empiezas con una población de redes neuronales y aplicas el algoritmo genético a través de generaciones sucesivas.
Tanto las redes neuronales como los algoritmos genéticos tienden a seguir la dirección general de reducir el error / maximizar la aptitud (óptimos locales, un lado). Pero los detalles de cómo lo hacen, y el camino que siguen, es diferente.
La red neuronal aprende / optimiza sus pesos con un algoritmo más específico: el gradiente de error desciende con funciones de salida neural que son diferenciables. La regla de aprendizaje tiene un conocimiento incorporado del mecanismo del modelo. Algoritmo genético no.
Entonces, en principio, para el tipo de problemas que una red neuronal es más adecuada, las redes neuronales tienden a ser las mejores. El problema es saber a priori para un problema particular, qué modelo neural es el mejor, si lo hay.
Los algoritmos genéticos son “ciegos” a los mecanismos de la máquina (de aprendizaje o de otro tipo) que está optimizando. Por lo tanto, pueden aplicarse con éxito en una gama más amplia de modelos, pero probablemente no aprendan / converjan tan rápido como un modelo de red neuronal para los problemas y conjuntos de datos que son realmente buenos / adecuados para la clasificación de la red neuronal.
(La declaración anterior sobre “ceguera” puede ser validada intuitivamente simplemente mirando la amplia variedad de criaturas vivientes que la selección natural ha estado produciendo en la Tierra. Es cierto que todos usan ADN, pero más allá del nivel básico de organización, tienden a ser muy diferente, al menos a nivel macroscópico.
En algoritmos genéticos esto es aún más cierto, ya que todos los problemas de descubrimiento / optimización de parámetros se pueden mapear como un cromosoma (secuencia de parámetros) y no requieren ninguna maquinaria común real, es decir. sin necesidad de ADN virtual)
Además, el modelo de redes neuronales puede / tiende a ser más rápido y computacionalmente más barato si la población es grande, especialmente si la función de aptitud es costosa de calcular (por ejemplo, en la simulación de organismos virtuales, en lugar de simplemente calcular una función matemática).
También puede combinar ambos de manera rentable (como lo hace la madre naturaleza).
Seleccione la población para la capacidad de aprender mejor.
Puede usar los algoritmos genéticos para cambiar más parámetros estructurales en la red neuronal, como el número de unidades neuronales y el grado de interconectividad.
Así que aprende ambas cosas … y diviértete construyendo maquinaria de predicción / aprendizaje honorable en la naturaleza …: o)