Cómo aprender sobre redes neuronales artificiales si no sé nada sobre este campo

Gracias por A2A.

Si eres nuevo en el campo del aprendizaje automático, las redes neutrales serán mucho más fáciles de manejar si aprendes primero algunos modelos más simples como la regresión lineal / polinómica y la regresión logística.

Como mencioné en un comentario, recomendaría altamente el curso del Prof. Andrew Ng (incluso si acaba de ver las conferencias): https://class.coursera.org/ml-00…

Esto cubre lo básico de una manera muy accesible para que esté al día y sea capaz de implementar algoritmos más complejos como redes neutras de manera sorprendentemente rápida.

Vale la pena señalar que este no es un campo en el que es probable que se convierta en un experto de la noche a la mañana, por lo que aunque debería (con un fondo de programación y matemática decente) tomar suficiente de este curso para poder implementar algoritmos de aprendizaje para muchos Problemas que aún aprenderá por un tiempo.

https://www.kaggle.com es una excelente manera de practicar sus nuevas habilidades encontradas. También es una buena manera de evaluar hasta dónde han llegado tus habilidades y de medirte con los demás en el campo.

Bueno, es un buen momento para aprender algo acerca de las NN artificiales, ya que en los últimos años las NN han logrado un gran éxito en áreas como el reconocimiento del habla / imagen.
Entonces, vamos a su pregunta. Ahora dices que todavía no tienes fondo. Está bien. Todo el mundo empieza sin fondo, ¿de acuerdo? Para las personas que intentan aprender las NN por primera vez, el material que recomendaría es el Tutorial de Aprendizaje y Aprendizaje Profundo de Funciones Sin Supervisión, escrito por Andrew Ng y sus alumnos.
Este es un tutorial bien escrito, fácil de seguir y completo. Comienza con algunos aspectos básicos del aprendizaje supervisado , ya que las NN artificiales son inherentemente una arquitectura para el aprendizaje supervisado. Luego habla de redes neuronales simples, formalmente las redes totalmente conectadas, que son más fáciles de analizar matemáticamente. Después de eso, salta a un tema actual, las redes neuronales convolucionales (CNN), que es el tipo de NN artificial que realmente logra el éxito mencionado anteriormente. Por cierto, es posible que hayas oído hablar de “aprendizaje profundo”. Bueno, la mayor parte del aprendizaje profundo es solo sobre las CNN. Después de eso, el tutorial cambia al aprendizaje no supervisado al introducir un tipo importante de NN, el autocodificador. Luego construirá la conexión entre el autocodificador y algunas técnicas clásicas como PCA e ICA. No te preocupes si no has oído hablar de ellos. Los conocerás y son bastante comprensibles. Finalmente, el tutorial terminará con un área en la que Andrew Ng ha contribuido mucho, el aprendizaje autodidacta, que utiliza los codificadores automáticos para aprender características de datos sin etiquetar.
Bueno, puede que haya incluido demasiadas terminologías en la respuesta anterior. Así que te recomiendo que pruebes tú mismo. Una buena cosa del tutorial anterior es que incluye ejercicios bien diseñados para cada sección. Aprenderás haciendo y tendrás una mejor comprensión del material. Para este ejercicio, he entregado un conjunto de soluciones a GitHub (Jianchao-ICT / UFLDL_NEW-Solutions) que puede usar como referencia. La mayoría de las soluciones funcionan como se espera, excepto una que mencioné en el archivo Léame.
Finalmente, una cosa que vale la pena mencionar es que el tutorial anterior tiene una versión anterior en UFLDL Tutorial – Ufldl. He estudiado a través de ambos. La versión anterior comienza con el ejemplo relativamente sencillo, aunque representativo, de NN: el codificador automático y la mayoría de las otras secciones se tratan como algunas extensiones de los codificadores de voz. Además, la versión anterior le da relativamente poco peso a la CNN, que se ilustra más detalladamente en la nueva versión.
Oh no, esta respuesta es demasiado larga. Entonces, ¿algún mensaje para llevar a casa? Bueno, creo que lo primero importante en las NN artificiales es el algoritmo de Propagación hacia atrás (BP) , que se usa para entrenar la red. Este es un algoritmo clásico. Desafortunadamente, no es fácil de entender cuando lo aprendes por primera vez. Usted puede sentirse confundido y frustrado. Sin embargo, créame, este es realmente un algoritmo difícil, incluso Andrew expresó esta idea en su curso Aprendizaje automático de Coursera. Entonces, si te resulta demasiado difícil, normalmente muchas otras personas lo hacen. Y la segunda cosa importante, creo, es el autocodificador (AE) , que es inherentemente una red completamente conectada y simple.
Si pudiera escribir códigos para entrenar a AE usando BP (¡El ejercicio le brinda la oportunidad de hacerlo!), Creo que ya conoce los elementos clave de las NN artificiales. Entonces, puede profundizar más en esta área al aprender el curso de Coursera. Redes neuronales para aprendizaje automático (página en coursera.org) ofrecidas por Geoffrey Hinton tal como lo menciona Alexander McMurray. Si descubre que se ha enamorado de esta área, pruebe el curso CN2 CS231n de Li Fei-Fei: Redes neuronales convolucionales para reconocimiento visual.
¡Diviertete! Por cierto, ciertamente no soy un anunciante 🙂

