Lo que sugeriría y como se mencionó anteriormente es que comience desde Python y luego Machine Learning
- ¿Qué tecnología debo aprender, siendo un desarrollador de mainframe interesado en análisis de datos, AWS, aprendizaje automático, big data y otros?
- ¿Cuándo es preferible usar árboles de regresión en el aprendizaje automático?
- ¿Hay algún hallazgo reciente que indique que la ascendencia cerebral ocurre como un esquema de error de propagación inversa?
- ¿Cómo se aplica la validación cruzada a la regresión logística? Quiero evaluar la precisión de un modelo de regresión logística en un conjunto de datos.
- ¿Qué caminos puede tomar un ingeniero mecánico para comenzar a trabajar con robótica, aprendizaje automático e inteligencia artificial?
Paso 1: Habilidades básicas de Python
Si tiene la intención de aprovechar Python para realizar el aprendizaje automático, es crucial tener una comprensión básica de Python. Afortunadamente, debido a su gran popularidad como lenguaje de programación de propósito general, así como a su adopción tanto en informática científica como en aprendizaje automático, encontrar tutoriales para principiantes no es muy difícil. Su nivel de experiencia tanto en Python como en la programación en general son cruciales para elegir un punto de partida.
Si no tiene conocimientos de programación , mi sugerencia es comenzar con el siguiente libro en línea gratuito y luego pasar a los siguientes materiales:
- Python The Hard Way , de Zed A. Shaw
- Curso para desarrolladores de Google Python (muy recomendable para estudiantes visuales)
- Una Introducción a Python para la Computación Científica (de UCSB Engineering) , por M. Scott Shell (una gran introducción científica de Python ~ 60 páginas)
Por supuesto, si usted es un programador experimentado de Python , podrá omitir este paso. Incluso si es así, sugiero mantener lo muy legible Documentación de Python a mano.
Paso 2: Habilidades fundamentales de aprendizaje automático
La buena noticia es que no es necesario tener una comprensión a nivel de doctorado de los aspectos teóricos del aprendizaje automático para practicar, de la misma manera que no todos los programadores requieren una educación teórica en ciencias de la computación para ser codificadores efectivos.
El curso Coursera de Andrew Ng a menudo recibe excelentes críticas por su contenido; mi sugerencia, sin embargo, es navegar por las notas del curso compiladas por un ex alumno de la encarnación previa del curso en línea. Omita las notas específicas de Octave (un lenguaje similar a Matlab no relacionado con nuestras actividades de Python). Tenga en cuenta que estas no son notas “oficiales”, pero parecen capturar el contenido relevante del material del curso de Andrew. Por supuesto, si tiene el tiempo y el interés, ahora sería el momento de tomar el curso de aprendizaje automático de Andrew Ng en Coursera .
- Notas no oficiales del curso de Andrew Ng
Hay todo tipo de video conferencias por ahí si lo prefiere, junto con el curso de Ng mencionado anteriormente. Soy fanático de Tom Mitchell, así que aquí hay un enlace a sus videos de conferencias recientes (junto con Maria-Florina Balcan), que encuentro particularmente accesibles:
- Conferencias de aprendizaje automático de Tom Mitchell
No necesita todas las notas y videos en este punto . Una estrategia válida implica avanzar a los ejercicios particulares a continuación y hacer referencia a las secciones aplicables de las notas y videos anteriores cuando sea apropiado. Por ejemplo, cuando encuentre un ejercicio que implemente un modelo de regresión a continuación, lea la sección de regresión apropiada de las notas de Ng y / o vea los videos de regresión de Mitchell en ese momento.
Más allá de Python, hay una serie de bibliotecas de código abierto generalmente utilizadas para facilitar el aprendizaje automático práctico. En general, estas son las principales bibliotecas científicas de Python cuando se realizan tareas elementales de aprendizaje automático (claramente hay subjetividad en esto):
- numpy : principalmente útil para sus objetos de matriz N- dimensionales
- pandas : biblioteca de análisis de datos de Python, incluidas estructuras como marcos de datos
- matplotlib : biblioteca de trazado 2D que produce cifras de calidad de publicación
- scikit-learn : los algoritmos de aprendizaje automático utilizados para el análisis de datos y las tareas de minería de datos
Un buen enfoque para aprender esto es cubrir este material:
- Scipy Lecture Notes , por Gaël Varoquaux, Emmanuelle Gouillart y Olav Vahtras
Este tutorial de pandas es bueno, y va al grano:
- 10 minutos para pandas
Y no sería rápido ni fácil, pero si dedica el tiempo y sigue los pasos anteriores, no hay razón para que no pueda reclamar un dominio y una comprensión razonables en varios algoritmos de aprendizaje automático y su implementación en Python usando sus bibliotecas populares, incluidas algunas de las más avanzadas de la investigación actual sobre aprendizaje profundo.