Los algoritmos evolutivos tienen dos ideas clave: (i) búsqueda aleatoria (es decir, mutación), (ii) “sexo” entre hipótesis múltiples.
La búsqueda aleatoria ya se explota en la optimización de NN profundos, en forma de descenso de gradiente “estocástico” (SGD): combinando las fuerzas de la aleatorización (capacidad de saltar fuera de los mínimos locales), con información sobre la mejor dirección (negativo del gradiente) para dar el siguiente paso, para alcanzar un buen mínimo local.
La parte “sexual” de los algoritmos evolutivos demostró ser inútil hace bastante tiempo [1] en 1995, después de lo cual los evolucionistas se divorciaron de la comunidad de aprendizaje automático y formaron su propia conferencia GECCO. Por lo tanto, no parece tener mucho sentido tratar de usar técnicas de programación genética pura para optimizar las NN profundas.
- ¿Las implementaciones físicas de las redes neuronales son claramente preferibles a las GPU?
- Quiero pasar el tiempo dado para el proyecto del último año para aprender ML. ¿Cómo empiezo?
- ¿Cuál es el mejor enfoque para construir un sistema de clasificación basado en la clasificación de otros?
- ¿Podría la renormalización de lotes reemplazar la normalización de lotes virtual en las GAN?
- ¿Qué significa que las funciones de activación (como ReLU) en NN inducen la escasez en las unidades ocultas?
[1] Kevin J. Lang, “Búsqueda genética de Hill Climbing Beats en un problema de síntesis de circuito booleano de Koza”, ICML 1995