No te molestes con las redes neuronales, es una pérdida de tiempo.

Como estudiantes de IA todos estábamos interesados ​​solo en las redes neuronales. El Santo Grial de nuestro estudio fue aprender la magia detrás de NN y resolver todos los problemas del mundo con nuestras propias NN.

La universidad ha estado tratando de enseñarnos algo sobre estadísticas, regresión lineal, árboles de decisión, sistemas expertos. No no no, no escuchamos demasiado. Tenía aletas en nuestros ojos y solo quería NN. ¡Es el algoritmo más genial, superior a todos los demás! ¿No es así?

En realidad, NN es uno de los peores algoritmos para todos los principiantes en aprendizaje automático . Porque:
1. Son cajas negras y no te dicen mucho sobre tus datos.
2. Cuando no conoces tus datos, cometes errores feos.
3. No hay proceso de selección de características en NN, tiene que preseleccionar los predictores correctos con otro algoritmo o proceso (PCA, …)
4. El entrenamiento de NN lleva años y generalmente produce modelos overfit (perfectos en datos de entrenamiento, inútiles en invisibles).

Recomendaría a todos los interesados ​​en el aprendizaje automático que comiencen con los árboles de decisión y la regresión lineal / logística. Conozca sobre el proceso de KDD, la metodología CRISP DM, el proceso de comprensión y preparación de datos maestros. Entonces es fácil usar muchos otros algoritmos de aprendizaje automático, incluidos NN, SVM o Random Forests.

Cuando sepa cómo usarlos correctamente, logrará excelentes resultados con cada uno de ellos.

Actualmente estoy haciendo mi proyecto de verano en este tema.
Puedes seguir los siguientes libros y enlaces para obtener un conocimiento básico y luego tienes que trabajar a través de ti mismo. Hay muchas buenas referencias en línea y libros electrónicos disponibles para este tema en particular.

1. “Redes neuronales, una fundación integral, 2ª edición” por Simon Haykin. Este es considerado como el libro más básico para obtener conocimientos teóricos de la materia.

2. Puedes seguir las conferencias de IIT Kharagpur aquí:
http://nptel.ac.in/courses/11710

3. También puedes seguir este curso en coursera:
https://www.coursera.org/course/…

4. Esta página también es buena para comprender mejor las redes neuronales.
http://www.cse.unsw.edu.au/~cs94…

También debe obtener un buen conocimiento de las estadísticas y la probabilidad, ya que desempeña un papel vital en las redes neuronales artificiales.
La mejor de las suertes. 🙂

