¿Cómo comienzo en la teoría y la programación del aprendizaje automático?

Si tuviera que armar un plan de estudio para un principiante, probablemente comenzaría con un curso de introducción fácil como

– Curso de aprendizaje automático de Andrew Ng en Coursera (Coursera)

A continuación, recomendaría un buen libro de introducción sobre ‘Minería de datos’ (la minería de datos se trata esencialmente de extraer conocimiento de los datos, principalmente utilizando algoritmos de aprendizaje automático). Puedo recomendar el siguiente libro escrito por uno de mis antiguos profesores:

– P.-N. Tan, M. Steinbach y V. Kumar. Introducción a la minería de datos, (Primera edición). Addison-Wesley Longman Publishing Co., Inc., Boston, MA, EE. UU., 2005.

Este libro le proporcionará una excelente visión general de lo que está actualmente disponible; no solo aprenderá sobre diferentes técnicas de aprendizaje automático, sino que también aprenderá a “comprender” y “manejar” e interpretar los datos: recuerde; sin datos informativos “buenos”, un algoritmo de aprendizaje automático es prácticamente inútil. Además, aprenderá sobre técnicas alternativas, ya que el aprendizaje automático no siempre es la única y mejor solución para un problema.

> si todo lo que tienes es un martillo, todo parece un clavo …

Ahora, después de completar el curso Coursera, tendrá una comprensión básica de ML y ampliará su comprensión a través del libro Data Mining.
No quiero publicitarme aquí, pero creo que mi libro sería un buen seguimiento para aprender ML con más profundidad, comprender los algoritmos, aprender sobre diferentes canales de procesamiento de datos y técnicas de evaluación, mejores prácticas y aprender cómo para poner en acción usando Python, NumPy, scikit-learn y Theano para que pueda comenzar a trabajar en sus proyectos personales.

Mientras trabaja en sus proyectos individuales, tal vez profundice su conocimiento (aprendizaje estadístico) a través de uno de los tres siguientes:

– T. Hastie, R. Tibshirani, J. Friedman, T. Hastie, J. Friedman y R. Tibshirani. minería de datos, inferencia y predicción. 2a edición, volumen 2. Springer, 2009.
– CM Bishop y col. Reconocimiento de patrones y aprendizaje automático | Christopher Bishop | Springer, volumen 1. springer Nueva York, 2006.
– Duda, Richard O., Peter E. Hart y David G. Stork. Clasificación de patrones, 2a edición. John Wiley & Sons, 2012.

Cuando haya terminado con todo eso y todavía tenga hambre de aprender más, le recomiendo

– el libro Deep Learning (página en iro.umontreal.ca) de Yoshua Bengio, Ian Goodfellow y Aaron Courville. La fecha de lanzamiento se establece alrededor de 2016, pero el manuscrito de 613 páginas ya está disponible a partir de hoy (en línea y de forma gratuita).

– Y en el medio, si está buscando una lectura de tiempo libre menos técnica pero muy inspiradora, le recomiendo El algoritmo maestro de Pedro Domingo: Cómo la búsqueda de la máquina de aprendizaje definitiva rehacerá nuestro mundo (Pedro Domingos)

