Soy completamente nuevo en las redes neuronales pero estoy muy interesado en comprenderlas. Sin embargo, no es nada fácil comenzar.
¿Alguien podría recomendar un buen libro o cualquier otro tipo de recurso? ¿Hay una lectura obligada?
Estoy agradecido por cualquier tipo de consejo.
machine-learning
neural-networks
references
Claudio Albertin
fuente
fuente
Respuestas:
Las redes neuronales han existido por un tiempo, y han cambiado dramáticamente a lo largo de los años. Si solo busca en la web, puede terminar con la impresión de que "red neuronal" significa una red de alimentación de múltiples capas capacitada en propagación hacia atrás. O bien, puede encontrarse con cualquiera de las docenas de modelos raramente utilizados y extrañamente nombrados y concluir que las redes neuronales son más un zoológico que un proyecto de investigación. O que son una novedad. O...
Podría seguir. Si quieres una explicación clara, escucharía a Geoffrey Hinton . Ha existido desde siempre y (¿por lo tanto?) Hace un gran trabajo tejiendo todos los modelos dispares en los que ha trabajado en una narrativa histórica coherente, intuitiva (y a veces teórica). En su página de inicio, hay enlaces a Google Tech Talks y conferencias de Videolectures.net que ha realizado (sobre RBMs y Deep Learning , entre otros).
Desde mi punto de vista, aquí hay una hoja de ruta histórica y pedagógica para comprender las redes neuronales, desde su inicio hasta el estado de la técnica:
fuente
Recomiendo ver estas conferencias y usar esto como material de lectura . Estas conferencias son sobre aprendizaje automático en general por Andrew Ng habla extensamente sobre redes neuronales y hace todo lo posible para que sea accesible para principiantes.
fuente
Estos son, en mi opinión, muy buenos libros.
Los libros tienen algunas similitudes: ambos tienen alrededor de 500 páginas y son bastante antiguos, de 1995. Sin embargo, siguen siendo muy útiles. Ambos libros comienzan desde cero, explicando qué son las redes neuronales. Proporcionan explicaciones claras, buenos ejemplos y buenos gráficos para ayudar a la comprensión. Explican con gran detalle los problemas de la formación de redes neuronales, en sus muchas formas y formas, y lo que pueden y no pueden hacer. Los dos libros se complementan muy bien, porque lo que uno no puede entender con un libro, uno tiende a encontrarlo en el otro.
Rojas tiene una sección, que particularmente me gusta, sobre la implementación de la retropropagación en muchas capas en forma de matriz. También tiene una buena sección sobre lógica difusa y otra sobre teoría de la complejidad. Pero entonces Bishop tiene muchas otras secciones bonitas.
Rojas es, yo diría, el más accesible. Bishop es más matemático y quizás más sofisticado. En ambos libros, las matemáticas son principalmente álgebra lineal y cálculo de funciones de múltiples variables (derivadas parciales, etc.). Sin ningún conocimiento de estos temas, probablemente no encuentre ninguno de estos libros muy esclarecedor.
Yo recomendaría leer Rojas primero.
Ambos libros, obviamente, tienen mucho que decir sobre algoritmos, pero ninguno dice mucho sobre implementaciones específicas en código.
Para mí, estos libros proporcionan los antecedentes, lo que hace comprensible un curso en línea (como Hinton, en Coursera). Los libros también cubren mucho más terreno, y con mucho más detalle, que los que se pueden hacer en línea.
Espero que esto ayude, y estoy feliz de responder cualquier pregunta sobre los libros.
fuente
Como han señalado otras personas, hay muchos (buenos) recursos en línea y personalmente he hecho algunos de ellos:
Quiero llamar la atención sobre el hecho de que estas exposiciones en su mayoría siguieron el tratamiento clásico donde las capas (suma y no linealidad juntas) son las unidades básicas. El tratamiento más popular y más flexible implementado en la mayoría de las bibliotecas, como torch-nn y tensorflow, ahora utiliza un gráfico de cálculo con diferenciación automática para lograr una alta modularidad. Conceptualmente es más simple y más liberador. Recomiendo encarecidamente el excelente curso abierto Stanford CS231n para este tratamiento.
Para un tratamiento riguroso y teórico del aprendizaje, puede consultar Neural Networks de Anthony y Bartlett.
fuente
Si desea un tratamiento desde un punto de vista más estadístico, eche un vistazo a "Reconocimiento de patrones y redes neuronales" de Brian Ripley. Este libro no es introductorio y presupone algunos antecedentes estadísticos.
http://www.stats.ox.ac.uk/~ripley/PRbook/
fuente
He creado una aplicación web que respalda su proceso de aprendizaje en el campo de las redes neuronales.
https://blueneurons.ch/nn
Puede jugar con las configuraciones (arquitectura, funciones de activación, configuraciones de entrenamiento) y observar cómo las configuraciones afectan las predicciones. Todos los conjuntos de datos tienen valores preconfigurados que se pueden adoptar. También es posible crear sus propios conjuntos de datos.
Instrucciones y explicaciones a los elementos implementados:
Guía del usuario
fuente