¿Cómo un principiante total comienza a aprender el aprendizaje automático si tiene algún conocimiento de los lenguajes de programación?

A2A.

Para tener una base matemática básica, necesita tener algún conocimiento de los siguientes conceptos matemáticos:
– Probabilidades y estadísticas
– Álgebra lineal
– Optimización
– Cálculo multivariable
– Análisis funcional (no esencial).
– Lógica de primer orden (no esencial).
Puede encontrar material razonable en la mayoría de estos buscando “notas de lectura” en Google. Por lo general, encontrará buenas notas de clase compiladas por algún profesor que enseña ese curso. Los primeros resultados deben darle un buen conjunto para elegir. Vea la respuesta de Prasoon Goyal a ¿Cómo debo comenzar a aprender las matemáticas para el aprendizaje automático y desde dónde?
Hojea estos. No es necesario que los revises con mucho detalle. Puede volver a estudiar las matemáticas cuando sea necesario mientras aprende ML.

Luego, para obtener una descripción general rápida de ML, puede seguir la siguiente hoja de ruta (escribí sobre muchos de estos temas en varias respuestas en Quora; vinculé las más relevantes para una referencia rápida).

Día 1:

  • Terminología básica:
    1. Configuraciones más comunes: configuración supervisada, configuración no supervisada, configuración semi-supervisada, aprendizaje de refuerzo.
    2. Problemas más comunes: Clasificación (binario y multiclase), Regresión, Agrupación en clúster.
    3. Preprocesamiento de datos: Normalización de datos.
  • Conceptos de conjuntos de hipótesis, error empírico, error verdadero, complejidad de conjuntos de hipótesis, regularización, compensación sesgo-varianza, funciones de pérdida, validación cruzada.

Dia 2:

  • Conceptos básicos de optimización:
    1. Terminología y conceptos básicos: optimización convexa, lagrangiano, problemas primarios y duales, gradientes y subgradientes, [math] \ ell_1 [/ math] y [math] \ ell_2 [/ math] funciones objetivas regularizadas.
    2. Algoritmos: Pendiente de gradiente de lotes y gradiente de gradiente estocástico, Pendiente de gradiente de coordenadas.
    3. Implementación: escriba el código para el descenso del gradiente estocástico para una función objetivo simple, ajuste el tamaño del paso y obtenga una intuición del algoritmo.

Día 3:

  • Clasificación:
    1. Regresión logística
    2. Máquinas de vectores de soporte: intuición geométrica, formulaciones primarias-duales, noción de vectores de soporte, truco del kernel, comprensión de los hiperparámetros, búsqueda en cuadrícula.
    3. Herramienta en línea para SVM: juegue con esta herramienta en línea para SVM (desplácese hacia abajo hasta “Interfaz gráfica”) para obtener una intuición del algoritmo.

Día 4:

  • Regresión:
    1. Regresión de cresta
  • Agrupamiento
    1. k-medias y algoritmo de expectativa-maximización.
    2. Clúster jerárquico de arriba hacia abajo y de abajo hacia arriba.

Dia 5:

  • Métodos bayesianos:
    1. Terminología básica: antecedentes, posteriores, probabilidad, estimación de máxima verosimilitud e inferencia máxima a posteriori.
    2. Modelos de mezclas gaussianas
    3. Asignación de Dirichlet Latente: El modelo generativo y la idea básica de la estimación de parámetros.

Día 6:

  • Modelos gráficos:
    1. Terminología básica: redes bayesianas, redes Markov / campos aleatorios Markov.
    2. Algoritmos de inferencia: eliminación de variables, propagación de creencias.
    3. Ejemplos simples: Modelos ocultos de Markov. Modelo de ising

Días 7–8:

  • Redes neuronales:
    1. Terminología básica: Neurona, función de activación, capa oculta.
    2. Redes neuronales convolucionales: capa convolucional, capa de agrupación, Backpropagation.
    3. Redes neuronales basadas en la memoria: redes neuronales recurrentes, memoria a corto y largo plazo.
    4. Tutoriales: estoy familiarizado con este tutorial de Torch (querrá ver el directorio [math] \ texttt {1_supervised} [/ math]). Puede haber otros tutoriales en otros marcos de aprendizaje profundo.

Día 9:

  • Temas varios:
    1. Árboles de decisión
    2. Sistemas de recomendación
    3. Procesos de decisión de markov
    4. Bandidos multiestados

Día 10: (día del presupuesto)

  • Puede usar el último día para ponerse al día con cualquier cosa que haya quedado de los días anteriores, u obtener más información sobre el tema que le resulte más interesante / útil para su trabajo futuro.

Una vez que haya pasado por lo anterior, querrá comenzar con algún curso estándar en línea o texto ML. El curso de Andrew Ng en Coursera es un buen punto de partida. Una versión avanzada del curso está disponible en The Open Academy (Aprendizaje de máquinas | The Open Academy). Los libros populares con los que tengo experiencia son los siguientes:

  • Reconocimiento de patrones y aprendizaje automático: Christopher Bishop
  • Aprendizaje automático: una perspectiva probabilística: Kevin P. Murphy

Si bien el libro de Murphy es más actual y más elaborado, creo que Bishop’s es más accesible para los principiantes. Puedes elegir uno de ellos según tu nivel.
En este punto, debe tener un conocimiento práctico del aprendizaje automático. Más allá de esto, si está interesado en un tema en particular, busque recursos específicos en línea sobre el tema, lea artículos seminales en el subcampo, intente encontrar algunos problemas más simples e impleméntelos.

Es importante implementar algunos algoritmos básicos cuando comience a hacer ML, como el descenso de gradiente, AdaBoost, árboles de decisión, etc. [además de lo que haya implementado en la descripción general de 10 días]. También debería tener algo de experiencia con el preprocesamiento de datos, la normalización, etc. Una vez que haya implementado algunos algoritmos desde cero, para otros algoritmos, debe usar las implementaciones estándar (como LibSVM, Weka, ScikitLearn, etc.) en algunos problemas de juguetes, y Obtener una buena comprensión de los diferentes algoritmos.

Si eres un principiante completo en Aprendizaje automático, entonces es bueno comenzar primero con lo básico en lugar de saltar a los aspectos técnicos. Durante los primeros días, intente recopilar tantos recursos como pueda al ver algunos videos en Youtube y blogs sobre Aprendizaje automático y Ciencia de datos para obtener una imagen de por qué necesitamos el aprendizaje automático y cuáles son sus implicaciones en la vida real. Debes recordar que Machine Learning y Data Science siempre van de la mano.

Siga estos blogs para mantenerse actualizado en el mundo del aprendizaje automático y la ciencia de datos:

  1. Aprendizaje Automático (Teoría)
  2. La inteligencia artificial y las ciencias sociales – Brendan O’Connor
  3. Blog – Dominio del aprendizaje automático
  4. Aprendizaje automático

Siga esta secuencia para comenzar su aprendizaje:

  • Aprender SQL debería ser el primer paso porque Machine Learning y Data Science se trata de DATA . En Aprendizaje automático y Ciencia de datos, el 80% está obteniendo los datos correctos y la ciencia es solo el 20%. Por lo tanto, debe saber cómo manejar sus datos de manera eficiente. Escribir consultas SQL le ayudará a comprender mejor sus datos. Le recomendamos que siga el siguiente enlace para aprender SQL: Tutorial de SQL
  • El siguiente paso es aprender Estadística porque para comprender el principio y el funcionamiento de cualquier Algoritmo de Aprendizaje Automático, necesita tener conocimientos de Estadística. Forma la base de cualquier algoritmo de aprendizaje automático. La lista de temas que podría cubrir en Estadísticas son Tipos de variables, Población y muestreo, Cálculo de la media, Mediana, Modo, Varianza, Desviación estándar y métodos para encontrar residuos. A continuación se muestra un enlace a un libro donde puede aprender todos los temas de Estadística y Aprendizaje Automático y comprender el principio de funcionamiento completo detrás de cada algoritmo de Introducción al Aprendizaje Estadístico.
  • Ahora viene la tarea de decidir qué herramienta elegir para hacer las manos en Machine Learning. Como dijo que tiene algunos conocimientos sobre programación, siempre se recomienda comenzar con Python, ya que es la mejor herramienta para implementar Machine Learning. Muchas compañías han empezado a usar Python, ya que es muy fácil de entender y tiene muchas características adicionales en comparación con R y la programación no es compleja como JAVA o C ++, por ejemplo. Si estás usando python, te recomiendo comenzar con los conceptos básicos de python. Luego le pediría que explore algunas bibliotecas importantes en python que se utilizan para la manipulación de datos como numpy y pandas . Aquí está el enlace Python para análisis de datos – Lección 8 (Parte 1). A continuación, aprenda cómo representar sus datos visualmente. Para eso necesitas bibliotecas de visualización de datos como Matplotlib y Seaborn . Los siguientes enlaces contienen todos los recursos necesarios para comenzar con Python y Machine Learning.

Para aprender Python: Tutorial de Python – Aprender Python