Sumérjase en la investigación y busque oportunidades para participar en experiencias simuladas o de ingeniería inversa. La fuente de experiencia que más a menudo se pasa por alto es en las universidades. Su labor gratuita para un profesor y la forma correcta de hacerlo, puede aprender de principio a fin de proporcionar su tiempo y energía para sus tareas domésticas y obtener un conocimiento cada vez mayor y, como resultado, la oportunidad de aprender.

En última instancia, campos como este todavía están a la vanguardia y las superestrellas aún no han emergido. Usted tiene la oportunidad de obtener una base rápidamente, si se aplica. Lea artículos, conéctese con cualquiera que sepa lo más mínimo posible sobre el tema, tome cursos, tome extensiones de cursos relacionados con él, lea libros, lea revistas, experimente y falle a menudo y rápidamente.

Lo aprenderías mi amigo.
La red neuronal artificial (ANN) es un algoritmo que intenta replicar el cerebro humano en forma de un modelo computacional que se puede utilizar para resolver problemas en el campo de la inteligencia artificial (IA).
Si no sabes nada acerca de la IA, primero debes obtener una introducción a la IA, en este caso, te aconsejaría que comiences un curso en línea en Coursera para una introducción al Aprendizaje automático y la IA, puede ser este Coursera en este Por supuesto, también recibirá una introducción a ANN en el momento adecuado.

Y si ya tienes una buena idea de la IA y solo quieres aprender sobre ANN mi consejo sería seguir este curso, Coursera.

He estado ahí.

  • Si quieres tener un entendimiento básico de lo que NN está haciendo. Mira el curso de Aprendizaje Automático realizado por Andrew Ng de Coursera.
  • Si desea implementar uno por su cuenta, siga observando el curso de Aprendizaje Automático realizado por Andrew Ng de cousera y haga la tarea.
  • Si desea comprender las matemáticas detrás de NN, necesita aprender un poco de cálculo (regla de la cadena) y un poco de álgebra lineal (transposición de matriz e inversa). Eso es todo lo que necesitas para entender la propagación de la espalda NN, sin embargo, necesito decirte que tomará algo de tiempo, así que sé paciente.

Estás en el camino correcto. Buscando respuestas. Lea acerca de esto, estudie los sistemas actuales que lo han implementado. Supongo que MIT ha hecho uno de esos sistemas. Podrías leer artículos sobre esto. No lo hagas de la manera convencional, es decir, estudia toda la teoría.
Comprender sus usos prácticos. Es un tema realmente vasto e interesante, especialmente para Teoría de la computación, Inteligencia artificial y Minería de datos.

A2A
Un curso del profesor Hinton debería ser suficiente para comenzar e ir al estado de la técnica en ANN hoy. Para aquellos que no pudieron unirse al curso en Coursera, los videos son subidos por alguien aquí:
http://www.youtube.com/user/aico

Hay un curso de Coursera dedicado a redes neuronales artificiales por el hombre que las inventó en gran parte, Geoffrey Hinton, primero de su nombre.

También están cubiertos en el famoso curso Andrew Ng Machine Learning Coursera, que parece ser la forma estándar de que las personas comiencen en el campo.

Depende de su fondo. Si sabe algo acerca de las redes de computadoras, como lo sugirieron Alexander y WonTaek, comience con Coursera.

Si no es así, primero debes comenzar con los conceptos básicos de redes. Computer Networks por S Tanenbaum es uno de los mejores libros sobre el tema y los últimos capítulos cubren brevemente las redes neuronales. Eso debería prepararte para los cursos más avanzados de Coursera.

Puedes comenzar con el curso en Coursera.
Además, ¿podría encontrar Empezar con redes neuronales (ANN)? Útil para obtener más información.

¡Definitivamente el curso de coursera! o lea uno de los libros en el campo: el libro de Simon Haykin, el libro de Kishan Mehrotra y otros … etc.

Como dijo Alexander McMurray, mira el curso de Andrew Ng’s ML. Ve a ver la conferencia del MIT sobre ANN hecha por Patrick Winston.