Python es el idioma principal en demanda para aprender inteligencia artificial.
- ¡Lo principal es el aprendizaje profundo de Python! ¡El aprendizaje profundo está en todas partes!
Hay 7 pasos a continuación para ayudarlo a aprender sobre inteligencia artificial con python.
- ¿Qué es una explicación intuitiva de las limitaciones de las redes neuronales artificiales?
- ¿Pueden los psicodélicos dar nuevas ideas sobre la naturaleza de la conciencia o cómo podemos crearla?
- ¿Sería tan grande la demanda de inteligencia artificial que cuando desarrolle existencias se disparará?
- ¿Podría una IA crear tecnología, miles de millones de años antes que la nuestra, en el futuro?
- ¿Qué pasa si todos los cerdos se vuelven súper inteligentes?
Paso 1: Habilidades básicas de Python
Si pretendemos 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.
Primero, necesitas Python instalado. Sugeriría Python 2.7, por ninguna otra razón, ya que sigue siendo la versión instalada dominante.
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:
- Aprenda Python de la manera difícil, por Zed A. Shaw
Si tiene experiencia en programación pero no con Python en particular, o si su Python es elemental, sugeriría lo siguiente:
- Curso para desarrolladores de Google Python (muy recomendable para estudiantes visuales)
Si es un programador experimentado de Python, podrá omitir este paso.
Paso 2: Habilidades fundamentales de aprendizaje automático:
El propio Zachary Lipton de KDnuggets ha señalado que hay mucha variación en lo que la gente considera un “científico de datos”. En realidad, esto es un reflejo del campo del aprendizaje automático, ya que gran parte de lo que hacen los científicos de datos implica el uso de algoritmos de aprendizaje automático en diversos grados. Obtener una comprensión íntima de los algoritmos de aprendizaje automático está más allá del alcance de este artículo y, por lo general, requiere una cantidad sustancial de inversión de tiempo en un entorno más académico o, como mínimo, mediante un intenso autoaprendizaje.
No es necesario tener una comprensión de 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 informática para ser codificadores efectivos.
Hay todo tipo de video conferencias por ahí si lo prefiere, junto con el curso de Ng mencionado anteriormente. Un registro del profesor es Tom Mitchell, aquí hay un enlace a sus videos de conferencias recientes (junto con Maria-Florina Balcan), que encuentro particularmente accesible:
No necesita todas las notas y videos en este momento. 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.
Paso 3: Descripción general de los paquetes científicos de Python
Bien. Tenemos control sobre la programación de Python y entendemos un poco sobre el aprendizaje automático. 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 que utilizamos para realizar tareas elementales de aprendizaje automático:
- NumPy – NumPy – principalmente útil para sus objetos de matriz N-dimensionales.
- scikit-learn: aprendizaje automático en Python: 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
Paso 4: Comenzando con Machine Learning en Python
Implemente algoritmos de aprendizaje automático con la biblioteca de aprendizaje automático de facto de Python, scikit-learn.
Los cuadernos iPython (entorno interactivo para ejecutar Python) se pueden ver en línea o descargar e interactuar localmente en su propia computadora.
- http://cs231n.github.io/ipython-… de Stanford.
Los primeros tutoriales para usar scikit-learn son los siguientes. Realice todo esto en orden antes de pasar a los siguientes pasos.
- Una introducción general a scikit-learn, la biblioteca de aprendizaje automático de uso general más utilizada de Python, que cubre el algoritmo k-vecinos más cercanos:
Jupyter Notebook Viewer, por Jake VanderPlas
2. Una introducción más profunda y ampliada, que incluye un proyecto inicial con un conjunto de datos conocido de principio a fin:
http://nbviewer.ipython.org/gith…, por Randal Olson
3. Un enfoque en estrategias para evaluar diferentes modelos en scikit-learn, cubriendo divisiones de conjuntos de datos de tren / prueba:
justmarkham / scikit-learn-videos, por Kevin Markham
Paso 5: Temas de aprendizaje automático con Python
Con una base establecida en scikit-learn, podemos pasar a algunas exploraciones más profundas de los diversos algoritmos comunes y útiles. Comenzamos con el agrupamiento k-means, uno de los algoritmos de aprendizaje automático más conocidos. Es un método simple y a menudo efectivo para resolver problemas de aprendizaje sin supervisión:
jakevdp / sklearn_pycon2015, por Jake VanderPlas
A continuación, retrocedemos hacia la clasificación y echamos un vistazo a uno de los métodos de clasificación más populares históricamente:
http://thegrimmscientist.com/201… a través de ensayos y tribulaciones de un científico de datos
A partir de la clasificación, observamos la predicción numérica continua:
Jupyter Notebook Viewer, por Jake VanderPlas
Entonces podemos aprovechar la regresión para problemas de clasificación, a través de la regresión logística:
http://nbviewer.ipython.org/gith…, por Kevin Markham
Paso 6: Temas avanzados de aprendizaje automático con Python
Hemos mojado nuestros pies con scikit-learn, y ahora dirigimos nuestra atención a algunos temas más avanzados. Primero están las máquinas de vectores de soporte, un clasificador no necesariamente lineal que se basa en transformaciones complejas de datos en un espacio dimensional superior.
jakevdp / sklearn_pycon2015, por Jake VanderPlas
A continuación, los bosques aleatorios, un clasificador de conjunto, se examinan a través de un recorrido de Kaggle Titanic Competition:
Jupyter Notebook Viewer, por Donne Martin
La reducción de la dimensionalidad es un método para reducir el número de variables que se consideran en un problema. El análisis de componentes principales es una forma particular de reducción de dimensionalidad no supervisada.
jakevdp / sklearn_pycon2015, por Jake VanderPlas
Antes de pasar al paso final, podemos tomarnos un momento para considerar que hemos recorrido un largo camino en un período de tiempo relativamente corto.
Paso 7: aprendizaje profundo en Python
¡El aprendizaje profundo está en todas partes! El aprendizaje profundo se basa en la investigación de redes neuronales que se remonta a varias décadas, pero los avances recientes que datan de los últimos años han aumentado dramáticamente el poder percibido y el interés general en las redes neuronales profundas. Si no está familiarizado con el aprendizaje profundo, KDnuggets tiene muchos artículos que detallan las numerosas innovaciones recientes, logros y elogios de la tecnología.
Este paso final no pretende ser una clínica de aprendizaje profundo de ningún tipo; Echaremos un vistazo a algunas implementaciones de red simples en 2 de las principales bibliotecas contemporáneas de aprendizaje profundo de Python. Para aquellos interesados en profundizar en el aprendizaje profundo, les recomiendo comenzar con el siguiente libro en línea gratuito:
Redes neuronales y aprendizaje profundo, por Michael Nielsen
El siguiente tutorial introductorio sobre aprendizaje profundo en Theano es extenso, pero es bastante bueno, muy descriptivo y muy comentado:
http://nbviewer.ipython.org/gith…, por Colin Raffel
La otra biblioteca que probaremos es Caffe. De nuevo, de los autores:
Caffe es un marco de aprendizaje profundo hecho con la expresión, la velocidad y la modularidad en mente. Está desarrollado por el Centro de Visión y Aprendizaje de Berkeley (BVLC) y por colaboradores de la comunidad:
google / deepdream a través de Google.
Estos 7 pasos no lo convertirán en un experto en IA. Seguir estos pasos te ayudará a aprender IA con python más fácilmente.
Espero que esto ayude….