Para comprender los conceptos básicos del aprendizaje automático, consulte el siguiente video tutorial:

  • Finalmente, es hora de saltar a los algoritmos y explorar cómo hacer predicciones a partir de sus datos. Trate de aprender primero los conceptos y los aspectos técnicos detrás de cada algoritmo del libro ISLR antes de implementarlo usando python. Siga el proceso de recopilación de sus datos, luego preprocesamiento de datos para limpiar sus datos, elija un modelo, luego adiestre, luego de eso pruebe su modelo para hacer predicciones. Sckitlearn es la biblioteca que utilizará para realizar sus algoritmos, por lo tanto, debe tener conocimientos previos. El siguiente enlace será útil para que aprendas Aprendizaje automático en Python Python Aprendizaje automático con SKLearn Tutorial for Investing – Introducción

Espero que esto te ayude a entender. Haga clic aquí para saber más sobre la Capacitación para la Certificación de Aprendizaje Automático .

En 2011, el profesor de Stanford Andrew Ng lanzó su primer MOOC, enseñando a más de 100,000 estudiantes sobre el aprendizaje automático. Ng ha dicho que el curso, que resultó ser muy popular, llevó al inicio de Coursera. Hoy en día, Coursera llega a 7,5 millones de usuarios en todo el mundo, y el curso de Aprendizaje automático de Ng continúa recibiendo críticas muy positivas de programadores experimentados y recién iniciados.

Los programadores utilizan el aprendizaje automático para construir algoritmos realmente inteligentes, y gracias a educadores como Andrew Ng, la gente está empezando a darse cuenta. Si desea comenzar su educación en aprendizaje automático y explorar algunas de sus aplicaciones, consulte nuestro resumen de algunos de los mejores MOOC sobre aprendizaje automático de hoy.

Aprendizaje automático para principiantes:

1. Aprendizaje automático (Stanford): este curso altamente calificado de Stanford es quizás la mejor introducción al aprendizaje automático. Los usuarios elogian al profesor Andrew Ng por su habilidad para explicar de manera experta los conceptos matemáticos involucrados en diferentes áreas del aprendizaje automático.

Nivel : Principiante | Duración : 10 semanas | Fecha de inicio : ahora | Leer comentarios

2. Aprendiendo de los datos: este curso introductorio de CalTech se sumerge en el aprendizaje automático como si contara una historia: ¿Pueden las máquinas aprender? ¿Cómo exactamente? Los estudiantes comprenderán la teoría detrás del aprendizaje automático y adquirirán experiencia con diferentes algoritmos y modelos.

Nivel : Principiante | Duración : 10 semanas | Fecha de inicio : 25 de septiembre de 2014

3. Principios de autonomía y toma de decisiones: obtenga una visión general de las diferentes formas en que los sistemas toman decisiones: desde la lógica hasta la heurística y el razonamiento basado en modelos.

Nivel : Principiante | Duración : a ritmo propio | Fecha de inicio : siempre en

Aprendizaje de máquina intermedia:

4. Aprendizaje automático (University of Washington): este curso interactivo va más allá de los conceptos básicos para explorar redes neuronales, teoría del aprendizaje y máquinas de vectores, entre otras cosas. Se enseña a través del “aprendizaje supervisado”, lo que significa que las respuestas correctas se suelen dar al alumno durante la clase.

Nivel : Intermedio | Duración : N / A | Fecha de inicio : TBA

5. Aprendizaje práctico de máquinas: parte de la especialización de John Hopkins en Data Science, este curso se enfoca en aprender los componentes y aplicaciones de las funciones de predicción.

Nivel : Intermedio | Duración : 4 semanas | Fecha de inicio : 07 de julio de 2014

6. Introducción a la optimización convexa: este curso de alto nivel ayudará a los estudiantes a reconocer y abordar los problemas de optimización convexos. El curso también revisará aplicaciones en áreas como finanzas, geometría computacional, ingeniería mecánica y más.

Nivel : Intermedio | Duración : a ritmo propio | Fecha de inicio : siempre en

Aprendizaje automático avanzado:

7. Aprendizaje automático (MIT): este curso de posgrado del MIT aborda el aprendizaje automático a través de la lente de la inferencia estadística.

Nivel : Avanzado | Duración : a ritmo propio | Fecha de inicio : siempre en

8. Predicción: aprendizaje automático y estadísticas: otro curso de posgrado del MIT, pero este explora el aprendizaje automático a través de modelos predictivos y “el estudio de la generalización” a partir de datos.

Nivel : Avanzado | Duración : a ritmo propio | Fecha de inicio : siempre en

9. Temas en estadística: Teoría del aprendizaje estadístico: Este curso proporciona un análisis en profundidad de las teorías que subyacen al aprendizaje estadístico, y abarca la teoría del proceso empírico, la teoría de Vapnik-Chervonenkis y más.

Nivel : Avanzado | Duración : a ritmo propio | Fecha de inicio : siempre en

Introducción a las redes neuronales:

10. Redes neuronales para aprendizaje automático: este curso presenta a los usuarios los algoritmos que están “inspirados en la forma en que funciona el cerebro humano”. Estos algoritmos se utilizan para construir máquinas con elementos como el reconocimiento de voz, la recuperación de imágenes y recomendaciones personalizadas para los usuarios.

Nivel : Intermedio | Duración : 8 semanas | Fecha de inicio : TBD

11. Introducción a las redes neuronales (primavera de 2005): este curso profundiza en el tema de la computación y el aprendizaje neuronal y abarca los modelos de percepción, control motor, memoria y más.

Nivel : Avanzado | Duración : a ritmo propio | Fecha de inicio : siempre en
Introducción a la Programación Genética:

12. Algoritmos bioinformáticos (Parte I): en este curso de la Universidad de California en San Diego, los estudiantes tratarán con datos genéticos reales para aprender más sobre los métodos computacionales utilizados en la biología moderna y la secuenciación del genoma.

Nivel : Intermedio | Duración : 10 semanas | Fecha de inicio : 15 de septiembre de 2015

13. Algoritmos de bioinformática (Parte II): Si te gustó el primero, continúa tus estudios en la segunda mitad del curso de UCSD sobre biología computacional moderna.

Nivel : Intermedio | Duración : 10 semanas | Fecha de inicio : 15 de enero de 2015

Recursos adicionales:

¿Interesado en aprender más sobre el aprendizaje automático? Lea lo que Andrew Ng está haciendo en Baidu, o eche un vistazo a Kaggle, la compañía que quiere hacer una competencia de ciencia de datos una cosa.

Muchas respuestas aquí están hablando de los cursos en línea de Coursera, probablemente diría que es genial hacer cursos en línea, pero no aprendí el aprendizaje automático (ML) de esa manera, aprendí practicando , practicando cosas durante años continuamente, incluso hasta el día de hoy sigo codificando algunos algoritmos ML y aumentando lentamente mi propia biblioteca para ML y visión artificial.

Leí muchas revistas, es decir, el reciente artículo interesante de Google DeepMind WaveNet y durante los últimos 6 o más años, he leído muchas revistas que cubren muchos algoritmos en ML de clustering de k-means y clustering jerárquico a través de la máquina de vectores de soporte. a aprendizaje profundo algoritmos Normalmente leo un solo diario 8 o más veces antes de entender las cosas subyacentes. También complemente las revistas viendo videos de presentación en YouTube como

o haciendo referencia a Wikipedia u otras fuentes, como las respuestas en Quora.

Soy principalmente auto-conducido, por lo tanto puedo establecer metas y perseguirlas, incluso sin un mentor, hago las cosas. Por ejemplo, en algún momento comprendí poco el algoritmo subyacente de propagación hacia atrás, pero cuando me propuse entenderlo, pude hacerlo simplemente mediante el uso de un artículo de Wikipedia sobre propagación hacia atrás y, en un solo día, pude codificar mi propia propuesta. Algoritmo para optimizar mis propias redes neuronales en mi biblioteca. Reciclo mucho conocimiento para evitar perder el tiempo y aprendo por el primer director.

Mis autoestudios son provocados por la curiosidad , primero me volvería curioso cuando me encuentro con una tecnología particular, luego pensaría en las posibilidades mediante una lluvia de ideas y luego identificaría las cosas que necesito entender para comprender plenamente la tecnología en cuestión. Luego me tomaría unos días o semanas, dependiendo de la complejidad del problema en cuestión, investigando la tecnología y para poder codificar las cosas, normalmente uso mi propia biblioteca para acelerar la codificación de los algoritmos que he estado construyendo. desde hace algunos años.

Por lo tanto, la metodología que utilizo es un enfoque de ingeniería para resolver problemas, las respuestas aquí sugieren un enfoque más científico que es bueno para la mayoría de las personas, supongo, por mi parte, la metodología de ingeniería me ayuda a aprender cosas más prácticas porque aprendo ML y visión por computadora. Por razones prácticas porque estoy construyendo un sistema operativo de robot. No aprendí ML o visión por computador para obtener un trabajo, sino solo para construir sistemas complejos como estoy trabajando en un sistema de visión muy avanzado llamado IRIS (sistema integrado de reconocimiento e inferencia) para procesar estímulos visuales utilizando algoritmos de aprendizaje nuevos. Hasta ahora, el sistema IRIS aprende con muy pocos ejemplos de entrenamiento y está diseñado para lograr un aprendizaje de una sola vez a través de una forma compleja de aprendizaje por transferencia que diseñé, pero todavía estoy haciendo los últimos retoques y varios experimentos.

