Cómo aprender los conceptos básicos del aprendizaje automático dentro de una semana para una entrevista de trabajo

¿Quieres un curso de aprendizaje rápido, punta del iceberg, ‘más pelusa que sustancia real’ sobre aprendizaje automático? Bueno. Esto es lo que haces.

  1. Tome el curso gratuito de Udacity sobre Machine Learning (el que tiene el conjunto de datos de correo electrónico de Enron como caso de estudio). Obtendrá una visión general de alto nivel no solo de Forrest Random y SVM, sino de muchos clasificadores diferentes, así como temas generales de aprendizaje automático. Mire los videos lo más rápido que pueda y omita los ejercicios de codificación / mini proyectos por ahora. Mierda, ¡hay un montón de cosas en otros sitios también! ¡El mundo es tu ostra!
  2. Usando lo que has aprendido, crea un clasificador de texto de muestra en Python (el curso te enseña a trabajar con Python 2). Algo para impresionar al entrevistador … ¡hay muchas oportunidades para clasificadores interesantes! Tal vez desee capacitar a un modelo para poder predecir qué tan alto se califica una receta en un sitio web de alimentos en función de características como la duración de la receta, los ingredientes enumerados, ciertos misceláneos. artículos, etc.… tal vez descubras que las recetas relacionadas con carne de cerdo están predeterminadas para tener una calificación más baja. O tal vez desee hacer algunas cosas interesantes junto con una biblioteca como NLTK y construir más de un ‘bot’ que haga algo genial como resúmenes automáticos de artículos y mejore con más datos de capacitación que lo alimente. Tal vez desee analizar sus diversos perfiles de Tinder y líneas de recogida y por qué no obtiene coincidencias 🙁
  3. Ligera alternativa al paso 2, ya que no tengo idea de qué tan buen programador eres y, francamente, no espero que alguien solo tome Python de la noche a la mañana y sea fluido con bibliotecas como Numpy y Pandas. ¡Roba el código de competencia Kaggle de alguien para clasificar el cáncer de mama o los puntos críticos de delincuencia en una ciudad, modifícalo ligeramente y pasa la mayor parte de tu tiempo aprendiendo cómo hablar sobre este código como si lo hubieras escrito! Simplemente no puede superar este método en términos de eficiencia, ya que probablemente esté robando a alguien en la parte superior del campo de aprendizaje automático. ¡También tiene el impulso adicional de ser terriblemente poco ético! 😀
  4. Aprenda sobre palabras de moda y tecnologías importantes, así como métricas / tramas importantes que puede explicar al entrevistador. Blah blah blah Tuve que reducir la dimensionalidad de mis vectorizadores tfidf especificando un cierto percentil blah blah SVD truncados para ayudar aún más a blah blah algo sobre la validación cruzada y su curva ROC para validar su modelo. ¡Puntos de bonificación por crear su matriz de confusión a través de una tabla dinámica en Excel si su entrevistador es más un hombre de negocios / gal que un desarrollador! No olvides hablar sobre todos los datos encantadores que estás utilizando para el proyecto, nada suscitará jimmies más rápido que hablar sobre tu increíble clasificador y luego revelar accidentalmente que creías que 50 elementos para 20 clasificaciones eran un conjunto de entrenamiento adecuado. ¡Tienes 10,000 … no … 10 billones de recetas con tu raspador de hilo único! Tuviste tu guión ejecutándose durante semanas porque estabas tan dedicado a descubrir por qué la gente odia tanto las chuletas de cerdo y cómo la carne de res es la carne más privilegiada. Además, su ISP ha marcado su cuenta varias veces y está amenazando con desconectar su servicio, por lo que REALMENTE necesita este trabajo.
  5. Tira esa mierda en un cuaderno de Jupyter, a la gente le encanta esa mierda. Ejecute eso directamente desde su Github, no tendrá que escribir ningún código propio frente al entrevistador ya que, ¡oye, todo está a la vista paso a paso! ¿Mencioné las parcelas? Necesitas una trama para todo. Trace su ROC / AUC al azar porque se ve genial. ¡Lanza un diagrama de dispersión generado aleatoriamente allí y mira si el entrevistador se da cuenta … si lo hace, aplaude sus habilidades de observación y pregúntales si puedes mezclar las cosas y comenzar a entrevistarlos!
  6. Págame $ 1,000 a través de Western Union y envíame una foto vergonzosa de ti mismo y te enseñaré todo lo que hay que saber sobre el aprendizaje automático (que, irónicamente, no es mucho, así que sabes que podré hacerlo ¡en una semana! ¡La primera lección es cómo tomar el código ML Github de alguien y cambiar la sintaxis suficiente para que se vea como el tuyo!).
  7. Siendo realistas, ignore la mayoría de mis consejos y siga con el paso 1. Tal vez construya un pequeño proyecto si tiene tiempo extra, pero su mejor apuesta en una semana es probablemente aprender lo más ampliamente posible en general mientras se concentra en algunos Temas y oraciones son lo suficientemente buenos para controlar el flujo de la entrevista para que pueda hablar sobre ellos. Además, siéntase libre de enviarme un mensaje privado si desea un consejo más serio, me divertí demasiado escribiendo esta respuesta.