Para comenzar, los siguientes pasos pueden ayudarlo. Estos pasos de aprendizaje funcionan como un bucle , usted aprende mejor cuando los repite repetidamente utilizando diferentes lenguajes, algoritmos o conjuntos de datos. Comience de manera simple y trabaje en aplicaciones progresivamente más desafiantes con cada iteración:

  1. Decida qué lenguaje de programación le gustaría usar, por ejemplo, Python, R, Matlab, etc.
  2. Descargue un pequeño conjunto de datos simple. Por ejemplo, Kaggle ( http://www.kaggle.com ) tiene conjuntos de datos de buenas prácticas. Determine la pregunta de datos, ¿se trata de un problema de clasificación, regresión o agrupamiento?
  3. Programe los pasos de exploración y preparación de datos. Esto significa verificar datos extremos (valores atípicos), valores faltantes, trazar los datos, renombrar categorías, escalar los datos, etc. Comprender la estructura de datos: por ejemplo, para los datos de imagen (por ejemplo, reconocimiento de dígitos escritos a mano) se utilizan diferentes algoritmos que las ventas datos, y los datos están estructurados de manera diferente.
  4. Estudie los algoritmos que otros usaron o propusieron para este tipo de datos. Intente averiguar qué hacen los algoritmos y qué significan las configuraciones de los parámetros. Hay muchos libros excelentes y recursos en línea, como “Una introducción al aprendizaje estadístico con aplicaciones en R” de James, Witten, Hastie y Tibshirani (incluido el curso en línea de Stanford) y el sitio web Machine Learning Mastery (Acerca de – Machine Learning Mastery).
  5. Implemente un algoritmo para comenzar, incluida la validación cruzada y el cálculo de los rendimientos del modelo.
  6. Si ha terminado, comienza de cero nuevamente con otro algoritmo o un conjunto de datos diferente.

Blogs de ciencia de datos | Ruthger Righart

Esta pregunta ha sido formulada en otros sabores, por favor revisa una respuesta similar

La respuesta de Shehroz Khan a ¿Cuáles son algunos cursos y recursos excelentes para el aprendizaje automático y la inteligencia artificial?

La siguiente es la recomendación de mi libro: la respuesta de Shehroz Khan a ¿Qué es un buen libro para principiantes para estudiar ciencia de datos (específicamente agrupamiento, clasificación y análisis de series de tiempo)?

El diseño de la máquina es una parte importante para las aplicaciones de ingeniería. ¿Pero qué es una máquina? La máquina es un dispositivo que comprende las partes estacionarias y las partes móviles combinadas para producir, transformar o usar energía mecánica. Algunos tipos de máquinas son: torno, motor, compresor y muchos más.

El diseño de una máquina es una parte importante del uso de ingeniería. Todas las máquinas están formadas por elementos o partes o unidades. Cada elemento es una parte separada de la máquina y es posible que deba diseñarse por separado y en conjunto. Cada elemento a su vez puede ser una parte completa o estar formado por varias piezas pequeñas que se unen. Varias partes de la máquina se unen para formar una máquina completa.

Aquí enumeramos algunos ejemplos de máquinas:

Lea más en: Una descripción general de la máquina y sus tipos

Para comenzar con la teoría del aprendizaje automático, asegúrese de conocerlos bien;

  1. Probabilidad, valores esperados
  2. Estadísticas: pruebas estadísticas, regresión
  3. Error de computación
  4. Optimización: lineal, cuadrática, entera, estocástica
  5. Vectores
  6. Conocimientos básicos de algoritmos heurísticos, algoritmos codiciosos, etc.

Para comprender cualquier algoritmo, por ejemplo: Regresión / Logística, estos conceptos son muy elementales.

En perspectiva computacional: –

  1. Sé un maestro de los bucles y las funciones lambda en cualquier lenguaje (preferiblemente Python)
  2. Conoce un poco de Uy

Estos son los conceptos básicos que necesita para comprender un algoritmo ML

El siguiente paso sería: –

  1. Codifique desde cero un algoritmo como K-NN / SVM
  2. Cree un algoritmo de similitud de coseno TF_IDF
  3. Implemente la regresión lineal con la pendiente de gradiente Optimización desde cero.

Después de esto, uno puede comprender la metodología básica y las matemáticas involucradas en el aprendizaje automático después de esto, cuánto aprende depende en un 100% de lo apasionado que sea al respecto.

¿Libros? Prueba este. Tiene una calificación de 4.4 en Amazon y 3.78 en Goodreads.

Aprendizaje automático: Tom M. Mitchell: 9780070428072: Amazon.com: Libros

Algunos de mis amigos que están interesados ​​en Machine Learning dicen que Coursera los ayudó mucho. Por lo tanto, es posible que desee analizar eso también.

Diría desde un punto de vista científico y, en lo que a mí respecta,

uno podría comenzar por tener una comprensión adecuada de la teoría de optimización que lo ayudará a prosperar cuando esté haciendo los algoritmos de aprendizaje automático reales porque giran en torno al modelado paramétrico desde mi entendimiento.

El álgebra lineal le dará la herramienta para lidiar con múltiples variables y, combinado con la teoría de optimización (que también implicará cálculo diferencial), el aprendizaje automático se dominará fácilmente desde un punto de vista científico.

Por supuesto, si tiene tiempo para pasar por este tedioso proceso, pero vale la pena desde un punto de vista científico.

Saludos

Supongo que eres un estudiante universitario, así que intentaré hablar desde mi propia perspectiva. Actualmente soy un estudiante de secundaria que intenta aprender el aprendizaje automático, y aunque he intentado ver el curso de Andrew Ng sobre Coursera, a menudo he encontrado que los artículos aleatorios en Internet me ayudan a comprender mejor los temas. Por ejemplo, cuando estaba tratando de aprender sobre las redes neuronales, sí, Andrew Ng fue bastante informativo en el aspecto de la teoría, pero en términos de implementar uno, seguí numerosos tutoriales en línea y eventualmente armé una red neuronal por mí mismo (no eficiente) , pero seguía siendo funcional). Entonces, en mi opinión, encuentre un tema de aprendizaje automático que desee aprender (hay muchos de ellos), busque en Google tantos recursos como pueda, busque código en Github o incluso Kaggle, intente comprenderlos en términos simples y construir a partir de ahí.

Sugeriría seguir este enlace para que pueda aprender Machine Learning en 90 días paso a paso.

Machine learning en acción

More Interesting

Cómo publicar un proyecto capstone

¿Cómo funcionan los algoritmos súper recursivos en CUDA?

¿Cómo se mejora y mejora la técnica de aprendizaje automático mientras nadie sabe exactamente cómo funciona?

¿La normalización de datos tiene otros beneficios además de acelerar el descenso del gradiente? Después de calcular los parámetros (pesos), ¿es necesario normalizar los casos de prueba proporcionados por el usuario para la predicción?

¿Es realmente posible comenzar una carrera seria de IA / ML con el objetivo final de trabajar en un lugar como OpenAI, Google o DeepMind a través del autoestudio?

¿Cuál es la diferencia entre el análisis de opinión y el análisis de tonalidad?

¿Mi reproductor de caja de ritmo aprendió qué canción tocar a continuación?

¿Puede el aprendizaje automático ayudarnos a comprender el cerebro humano?

¿Cómo puede alguien usar los datos de la secuencia de genes para encontrar genes responsables de una enfermedad genética en particular?

¿Cómo debo comenzar a aprender 'Machine Learning usando Java'?

¿Cuáles son los algoritmos de aprendizaje automático adecuados para Big Data o análisis en tiempo real?

¿Las empresas de reconocimiento de imágenes / servicios API utilizan solo modelos neuronales profundos y nada más?

¿Es el número de nodos en una capa oculta más que la capa de entrada? ¿Es esto un problema? ¿Qué se puede aprender en tales redes neuronales?

Cómo elegir el modelo correcto con la distribución correcta

¿Cuál es el mejor enfoque para aprender sobre los algoritmos de redes neuronales de predicción del mercado de valores?