Por su parte, ya que apenas está comenzando, necesita saber algunas matemáticas , como el álgebra lineal , la optimización numérica , el cálculo diferencial y el análisis estadístico . Personalmente, conozco esas cosas porque soy un ingeniero electrónico de profesión, por lo que si estás empezando desde cero, asegúrate de conocer tus matemáticas y aprender codificación , como en Python , Java y C / C ++ . Luego, comience a leer diario tras diario y practique mucho codificando cosas desde cero, le llevará algo de tiempo acostumbrarse a esta rutina, pero lo convertirá en uno de los mejores en el campo.

Está bien, también puede tomar cursos en línea como lo sugieren la mayoría de las respuestas aquí, como Coursera u otras que dependen de usted, pero necesita ser apasionado y curioso para aprender cosas tan complejas por su cuenta. También debes ser abierto y aprender a medida que avanzas.

Este es un ejemplo de las muchas revistas que he leído: NOTA: Leí en función de la tarea en la que estoy trabajando actualmente, por lo que todas estas revistas le mostrarán una instantánea de la complejidad de las cosas en las que estoy trabajando actualmente.

  1. Recíproco agrupamiento vecino más cercano
  2. Cara profunda
  3. Optimización mínima secuencial para SVMs
  4. R-CNN
  5. TAMIZAR A
  6. Visión por Computador: Algoritmos y Aplicaciones ver el borrador del pdf aquí

Espero que esto ayude.