¡Buena suerte!

Es totalmente posible barrer sobre lo básico en una semana. Si sigue los pasos a continuación, podrá manejar la mayoría de las preguntas básicas en una entrevista de aprendizaje automático.

  • Inscríbase en el curso de aprendizaje automático de Coursera de Stanford, dictado por Andrew Ng. Es un curso de 11 semanas, pero solo revise los videos de la primera semana para obtener los conceptos básicos.
  • Encuentre un pequeño conjunto de datos e implemente una regresión lineal multivariable con descenso de gradiente desde cero . Si completa este pequeño ejercicio, tendrá una intuición de lo que realmente es ML. El lenguaje de programación realmente no importa.
  • Lea sobre regresión logística. Es realmente simple si completaste el paso anterior.
  • Asegúrese de comprender qué es el sobreajuste y cuáles son las formas típicas de evitarlo (como simplificar el modelo mediante la regularización y eliminar características).
  • Lea las páginas de Wikipedia (u otros recursos) sobre validación cruzada k-fold, redes neuronales artificiales, análisis de componentes principales y máquinas de vectores de soporte.
  • Repase una Introducción visual al aprendizaje automático para comprender qué es un árbol de decisión.
  • Lea brevemente cómo se construyen los bosques aleatorios y los árboles de decisión potenciados.

Hace un tiempo escribí una respuesta a una pregunta similar: la respuesta de Prasoon Goyal a ¿Cómo aprendo Machine Learning en 10 días?

Puede seguir más o menos esa hoja de ruta. En segundo lugar, he vinculado a muchas de mis respuestas de Quora sobre aprendizaje automático en esa respuesta. Esas respuestas pueden servir como una guía rápida de muchos temas y conceptos en ML (aunque para algunos de ellos, probablemente necesitará un poco de experiencia para comprenderlos correctamente). Para llenar los vacíos, puede ver videos del curso de Andrew Ng en Coursera, o algún libro de texto estándar.


Puede encontrar más recursos para el aprendizaje automático aquí: la respuesta de Prasoon Goyal a ¿Cómo aprendo el aprendizaje automático?

Hay cursos en línea que lo ayudarán a comenzar. Estoy tomando algunos cursos en línea de Udemy: aprenda cualquier cosa, según su horario, que conduzca a mi curso a través de la Universidad Northwestern. Yo comenzaría por allí. Además, las compras en línea de productos electrónicos, indumentaria, computadoras, libros, DVD y más tienen muchos libros, si eres bueno para leer y retener.

Bueno, no creo que sea una buena idea pensar que puedes conocer muchos de los fundamentos del aprendizaje automático en una semana y esperar que te vaya bien en una entrevista de trabajo de ML. Bueno, si la entrevista de trabajo es para algún tipo de trabajo de ingeniería donde alguien que tendría que construir modelos de ML y usar análisis estadísticos con algoritmos y técnicas de minería de datos, dudo mucho de que pueda hacer algo, porque es un campo tan enorme que se ramifica en tantas habilidades que requieren tiempo y práctica para aprender.

Ahora, si es como si quisieras aprender los conceptos básicos y la entrevista de trabajo no requiere profundizar en las cosas, entonces sí, ¡por supuesto que puedes hacerlo!

More Interesting

¿Qué tan poderoso es la PNL?

¿Qué trabajo se ha hecho para aplicar la detección de nuevos eventos a eventos sociales en los que los usuarios estarían interesados ​​(es decir, conciertos)?

¿Las PGM son esenciales para el aprendizaje profundo?

¿Cuál es la capacidad del aprendizaje automático? Quiero decir, ¿cuánto puede 'aprender' una máquina?

¿Cómo manejo tanto la programación como la investigación en el área de redes neuronales y redes neuronales profundas?

¿Es indistinguible si el método t-SNE no muestra dos grupos claros (para un problema de clasificación de 2 clases)?

¿Debería aprender aprendizaje automático, desarrollo en la nube o desarrollo de juegos en Unity como estudiante universitario de primer año?

¿Cómo funciona el algoritmo EM para un modelo mixto que factoriza según un modelo Naive-Bayes?

¿Cómo debo entender el marco experto en aprendizaje en línea?

Cómo desarrollar una aplicación que reproduzca música de acuerdo a tu estado de ánimo

¿Puede LSTM u otro tipo de red neuronal recurrente aprender a extraer y representar un estado de Markov?

¿Qué temas y partes del libro 'Inteligencia artificial: un enfoque moderno', debo leer para aprender el aprendizaje automático y la PNL? ¿Necesito leer todo el libro?

¿Debo aprender primero el aprendizaje profundo o de refuerzo? ¿Hay un orden natural? ¿Debería hacerse al mismo tiempo?

¿En qué tipos de problemas de regresión son comparables las redes neuronales, las máquinas de vectores de soporte, los bosques aleatorios y las redes neuronales profundas? ¿La superioridad de los métodos depende del tamaño del entrenamiento?

¿Los algoritmos subyacentes permiten a Shazam identificar una canción y Amazon Flow para identificar una imagen básicamente igual?