Si eres un principiante total, en resumen, tu camino debería verse así:

  • Aprende SQL, y Python.
  • Luego aprende Aprendizaje automático de un par de cursos básicos.
  • Aprender teoría de la probabilidad, y algunas matemáticas computacionales.
  • El mundo de las estadísticas es vasto, pero muy interesante:
    El mundo de las estadisticas
  • Luego, sumérjase en Your Home for Data Science y vea en qué están trabajando otros.
  • Luego pasa tu tiempo en el sitio web de Scikit learn:
  • Luego practica por tu cuenta, y crece poco a poco.
  • Si necesita una lista curada para seguir, puede comenzar aquí: https://github.com/bulutyazilim/
  • Aquí hay una visualización genial de cómo se ve un científico de datos moderno:

  • Trabajo con personas que escriben programas C / C ++ que generan GB de datos, personas que administran TB de datos distribuidos en bases de datos gigantes, personas que son programadores de primer nivel en SQL, Python, R, y personas que han configurado una base de datos para toda la organización. con Hadoop, Sap, Business Intelligence, etc.

    Mi inspiración para cualquiera y para todos sería seguir:

    1. Conozca todos los aspectos básicos de Coursera, pero si realmente tengo que comparar lo que obtendría de Coursera en comparación con la inmensidad de la ciencia de datos, digamos que ~ Coursera es tan bueno como comer un burrito en Chipotle Mexican Grill. Ciertamente puedes saciarte, y tienes algunas cosas para comer allí.
    2. El camino hacia el valor agregado de la ciencia de datos es bastante profundo, y lo considero equivalente a un buffet de cinco estrellas que ofrece 20 cocinas y unas 500 recetas diferentes.
    3. Coursera es sin duda un buen punto de partida, y uno debería revisar estos cursos, pero personalmente nunca le pagué dinero a Coursera, y con el tiempo podría aprender varias cosas poco a poco.
    4. Kaggle es un recurso realmente bueno para que los ingenieros en ciernes observen las ideas de otras personas y las desarrollen.

    Mi propio aprendizaje vino de construir cosas en realidad. Comencé con SQL , luego aprendí Python, luego aprendí R, luego aprendí muchas bibliotecas en Python y R. Luego aprendí html, programación de GUI decente utilizando guiones VB, programación de C #. Entonces aprendí Scikit aprender. Finalmente, hablé con varios estadísticos en mi lugar de trabajo cuyo trabajo diario es sacar conclusiones de los datos, y en el proceso aprendí las secuencias de comandos JMP / JSL. Aprendí muchas estadísticas en el proceso.

    Aquí hay una secuencia general de cómo progresé yo mismo.

    Lo primero que quiero inspirar a todos es aprender la “ciencia”. La ciencia de datos es 90% ciencia y 10% gestiona datos. Sin conocer la ciencia, y sin saber qué quiere lograr y por qué quiere lograrlo, no podrá utilizar lo que aprenda en Coursera de ninguna manera. Casi puedo garantizarte eso.

    He visto a mis amigos pasar por algunos de esos cursos, pero al final del día, no construyen nada, no obtienen conclusiones correctas y realmente no “usan” nada de lo que aprenden. Más que eso, ni siquiera usan realmente las habilidades que adquieren.

    La forma en que todo esto me sucedió es la siguiente:

    1. Me sumergí profundamente en los datos, entendí su estructura, entendí sus tipos. Comprendí por qué incluso recopilamos todos esos datos, cómo los recopilamos, cómo los almacenábamos y cómo los procesábamos antes de almacenarlos.
    2. Aprendí cómo los datos podrían manejarse con estos lenguajes de programación de manera efectiva. Aprendí a limpiar los datos, a procesarlos todo lo que quería y a trazarlos con todas las formas posibles. Solo trazar los datos me llevó horas y horas ver cómo varios gráficos podían mostrar los datos de una manera en comparación con otra.
    3. Aprendí de mis amigos que administran las bases de datos cómo hicieron eso y qué pasaron en segundo plano. Aprendí las estructuras de las tablas de la base de datos.
    4. Luego aprendí a trazar algunas parcelas relevantes y calcular el retorno de la inversión para hacer cualquier cosa. Aquí es donde la ciencia de datos comenzó a unirse. No hay trama que no pueda trazar. Básicamente, en cada trama que vi en Internet, aprendí a trazarla. Esto es extremadamente importante, y esto es lo que lo llevará a contar historias.
    5. Luego aprendí a automatizar cosas, y esto es realmente increíble, porque podrías hacer algunas cosas automáticamente, lo que te ahorraría mucho tiempo.
    6. La automatización fue realmente fácil con Python, R, VBscript, C # programación.
      Puedo decirles que, en términos generales, no hay nada que no esté automatizado para mí. Tengo un programa de computadora para cualquier cosa y todo, y la mayoría de mis cosas se hacen con un clic en el botón ~ O, digamos, unos pocos clics en los botones.
    7. Entonces aprendí la redacción de informes. Lo que aprendí es que tuve que enviar muchos datos y diagramas a otros por correo. Y créeme, la gente no tiene tiempo ni interés. Pero si crea gráficos coloridos, escriba un informe coherente que demuestre lo que quiere decir, y reúna información enorme y poderosa en unos gráficos realmente coloridos, puede hacer un caso.
    8. Entonces aprendí a contar historias. Lo que esto significa simplemente es que debe poder decirle al vicepresidente de la empresa cuáles son los problemas más importantes de su división. Y de la manera en que debería poder derivar estas conclusiones, se pueden crear gráficos atractivos que cuenten una historia. Sin esto, no podrías convencer a nadie. La gente no está interesada en los números. Todo lo que recuerdan son nombres, lugares, cosas, inspiración y por qué alguien quiere hacer algo. Un verdadero científico de datos también es un verdadero presentador de los datos.
    9. Luego leo todos los blogs posibles en Internet para ver cómo otros hacían estas cosas. Cómo la gente escribía sus programas, cómo creaban varias tramas, cómo automatizaban las cosas, etc. También obtuve muchas ideas de cómo alguien usó sus habilidades para hacer un proyecto increíble. Esta es una manera realmente agradable de ver cómo se imaginan los demás. Luego puedes tomar prestada su imaginación y construir cosas, y eventualmente, a medida que las cosas sean más fáciles para ti, comenzarás a imaginarte las cosas por ti mismo.

    Eche un vistazo a la cantidad de blogs disponibles desde donde puede aprender muchas cosas.

    La guía definitiva para los blogs de ciencia de datos.

    He pasado por muchos de estos blogs y los he leído en profundidad. Esto llevó semanas de esfuerzos y múltiples sábados y domingos experimentando con datos y lenguajes de programación.

    Mis sitios web más utilizados:

    • Desbordamiento de pila
    • Tutoriales de programación en Python
    • La red completa de archivos R
    • Seaborn: visualización de datos estadísticos
    • Su hogar para la ciencia de datos
    • 16+ Libros de Ciencia de Datos Gratis
    • ipython / ipython
    • vinta / impresionante-python
    • scikit-learn: aprendizaje automático en Python
    • Gracia: galeria
    • Echa un vistazo a las increíbles parcelas aquí.
  • Programación práctica para principiantes totales
  • Aprende Python por el camino difícil.
  • Youtube. ¡Sí! Simplemente escriba su pregunta aquí, y debería obtener una respuesta.
  • Mundo del sapo
  • Tutorial SQL
  • CodeAcademy: Python
  • http://mahout.apache.org/
  • http://www.netlib.org/lapack/
  • http://www.netlib.org/eispack/
  • http://www.netlib.org/scalapack/
  • RegExr: Aprender, construir y probar RegEx
  • Regex para JavaScript, Python, PHP y PCRE
  • StatsModels: Estadísticas en Python: ¡Esta es una asesina! Puedes hacer mucho con esto.
  • Instalación de NLTK – documentación de NLTK 3.0
  • La mayoría de los libros leídos:
  • Aprendiendo Python
  • El arte de la programación de R ArtArt of R http://shop.oreilly.com/product/
  • Realmente no creo que sea una persona de libros, pero me gusta leerlos de vez en cuando cuando estoy en el modo “No hay manera, pero sí de leer el manual”. He leído muchos libros de estadísticas, y los actualizaré aquí.
  • Ahora le daría un enfoque más integral, de modo que tenga mucha inspiración a la que aferrarse.


    ¿Cómo se ve el trabajo de un ingeniero típico y cómo puede ayudar la ciencia de datos en esas líneas?

    1. Toma de decisiones: En mi trabajo, tengo varias decisiones que tomar y varias acciones que tomar en un día. Además, tengo varias partes interesadas para actualizar, varias personas para orientar, varios conjuntos de datos para observar y varias herramientas y máquinas para manejar. Algunas de estas máquinas son máquinas físicas que hacen cosas, y otras son simplemente programas informáticos y plataformas de software que crean configuraciones para estas máquinas.
    2. Datos: la mayoría de los datos que tenemos se encuentran en varios servidores que están distribuidos en varias unidades, o están en alguna unidad compartida, o en alguna unidad de disco duro disponible en un servidor.
    3. Bases de datos: estos servidores de bases de datos se pueden usar para obtener datos con SQL, o para extraer directamente los datos, o capturándolos de alguna manera (digamos copiando por FTP), a veces incluso copiando manualmente y pegando en Excel, CSV o bloc de notas. Por lo general, tenemos varios métodos para hacer la extracción directa de datos de los servidores. Existen varias plataformas SQL, como TOAD, Business Intelligence, e incluso las plataformas construidas en casa.
    1. SQL puede aprenderse fácilmente usando estas plataformas, y uno puede crear muchos scripts SQL.
    2. Incluso puede crear scripts que pueden escribir scripts.
    3. Le inspiraría a aprender SQL, ya que es uno de los lenguajes más utilizados para obtener datos.
  • Datos nuevamente: los datos en estas bases de datos pueden ser altamente estructurados, o algo desestructurados, como comentarios humanos, etc.
    1. Estos datos a menudo pueden tener un número fijo de variables o un número variable de variables.
    2. Algunas veces, los datos también pueden faltar y otras pueden ingresarse incorrectamente en las bases de datos.
    1. Cada vez que se encuentra algo así, se envía una respuesta inmediata a los administradores de bases de datos, y estos corrigen los errores si hay alguno en el sistema.
    2. Por lo general, antes de configurar todo un proyecto gigante de configuración de una base de datos, varias personas se unen y discuten cómo deben ser los datos, cómo deben distribuirse en varias tablas y cómo deben conectarse las tablas.
    3. Estas personas son verdaderos científicos de la información, ya que saben lo que el usuario final querrá a diario una y otra vez.
    4. Siempre intentan estructurar los datos tanto como sea posible, porque hace que sea muy fácil de manejar.
  • Secuencias de comandos y programación: al usar múltiples secuencias de comandos que están programadas para ejecutarse en horarios específicos, o que a veces se configura para ejecutarse sobre una base ad hoc, obtengo y vuelco datos en varias carpetas en una computadora dedicada. Tengo un disco duro bastante grande para almacenar una gran cantidad de datos.
    1. Por lo general, agrego datos nuevos a los conjuntos de datos existentes y elimino datos antiguos de manera oportuna.
    2. A veces tengo programas que se ejecutan con comandos de suspensión, que en los horarios programados simplemente revisan algo rápidamente y vuelven a dormir.
  • Más secuencias de comandos: además, hay varias secuencias de comandos que están configuradas para procesar estos conjuntos de datos y crear un montón de decisiones a partir de ellos.
    1. La limpieza de datos, la creación de tablas dinámicas valiosas y los diagramas es uno de los mayores retrasos de tiempo para cualquiera que intente obtener un valor de esto.
    2. Para lograr algo como esto, primero tendría que entender sus datos dentro y fuera, y debería ser muy capaz de hacer todo tipo de cálculos manuales, generar hojas de Excel y visualizar datos.
    3. Ciencia: Lo que me gustaría inspirarte es que antes de hacer ciencia de datos, hacer ciencia, aprender la física detrás de tus datos y comprenderlos dentro y fuera. Diga ~ Si trabaja en una industria de camisetas, debe conocer todos los aspectos de un cambio de T dentro y fuera, debe tener acceso a toda la información posible sobre camisetas, y debe saber muy bien lo que quieren los clientes y Me gusta, sin siquiera mirar ninguno de los datos.
    4. Sin entender la ciencia, la ciencia de datos carece de valor, y tratar de lograr algo con ella puede ser un esfuerzo infructuoso.
    5. Advertencias: He visto mucha gente que ni siquiera sabe qué conspirar contra qué.
    1. Lo peor que he visto es que las personas trazan unas variables aleatorias unas contra otras y derivan conclusiones de ellas.
    2. Es cierto que las correlaciones existen en muchas cosas, pero siempre debes saber si hay alguna causa.
    3. Ejemplo: existe una correlación significativa entre la cantidad de premios Nobel y el consumo de chocolate per cápita de varios países; ¿Pero es una causalidad? ¡Tal vez no!
  • Volver a los programas: por lo general, existe una secuencia en la que se ejecutan todos los scripts, y crea todo tipo de tablas y gráficos para observar.
    1. Algunos scripts son secuenciales, mientras que algunos programas son simples ejecutables. Los ejecutables generalmente se escriben para la velocidad, y C, C ++, C #, etc. se pueden usar para ellos.
    2. Los scripts se pueden escribir en Python, VB, etc.
  • Toma de decisiones: cuando se cumplen ciertas condiciones {If / Then}, más programas de computadora se activan automáticamente y ejecutan más análisis de datos.
  • Ciencia de datos: Esto generalmente se despliega en muchas estadísticas, clasificación, regresión.
    1. Aquí es donde entra en juego el aprendizaje automático. Uno puede usar lenguajes de programación como Python o R para hacer esto.
    2. Basados ​​en los resultados de los algoritmos de aprendizaje automático, se ejecutan más programas informáticos y se generan más gráficos o se activan más programas.
  • Trazado: En última instancia, muchos diagramas se almacenan de manera coherente para que los humanos tomen decisiones.
  • Informes autosostenidos: los informes son programas autoactivadores y autosostenidos que me dicen qué hacer.
  • La sensación de ser ironman: normalmente miro los resultados de todos los informes en 10 minutos y tomo decisiones sobre qué hacer durante muchas horas. De vez en cuando miro los informes de nuevo para redefinir las decisiones o cambiarlas sobre la marcha si esto tiene que hacerse.
  • ¿Cuáles son las ventajas de hacer todo esto?

    1. En primer lugar, cuando una computadora hace algo, lo haría a una velocidad mucho más rápida que un humano.
    2. Una computadora lo hará sin descanso, y sin cesar.
    3. Los programas de computadora necesitan una cantidad suficiente de capacitación y múltiples niveles de prueba para diferentes entradas, pero una vez hecho todo esto, seguirá haciendo ese trabajo para siempre hasta que el espacio muestral cambie, o algo cambie drásticamente la entrada en sí.
    4. Al programarlo al nivel en el que toda la salida se establece en un panel, es muy fácil ver cuál debe ser el orden de los proyectos.

    ¿Cómo creas ahora valor de algo como esto?

    1. ¡Uno siempre debe estar detrás de la ciencia! y al conocer sus datos lo mejor posible, podrá ordenar la implementación de sus proyectos.
    2. La decisión que tomarías y las acciones que tomarías serían más difíciles, mejores, más rápidas, más fuertes.
    3. Podrías derivar conclusiones y generar algunos proyectos lean sigma.
    4. Usted podría actualizar a las partes interesadas con suficiente antelación y estar en la cima de sus proyectos.
    5. Sería capaz de concentrarse solo en el aspecto científico en lugar de simplemente intentar crear manualmente diagramas.
    6. Sería capaz de encontrar tendencias en sus datos con mayor facilidad y decir las cosas de una manera u otra si los datos le dicen que tome decisiones a favor de una opción sobre otra.
    7. Por último, pero no menos importante, puede reducir significativamente los esfuerzos humanos y automatizar todas las cosas para usted.
    1. Incluso tengo scripts que pulsan botones o rellenan formularios por mí.
    2. Tengo varios programas de análisis de imágenes que analizan imágenes y toman decisiones sobre la marcha sin que los humanos las miren.

    Espero que esta respuesta sea elaborada y te brinde una idea de en qué puedes trabajar.


    ¡Mantente bendecido y permanece inspirado!

    Al considerarme un noobie total sin antecedentes matemáticos o estadísticos, comencé hace unos dos años con el aprendizaje automático. Fue difícil al principio, pero teniendo en cuenta que ya tienes algo de experiencia en programación, definitivamente tendrás una ventaja.

    Aquí hay algunos consejos que aprendí mientras aprendía aprendizaje automático:

    1. Evaluar, actualizar y aprender matemáticas y estadísticas. Probablemente sea difícil, porque realmente no tenía ni idea de qué buscar. Hoy en día, le recomiendo que revise esta lista (más de 40 Python Statistics For Data Science Resources) y aprenda todo lo que pueda aplicando el material con Python. Para las matemáticas, consideraría tomar álgebra lineal en la Academia Khan.
    2. No tengas miedo de invertir en “teoría” . Lo que escucho mucho es que las personas no hacen el esfuerzo de revisar más material seco / teórico. Pero creo que esto es extremadamente valioso a largo plazo. Revisé el libro de texto Aprendizaje automático y, al mismo tiempo, vi los videos de Aprendizaje automático – Universidad de Stanford | Coursera. Creo que estos fueron muy instructivos y dieron una buena base sólida para empezar.
    3. Ponte manos a la obra . Estos materiales que he mencionado son excelentes para construir las bases, pero también debería poder aplicar los conceptos que ha aprendido. Podría considerar tomar Curso de Introducción a Aprendizaje Automático | Udacity, pero también eche un vistazo a Supervised Learning con scikit-learn y Nonupervised Learning en Python.
    4. Practica Pero, aún más importante que hacer prácticas y revisar el material con Python, es practicar. Este paso fue probablemente el más difícil para mí. No encontré ningún material que me gustara y que estuviera en mi nivel, así que tuve que hacer la mayoría de las cosas por mí mismo. Recientemente, escribí un tutorial de Python Machine Learning para principiantes: Python Machine Learning: Scikit-Learn Tutorial. También recomendaría Kaggle Python Tutorial on Machine Learning.
    5. No te asustes de los proyectos . Después de estos, considere comenzar con algunos proyectos a través de Your Home for Data Science. Asegúrese de poner su código en Github para que otros puedan ver su progreso y discutir.
    6. No te detengas Siempre salen nuevos materiales y si estás siguiendo algunos podcasts de aprendizaje automático, siempre estarás al día con las últimas noticias. También consideraría meterme en R para hacer aprendizaje automático. Los siguientes cursos pueden ayudarlo a hacer esto: Introducción gratuita a la programación en línea de R, OpenIntro, análisis de datos e inferencia estadística, estadísticas básicas o estadísticas con R Track | Campo de datos para los conceptos básicos y estadísticas con R e Introducción al aprendizaje automático: curso en línea, R: aprendizaje no supervisado y aprendizaje automático en R para principiantes en el aprendizaje automático.
    7. Hacer uso de todo el material que hay por ahí . Además de los podcasts, hay una gran documentación que definitivamente te ayudará a salir y conquistar el miedo a los datos: scikit-learn: aprendizaje automático en Python, documentación de Keras y hojas de trucos como Elegir el estimador correcto, Scikit-Learn Hoja de referencia: Python Machine Learning, Keras Hoja de referencia: Neural Networks en Python, u otros materiales como Una introducción visual al aprendizaje automático, Agrupación con Scikit con GIF.

    ¡Buena suerte!

    PD. También revise mi respuesta Respuesta de Karlijn Willems a ¿Cómo aprendo el aprendizaje automático? ¡Para una respuesta con aún más recursos!

    Es útil recorrer los principales algoritmos en el campo para tener una idea de qué métodos están disponibles.

    Hay tantos algoritmos disponibles que puede ser abrumador cuando se lanzan nombres de algoritmos y se espera que solo sepan qué son y dónde encajan. Un recorrido por los algoritmos de aprendizaje automático

    Comenzar con el aprendizaje automático usando Python

    ¿Te has preguntado qué se necesita para comenzar con el aprendizaje automático? En este artículo, repasaré los pasos para comenzar con el aprendizaje automático utilizando Python. Python es un popular lenguaje de programación de código abierto y es uno de los lenguajes más utilizados en inteligencia artificial y otros campos científicos relacionados. El aprendizaje automático (ML), por otro lado, es el campo de la inteligencia artificial que utiliza algoritmos para aprender de los datos y hacer predicciones. El aprendizaje automático ayuda a predecir el mundo que nos rodea.

    Mejora tus habilidades de Python

    Debido a que Python es extremadamente popular, tanto en las comunidades industriales como en las científicas, no tendrá dificultad en encontrar recursos de aprendizaje de Python. Si eres un principiante, puedes comenzar a aprender Python usando materiales en línea, como cursos, libros y videos. Por ejemplo:

    1. Aprende Python de la manera difícil

    2. Curso de Google Developer Python (videos)

    3. Clase Python de Google

    Instalar anaconda

    El siguiente paso es instalar Anaconda. Con Anaconda, estás preparado para explorar el mundo del aprendizaje automático con Python. El paquete Anaconda contiene las herramientas necesarias que necesitará para explorar el aprendizaje automático.

    Habilidades básicas de aprendizaje automático

    Con las habilidades básicas de programación de Python en su haber, está listo para adquirir habilidades básicas de aprendizaje automático. Un enfoque práctico para aprender es más que suficiente para comenzar; sin embargo, si está interesado en profundizar en el tema, prepárese para invertir cientos de horas de aprendizaje.

    Una forma eficiente de adquirir habilidades es con cursos en línea. El curso Coursera Machine Learning de Andrew Ng es una excelente opción. Otra capacitación en línea que vale la pena revisar incluye:

    1. Python Machine Learning: Tutorial de Scikit-Learn

    2. Tutorial práctico de aprendizaje a máquina con Python

    (También puede ver secuencias de aprendizaje automático en LiveEdu.tv para tener una idea del tema.

    Espero que sea útil. Comience con el aprendizaje automático utilizando Python.

    Preguntas impresionantes! El aprendizaje automático es un gran campo para entrar; No solo es muy solicitado por los empleadores, sino que también lo ayuda a comprender el mundo de una manera nueva.

    La mayoría de los algoritmos de aprendizaje automático se basan en gran medida en las matemáticas, y son posibles mediante la programación. Aquí están las cosas básicas que sugeriría que aprendan a medida que aborda el aprendizaje automático:

    1. Álgebra de matrices: el álgebra de matrices es realmente importante cuando empiezas a trabajar con grandes cantidades de datos; Aquí hay una buena clase de álgebra matricial en línea de MIT: Álgebra lineal
    2. Estadísticas : se ha argumentado que el aprendizaje automático es en realidad solo estadísticas asistidas por computadora. No estoy seguro de estar totalmente de acuerdo con eso, pero tener una base en estadísticas te ayudará a comprender muchos de los algoritmos de aprendizaje más simples (es decir, la regresión). No he tomado este curso específicamente, pero he escuchado cosas buenas sobre las estadísticas que ofrece Udacity: Curso básico de estadística en línea
    3. Cálculo : lo sé, ahora suena como que estoy enumerando cada clase de matemáticas que conozco, como dije, el aprendizaje automático es muy pesado. No necesita mucho cálculo, pero será muy útil tener una idea básica de lo que es un derivado. Esta página es bastante simple, pero si puede atravesarla y caer como si entendiera lo que está pasando, está en buena forma (al menos para comenzar): La definición de la derivada
    4. Programación : Por supuesto, tendrá que programar para implementar realmente algoritmos de aprendizaje, y es bueno conocer un lenguaje de programación de propósito general. Dijiste que tienes experiencia con Java y Python y son geniales. Si no lo hiciera, recomendaría recoger Python a través de CodeCademy: Python
    5. MatLab : es importante saber cómo programar en general, pero también es muy útil estar familiarizado con MatLab; puedes estudiar de forma efectiva el aprendizaje automático en otro idioma (es decir, Python) pero muchos de los recursos para principiantes utilizan MatLab. Si estás en la universidad, probablemente puedas obtener MatLab gratis a través de tu institución. Si no, sugeriría probar Octave; Es bastante similar a MatLab, y es gratis.
    6. Algoritmos básicos de aprendizaje : Finalmente a las cosas divertidas. Para familiarizarse con los conceptos básicos, le sugiero que consulte el curso Coursera de Andrew Ng sobre aprendizaje automático. Está bien hecho, y muy accesible. En él se basa en todas las cosas en esta lista; aunque presenta brevemente cada uno de estos temas, será mucho más fácil si tiene una base en todos ellos antes de abordar el aprendizaje automático: Aprendizaje automático – Universidad de Stanford | Coursera

    Si puede abrirse camino a través de esta lista, al final debe al menos estar familiarizado con el campo del aprendizaje automático y estar preparado para descubrir qué quiere aprender a continuación. ¡Buena suerte!

    Fuente: 4 pasos para comenzar en el aprendizaje automático: la estrategia de arriba hacia abajo para que los principiantes comiencen y practiquen – Dominio del aprendizaje automático

    1. Aprender el proceso de alto nivel de aprendizaje automático aplicado.
    2. Aprenda a usar una herramienta lo suficiente como para poder resolver problemas.
    3. Practica en conjuntos de datos, mucho.
    4. Transición a los detalles y teoría de algoritmos de aprendizaje automático.

    Proceso de aprendizaje de máquina aplicada

    He escrito mucho sobre el proceso de aprendizaje automático aplicado. Abogo por un proceso de 6 pasos para la clasificación y problemas de tipo de regresión, los tipos de problemas comunes en el corazón de la mayoría de los problemas de aprendizaje automático. El proceso es el siguiente:

    1. Definición del problema: Entienda y describa claramente el problema que se está resolviendo.
    2. Analizar datos: comprender la información disponible que se utilizará para desarrollar un modelo.
    3. Preparar datos: descubrir y exponer la estructura en el conjunto de datos.
    4. Evalúe algoritmos: desarrolle un arnés de prueba robusto y una precisión de línea de base para mejorar y controlar los algoritmos.
    5. Mejore los resultados: aproveche los resultados para desarrollar modelos más precisos.
    6. Resultados actuales: Describa el problema y la solución para que pueda ser comprendido por terceros.

    Visión general del proceso de aprendizaje de máquina aplicada

    Al seguir este proceso estructurado en cada problema con el que trabaja, aplica un nivel mínimo de rigor y aumenta dramáticamente la probabilidad de obtener resultados buenos (o, probablemente, excelentes).

    Para la visita de aprendizaje automático – https://hackr.io/tutorials/learn

    Aprenda el aprendizaje automático aquí: Aprenda Aprendizaje automático – Los mejores tutoriales de aprendizaje automático | Hackr.io

    ¿Cómo funcionan los algoritmos de aprendizaje automático?

    Existe un principio común que subyace a todos los algoritmos de aprendizaje automático supervisado para el modelado predictivo.

    En esta publicación, descubrirá cómo funcionan realmente los algoritmos de aprendizaje automático al comprender el principio común que subyace a todos los algoritmos.

    Cómo funcionan los algoritmos de aprendizaje automático
    Foto por GotCredit, algunos derechos reservados.

    Empecemos.

    Aprendiendo una función

    Los algoritmos de aprendizaje automático se describen como el aprendizaje de una función de destino (f) que asigna mejor las variables de entrada (X) a una variable de salida (Y).

    Y = f (X)

    Esta es una tarea de aprendizaje general en la que nos gustaría hacer predicciones en el futuro (Y) dados los nuevos ejemplos de variables de entrada (X).

    No sabemos cómo es la función (f) o su forma. Si lo hiciéramos, lo utilizaríamos directamente y no tendríamos que aprenderlo a partir de datos utilizando algoritmos de aprendizaje automático.

    Es más difícil de lo que piensas. También hay un error (e) que es independiente de los datos de entrada (X).

    Y = f (X) + e

    Este error puede ser un error, como no tener suficientes atributos para caracterizar suficientemente la mejor asignación de X a Y. Este error se denomina error irreducible porque no importa cuán buenos seamos al estimar la función objetivo (f), no podemos reducir este error.

    Es decir, que el problema de aprender una función a partir de datos es un problema difícil y esta es la razón por la cual existe el campo de aprendizaje automático y algoritmos de aprendizaje automático.

    También obtenga acceso exclusivo a los algoritmos de aprendizaje automático del mini-curso de correo electrónico.

    Aprendiendo una función para hacer predicciones

    El tipo más común de aprendizaje automático es aprender el mapeo Y = f (X) para hacer predicciones de Y para la nueva X.

    Esto se denomina modelado predictivo o análisis predictivo y nuestro objetivo es hacer las predicciones más precisas posibles.

    Como tal, no estamos realmente interesados ​​en la forma y la forma de la función (f) que estamos aprendiendo, solo que hace predicciones precisas.

    Podríamos aprender el mapeo de Y = f (X) para aprender más sobre la relación en los datos y esto se llama inferencia estadística. Si este fuera el objetivo, usaríamos métodos más sencillos y entenderemos el modelo y la forma aprendidos de (f) que se encuentran arriba para hacer predicciones precisas.

    Cuando aprendemos una función (f), estimamos su forma a partir de los datos que tenemos disponibles. Como tal, esta estimación tendrá error. No será una estimación perfecta para el mejor mapeo hipotético subyacente de Y dada X.

    Se gasta mucho tiempo en el aprendizaje automático aplicado intentando mejorar la estimación de la función subyacente y, en términos generales, mejorar el rendimiento de las predicciones realizadas por el modelo.

    Técnicas para aprender una función

    Los algoritmos de aprendizaje automático son técnicas para estimar la función objetivo (f) para predecir la variable de salida (Y) dadas las variables de entrada (X).

    Las diferentes representaciones hacen diferentes suposiciones acerca de la forma de la función que se está aprendiendo, por ejemplo, si es lineal o no lineal.

    Los diferentes algoritmos de aprendizaje automático hacen diferentes suposiciones acerca de la forma y estructura de la función y la mejor manera de optimizar una representación para aproximarla.

    Por eso es tan importante probar un conjunto de algoritmos diferentes en un problema de aprendizaje automático, porque no podemos saber de antemano qué enfoque será mejor para estimar la estructura de la función subyacente que intentamos aproximar.

    Resumen

    Aprendió que los algoritmos de aprendizaje automático funcionan para estimar la función de mapeo (f) de las variables de salida (Y) dadas las variables de entrada (X), o Y = f (X).

    También aprendió que diferentes algoritmos de aprendizaje automático hacen diferentes suposiciones sobre la forma de la función subyacente. Y cuando no sabemos mucho sobre la forma de la función de destino, debemos probar un conjunto de algoritmos diferentes para ver qué funciona mejor.

    Hay grandes respuestas que apuntan a fuentes educativas populares sobre Aprendizaje Automático. Me gustaría complementar agregando una hoja de ruta completa bellamente ilustrada.

    Indica claramente el conocimiento fundamental que se necesita obtener antes de comenzar con las estadísticas básicas. A partir de ahí, puedes comenzar a aprender algoritmos primarios de aprendizaje automático, como regresión lineal, clasificación, agrupación en clústeres, etc. Una vez que los hayas dominado, puedes estudiar cosas más avanzadas, como la minería de textos y el procesamiento del lenguaje natural.

    Tan pronto como se sienta cómodo con todas las cosas del “kit de inicio” que he mencionado anteriormente, debe avanzar en sus conocimientos trabajando en el procesamiento de Big Data, a saber, MapReduce, Hadoop, Spark y Flint.

    En paralelo, también debes aprender las herramientas necesarias. Estos incluyen los lenguajes de programación más utilizados, como R y Python, junto con el software Machine Learning, por ejemplo, Weka, SPSS, etc.

    Más adelante, cuando comience a ingresar datos del mundo real, donde los datos suelen estar sucios y requieren toneladas de preprocesamiento, debe trabajar en sus habilidades para la recopilación de datos, la limpieza de datos y la ingestión de datos.

    Por último, como un toque fino, y para poder presentar con éxito los conocimientos que ha obtenido al aplicar algoritmos de aprendizaje automático a los datos, debe estudiar las bibliotecas y las técnicas de visualización de datos.

    ¡Felicidades! ¡Ahora puedes llamarte un científico de datos! 🙂
    ¡Buena suerte!

    Fuente: http://nirvacana.com/thoughts/be…

    Hola amigos, este es Abhijit. Soy analista de datos de profesión y entusiasta del aprendizaje automático. Me encanta resolver problemas del mundo real con la ayuda de ML Algorithms.

    Y, recientemente, también he comenzado un canal de YouTube, ” ANALYTICS MANTRA “.

    Un destino completo para todos los entusiastas de la ciencia de datos y el aprendizaje automático. Estamos creciendo este canal de día y de noche.

    Solicito a todos los lectores aquí, para ir al enlace, explorar los videos y si te gustan esos videos, SUSCRÍBETE . B’coz nos motiva !!!

    Herramientas básicas: no importa para qué tipo de compañía esté entrevistando, probablemente se esperará que sepan cómo usar las herramientas del oficio. Esto significa un lenguaje de programación estadística, como R o Python, y un lenguaje de consulta de base de datos como SQL.

    Estadísticas básicas: al menos una comprensión básica de las estadísticas es vital como científico de datos. Un entrevistador me dijo una vez que muchas de las personas que entrevistó ni siquiera podían proporcionar la definición correcta de un valor p. Debería estar familiarizado con las pruebas estadísticas, las distribuciones, los estimadores de máxima probabilidad, etc. ¡Piense de nuevo en su clase de estadísticas básicas! Este también será el caso del aprendizaje automático, pero uno de los aspectos más importantes de su conocimiento estadístico será comprender cuándo diferentes técnicas son (o no son) un enfoque válido. Las estadísticas son importantes en todos los tipos de compañías, pero especialmente en aquellas basadas en datos donde el producto no está enfocado en los datos y los interesados ​​del producto dependerán de su ayuda para tomar decisiones y diseñar / evaluar experimentos.

    Aprendizaje automático: si está en una empresa grande con grandes cantidades de datos, o trabaja en una empresa en la que el producto en sí está impulsado especialmente por los datos, es posible que desee familiarizarse con los métodos de aprendizaje automático. Esto puede significar cosas como k vecinos más cercanos, bosques aleatorios, métodos de conjunto, todas las palabras de moda de aprendizaje automático. Es cierto que muchas de estas técnicas se pueden implementar utilizando las bibliotecas R o Python; por lo tanto, no es necesariamente un factor de ruptura si no eres el experto más importante del mundo en cómo funcionan los algoritmos. Más importante es entender las pulsaciones generales y comprender realmente cuándo es apropiado usar diferentes técnicas.

    Cálculo multivariable y álgebra lineal: de hecho, se le puede solicitar que obtenga algunos de los resultados de aprendizaje automático o estadísticas que emplee en otra parte de su entrevista. Incluso si no lo está, su entrevistador puede hacerle algunas preguntas básicas de cálculo multivariable o de álgebra lineal, ya que forman la base de muchas de estas técnicas. Puede que se pregunte por qué un científico de datos tendría que entender esto si hay un montón de implementaciones listas para usar en Sklearn o R. La respuesta es que, en cierto punto, puede valer la pena que lo construya un equipo de ciencia de datos. Sus propias implementaciones en casa. Comprender estos conceptos es muy importante en las empresas donde el producto está definido por los datos y las pequeñas mejoras en el rendimiento predictivo o la optimización del algoritmo pueden llevar a grandes ganancias para la empresa.

    El “científico de datos” se usa a menudo como un título general para describir trabajos que son drásticamente diferentes.

    Munging de datos: muchas veces, los datos que está analizando serán complicados y difíciles de manejar . Debido a esto, es muy importante saber cómo tratar las imperfecciones en los datos. Algunos ejemplos de imperfecciones de datos incluyen valores faltantes, formato de cadena inconsistente (por ejemplo, ‘New York’ versus ‘new york’ versus ‘ny’) y formato de fecha (‘2014-01-01’ vs. ’01 / 01/2014 ‘ , tiempo de Unix vs. marcas de tiempo, etc.). Esto será más importante en las pequeñas empresas en las que usted es un primer contratante de datos, o las empresas impulsadas por los datos en las que el producto no está relacionado con los datos (especialmente porque esta última a menudo ha crecido rápidamente sin prestar mucha atención a la limpieza de los datos), pero esto La habilidad es importante para que todos la tengan.

    Visualización y comunicación de datos : la visualización y comunicación de datos es increíblemente importante, especialmente en las empresas jóvenes que toman decisiones basadas en datos por primera vez o en empresas donde los científicos de datos son vistos como personas que ayudan a otros a tomar decisiones basadas en datos. Cuando se trata de comunicarse, esto significa describir sus hallazgos o la forma en que las técnicas funcionan con las audiencias, tanto técnicas como no técnicas. En cuanto a la visualización, puede ser de gran ayuda estar familiarizado con las herramientas de visualización de datos como ggplot y d3.js. Es importante no solo estar familiarizado con las herramientas necesarias para visualizar datos, sino también con los principios detrás de la codificación visual de datos y la comunicación de información.

    Ingeniería de software: si está realizando una entrevista en una empresa más pequeña y es una de las primeras contrataciones de ciencia de datos, puede ser importante tener una sólida formación en ingeniería de software. Usted será responsable de manejar una gran cantidad de registros de datos y, potencialmente, del desarrollo de productos basados ​​en datos.

    Pensando como un científico de datos: las empresas quieren ver que eres un solucionador de problemas (basado en datos). Es decir, en algún momento durante el proceso de su entrevista, es probable que se le pregunte sobre algún problema de alto nivel, por ejemplo, sobre una prueba que la empresa puede querer realizar o un producto basado en datos que tal vez desee desarrollar. Es importante pensar qué cosas son importantes y cuáles no. ¿Cómo debería usted, como científico de datos, interactuar con los ingenieros y gerentes de producto? ¿Qué métodos debes usar? ¿Cuándo tienen sentido las aproximaciones?

    La ciencia de los datos aún es incipiente y está mal definida como campo. Conseguir un trabajo consiste tanto en encontrar una empresa cuyas necesidades coincidan con sus habilidades como en desarrollarlas. Este escrito se basa en mis propias experiencias de primera mano. Me encantaría saber si ha tenido experiencias similares (o en contraste) durante su propio proceso.

    Mejor tomar cualquier curso de aprendizaje a máquina en línea

    Te sugeriré los mejores cursos de aprendizaje automático en línea.

    1. Machine Learning AZ ™: práctica en Python & R en Data Science

    Este curso es divertido y emocionante, pero al mismo tiempo nos sumergimos profundamente en el Aprendizaje automático. Se estructura de la siguiente manera:

    • Parte 1 – Preprocesamiento de datos
    • Parte 2 – Regresión: Regresión lineal simple, Regresión lineal múltiple, Regresión polinomial, RVS, Regresión del árbol de decisión, Regresión aleatoria de bosques
    • Parte 3 – Clasificación: Regresión logística, K-NN, SVM, SVM del núcleo, Bayes ingenuos, Clasificación del árbol de decisión, Clasificación de bosques aleatorios
    • Parte 4 – Agrupación en clúster: K-medias, agrupación jerárquica
    • Parte 5 – Aprendizaje de reglas de asociación: Apriori, Eclat
    • Parte 6: Aprendizaje por refuerzo: confianza superior, muestreo de Thompson
    • Parte 7 – Procesamiento de lenguaje natural: modelo de bolsa de palabras y algoritmos para PNL
    • Parte 8 – Aprendizaje profundo: redes neuronales artificiales, redes neuronales convolucionales
    • Parte 9 – Reducción de la dimensionalidad: PCA, LDA, PCA de núcleo
    • Parte 10 – Selección de modelo y realce: validación cruzada en k-fold, ajuste de parámetros, búsqueda de cuadrícula, XGBoost

    Además, el curso está lleno de ejercicios prácticos que se basan en ejemplos en vivo. Así que no solo aprenderá la teoría, sino que también obtendrá práctica práctica en la construcción de sus propios modelos.

    2. principiante a avanzado – aprendizaje automático y redes neuronales

    El aprendizaje automático y las redes neuronales son el tema más candente que existe. Automóviles automovilísticos, reconocimiento de imágenes, comercio electrónico, predicción del comportamiento del cliente, predicciones del mercado de valores, lo que sea.

    Google, Facebook, Tesla, Amazon, Alibaba, … todas las grandes compañías están trabajando en este tema.

    El aprendizaje automático y las redes neuronales están en todas partes y determinarán el mundo del mañana. Por eso todos debemos familiarizarnos con este tema. Si lo hacemos, crearemos oportunidades tremendas y sentaremos las bases de un futuro brillante.

    Especialmente como principiante, es difícil entrar en el aprendizaje automático y en las redes neuronales y hay muchas preguntas que hacer. Por eso creé este nuevo curso en profundidad para ayudarlo a comenzar y equiparlo con todos los conocimientos que necesita para pasar de principiante a avanzado . Este curso le proporciona más de 10 horas de contenido altamente valioso . Juntos abordamos la teoría y aplicamos este conocimiento en la práctica porque solo el conocimiento aplicado es el conocimiento real.

    Juntos aplicaremos varios algoritmos de aprendizaje automático y redes neuronales de aprendizaje profundo en la práctica. Todos los demás recursos que necesita seguir se pueden adquirir de forma gratuita y se mostrarán al comienzo de la página.

    Recursos adicionales: Aprenda Python para ML

    #. Python para Data Science y Machine Learning Bootcamp

    Aquí puedes aprender

    • Programación con Python
    • NumPy con Python
    • Uso de marcos de datos de pandas para resolver tareas complejas
    • Usa pandas para manejar archivos de Excel
    • Web raspado con python
    • Conectar Python a SQL
    • Utilice matplotlib y seaborn para visualizaciones de datos.
    • Utilice plotly para visualizaciones interactivas
    • Aprendizaje automático con SciKit Learn, que incluye:
    • Regresión lineal
    • K vecinos más cercanos
    • K significa agrupación
    • Árboles de decisión
    • Bosques aleatorios
    • Procesamiento natural del lenguaje
    • Redes neuronales y aprendizaje profundo
    • Máquinas de vectores de soporte
    • ¡y mucho, mucho más!

    Todo lo mejor.

    Aunque Java está presente en la actualidad, la mayor parte de la charla es sobre inteligencia artificial y aprendizaje automático. Con las implementaciones en cualquier nueva tecnología emergente, no hay ningún secreto oculto para los investigadores y científicos. Aquí puede encontrar una descripción general de los principales marcos de aprendizaje automático de Java y expresar lo bueno que es comenzar sin la reinvención de la rueda y la creación de algoritmos desde la base.

    Aquí hay algunas cosas más simples para resaltar 3 proyectos para ayudarlo a comenzar con el aprendizaje automático :

    1) Deeplelearning4J (DL4J) – Biblioteca de aprendizaje profundo de código abierto, distribuida y de grado comercial para JVM.

    2) Proyecto de datos BID: para permitir la recopilación rápida de patrones, el aprendizaje automático a gran escala y la minería de datos.

    3) Neuroph- Red neuronal orientada a objetos.

    1) DL4J- Aprendizaje Profundo

    Para ayudarlo, una herramienta llamada DL4J se realiza en el proceso de configuración profunda de redes neuronales y está formada por múltiples capas. Un profundo sentido de aprendizaje aporta a la JVM junto con la creación rápida de prototipos y la personalización con objetivos en más convenciones que en configuraciones. Personas que ya necesitan la teoría para crear y usar redes neuronales que son profundas y para ellas se usa esta herramienta. ..Más

    Afortunadamente, la cantidad de recursos de aprendizaje automático y tutoriales en línea se ha disparado, haciendo que sea más fácil que nunca sumergirse en el tema. Sin embargo, esta explosión en la información de aprendizaje automático es una espada de doble filo. Puede ser increíblemente difícil determinar qué recursos son más útiles y le brindará una comprensión real (no solo superficial) de la teoría y las matemáticas detrás del aprendizaje automático, así como la capacidad de codificar e implementar los algoritmos de aprendizaje automático adecuados a sus necesidades .

    La forma más fácil de sumergirse realmente en el aprendizaje automático y comprometerse a comprender el tema es inscribirse en una clase en línea. Mi favorito personal es Machine Learning Foundations on Experfy.

    Impartido por Peter Chen, quien estudió en MIT y Harvard y tiene años de experiencia en el aprendizaje automático en la industria, el curso cubre aplicaciones prácticas de algoritmos de aprendizaje automático para resolver problemas del mundo real.

    Mientras tengas una comprensión (muy) básica de Python y R, estás listo para tomar el curso. Aprenderá cuándo aplicar el algoritmo correcto, podrá comprender y explicar las matemáticas de los algoritmos subyacentes, evaluar la efectividad de su modelo. Lo más importante es que entenderá cómo manipular y mejorar sus modelos para obtener los mejores resultados posibles, una habilidad que será invaluable cuando se ensucie las manos con el aprendizaje automático.

    Creo que la mejor manera de autoaprender el aprendizaje automático es codificar mientras se aprenden las teorías, para que usted tenga una comprensión más profunda de las teorías y aplicaciones. Le sugiero que primero se familiarice con lenguajes de programación como Matlab y Python.

    En primer lugar, recomendaría que tenga algún conocimiento básico sobre las matemáticas, especialmente las estadísticas.

    En segundo lugar, ha aprendido más sobre el aprendizaje automático. En cuanto a los libros de introducción, recomendaría:

    1. Aprendizaje automático en acción (este libro combina el código y las teorías de aprendizaje automático de una manera muy clara. Le sugiero que intente codificar de acuerdo con este libro para familiarizarse con estos conocimientos)
    2. Elementos del aprendizaje automático (este es más difícil y tiene más requisitos. En cuanto a la introducción, el libro de arriba es más recomendado)

    Mientras tanto, si puede tomar algunos cursos en línea para fortalecer su comprensión.

    Recomendaría cursos de Experfy, una empresa con sede en Harvard que ofrece varios cursos en línea relacionados con TI y tecnología. Para atender su solicitud (que es más acerca de las aplicaciones del aprendizaje automático), recomendaría Aprendizaje automático para el análisis predictivo de Experfy si desea obtener una amplia información acerca de cómo se puede aplicar el aprendizaje automático a diferentes áreas, ya que tiene muchos conocimientos Casos mundiales y demos.

    Tercero, para entender mejor el aprendizaje automático, puedes leer:

    1. Elementos del aprendizaje estadístico del obispo (puedes leer este libro primero)
    2. Los Elementos de Aprendizaje Estadístico de Hastie, Tibshirani y Friedman (este libro requiere más antecedentes matemáticos y puedes leerlos después de terminar el primero)

    Espero que esto te ayude y buena suerte!

    Eric

    Hay muchas fuentes desde las cuales se puede comenzar el aprendizaje automático. Asegúrese de comenzar a implementarlo tan pronto como empiece a aprender. De lo contrario, podría terminar olvidándolo, haciendo que el aprendizaje sea inútil.

    http://www.kdnuggets.com/2015/11

    Aprender Aprendizaje Automático – Los mejores tutoriales de Aprendizaje Automático | Hackr.io

    Cómo aprender Aprendizaje automático, el modo de auto-arranque

    Ruta de aprendizaje: su mentor para convertirse en un experto en aprendizaje automático

    Aprendizaje automático en R para principiantes.

    Prueba r

    Un recorrido por los algoritmos de aprendizaje automático

    Su primer proyecto de aprendizaje automático en Python paso a paso: dominio del aprendizaje automático

    Su primer proyecto de aprendizaje automático en Python paso a paso: dominio del aprendizaje automático

    ¿Por qué entrar en el aprendizaje automático? – Dominio del aprendizaje automático

    Es útil recorrer los principales algoritmos en el campo para tener una idea de qué métodos están disponibles. Un recorrido por los algoritmos de aprendizaje automático

    Quiero darles dos formas de pensar y clasificar los algoritmos que puede encontrar en el campo.

    El primero es una agrupación de algoritmos por el estilo de aprendizaje. El segundo es una agrupación de algoritmos por similitud en la forma o función (como agrupar animales similares).

    Ambos enfoques son útiles, pero nos centraremos en la agrupación de algoritmos por similitud y haremos un recorrido por una variedad de diferentes tipos de algoritmos.

    Después de leer esta publicación, comprenderá mejor los algoritmos de aprendizaje automático más populares para el aprendizaje supervisado y su relación.

    Algoritmos agrupados por estilo de aprendizaje

    Hay diferentes maneras en que un algoritmo puede modelar un problema en función de su interacción con la experiencia o el entorno, o como sea que queramos llamar los datos de entrada.

    Es popular en los libros de texto de aprendizaje automático e inteligencia artificial para considerar primero los estilos de aprendizaje que puede adoptar un algoritmo.

    Solo hay unos pocos estilos principales de aprendizaje o modelos de aprendizaje que un algoritmo puede tener y los analizaremos aquí con algunos ejemplos de algoritmos y tipos de problemas que se adaptan a ellos.

    Esta taxonomía o forma de organizar algoritmos de aprendizaje automático es útil porque lo obliga a pensar en los roles de los datos de entrada y al proceso de preparación del modelo y seleccionar uno que sea el más adecuado para su problema para obtener el mejor resultado.

    Aprendizaje automático + Big Data Del aprendizaje automático a las habilidades lingüísticas de Python: 6 conjuntos de habilidades técnicas que alcanzan el salario máximo El trabajo de tecnología con mayor remuneración en el mercado actualmente es donde los profesionales cuentan con una combinación de aprendizaje de máquina y habilidades de análisis de big data.

    1 . Requisito previo: -Usted necesita tener conocimientos básicos de cálculo y álgebra.

    2 . Elige un idioma para implementar.

    Si ha hecho estas cosas, puede comenzar con Aprendizaje automático | Curso de Coursera (prefiero), porque esto le proporciona un conocimiento profundo y práctico de cómo puede implementar algoritmos ML en el mundo real.

    Lo más importante , completar todas y cada una de las asignaciones del curso, son muy buenas para elevarte.

    Puede usar algunas herramientas (bibliotecas) como pandas y scikit-learn en el desarrollo y la implementación operativa de su modelo.

    El mejor tutorial (serie de videos) en Scikit-learn y Pandas que encontré es Data School.

    Junto con usted puede comenzar con muchas competiciones de Kaggle (usar bibliotecas), el orden que prefiero:

    1 . Titanic: Aprendizaje de máquina del desastre

    2. Predicción del tipo de cubierta forestal

    3. Demanda para compartir bicicletas | Kaggle

    4. Actos aleatorios de pizza

    … ¡así sucesivamente!

    ¡Todo lo mejor!

    ¡Prepárate mundo, ML ingeniero está llegando!

    Gracias por A2A 🙂

    Entrenamiento de aprendizaje automático en Hyderabad:

    El entrenamiento de aprendizaje automático en Hyderabad ha sido diseñado para impartir un conocimiento profundo de las diversas técnicas de aprendizaje automático que se pueden realizar utilizando R y cubre una comprensión profunda del lenguaje R. El curso está repleto de proyectos de la vida real, estudios de caso e incluye R Cloud Labs para la práctica y también dominarás los conceptos como agrupamiento, regresión, clasificación y predicción.

    El alcance del entrenamiento de Data Science en Hyderabad:

    La capacitación en aprendizaje automático en Hyderabad, que proporciona una ruta analítica, sería una opción optimista para quienes se inscriban en este curso.

    • En este mundo empresarial y de programación, siempre que haya datos, se necesitará un ingeniero de Aprendizaje automático.
    • Este curso de aprendizaje automático en Hyderabad hará que los solicitantes sean científicos preparados para la industria, que puedan almacenar datos relevantes y comunicar claramente los resultados analíticos.
    • Se espera que el tamaño del mercado del programa de aprendizaje automático aumente más en 2020.
    • En la India ahora hay grandes oportunidades de trabajo para los ingenieros de aprendizaje automático en muchos MNC, ya que hay una falta de expertos en aprendizaje automático.

    Objetivos de la Capacitación de Aprendizaje Automático:

    Este curso de aprendizaje automático en Hyderabad te permitirá:

    • Obtenga una comprensión básica de análisis de negocios
    • Instale R, R-studio, y la configuración del espacio de trabajo.
    • Comprender varias declaraciones que se ejecutan en R
    • Obtenga una comprensión profunda de la administración de la ciencia de datos y aprenda cómo importar / exportar datos en R
    • Comprender y usar los diferentes gráficos en la visualización de datos R

    La demanda de la formación de aprendizaje automático en Hyderabad:

    Existe una gran demanda de todos los científicos expertos en datos o ingenieros de aprendizaje automático y desarrolladores en todas las industrias, lo que hace que este curso sea beneficiado para los aspirantes en todos los niveles de experiencia. Por eso recomendamos este Aprendizaje automático en Hyderabad , especialmente para los siguientes profesionales:

    • Los profesionales de TI y los desarrolladores de software que están buscando una carrera pueden cambiar a Data Science y análisis.
    • Profesionales que trabajan con datos y análisis de negocios.
    • Los graduados que buscan construir una carrera en análisis y ciencia de datos.
    • Cualquier persona con un interés genuino en el campo del aprendizaje automático de la ciencia de datos.

    ¿Quién puede tomar este curso?

    Existe una gran y creciente demanda de expertos cualificados de ingenieros de aprendizaje automático en todas las grandes industrias. Por eso recomendamos este curso para los siguientes profesionales:

    • Desarrolladores
    • Gerentes analíticos
    • Analistas de negocios
    • Arquitectos de TI
    • Arquitectos de la informacion
    • Recién llegados y graduados

    Institutos de formación de aprendizaje automático en Hyderabad:

    En Hyderabad, el entrenamiento de Analytics Path Machine Learning se centra especialmente en aquellos aspirantes que realmente sienten pasión por los MNC como ingenieros de aprendizaje automático, luego Analytics Path sería la gran plataforma para mejorar el crecimiento profesional en el campo de las herramientas y técnicas de aprendizaje automático.

    Haga clic aquí para inscribirse ahora