Cómo comenzar el trabajo de investigación sobre aprendizaje automático y cómo puedo elegir un tema o problema en el aprendizaje automático

Esto es lo que hago. Trato de pensar en términos de lo que me gustaría hacer con una computadora que podría hacer yo mismo, pero tomaría mucho tiempo y probablemente me molestaría mucho. Este tipo de pensamiento naturalmente lo llevaría por el camino de la programación y la creación de software, por lo que es una forma interesante de comenzar.

Pero entonces puedes comenzar a ponerte más complicado. ¿Qué cosas puedo hacer que encuentro interesantes? Puedo mantener una imagen en mi cabeza sobre el mundo detrás de la persona con la que estoy hablando frente a mí. Sé que la chica que desapareció detrás de ese árbol probablemente reaparecerá en un segundo, así que no la golpearé con mi auto. Y puedo reconocer el rostro de mi madre al instante en una multitud de personas.

Entonces lees un poco y dices oye, esto es visión por computadora, y es prácticamente un problema sin resolver. Entonces, usted decide si desea abordar problemas no resueltos o tratar de llegar a algo interesante. Tal vez para un primer golpe en el aprendizaje automático no debería esperar llegar demasiado lejos con él. Quizás puedas conseguir algo que funcione. ¡Eso es genial! Pero, por lo general, es más fácil comenzar con algo simple y estúpido para evaluar su comprensión de las cosas básicas.

Hay toneladas de ejemplos sobre cómo pensar en ciertas técnicas de ML. Uno canónico para los modelos ocultos de Markov es predecir lo que hará su amigo dado el clima que hará ese día (si saldrá a caminar o se quedará adentro y mirará televisión, por ejemplo). Descargue scikits-learn y juegue con él, y vea si puede hacer que uno funcione. Entonces intenta algo más difícil. Haga un análisis de series de tiempo sobre, por ejemplo, predicciones meteorológicas durante el último mes o dos y vea si puede hacer alguna predicción. Quizás si tienes algunos datos de juguetes, puedes practicar con eso. No tiene que ser el clima, podría ser el béisbol o los precios de las acciones de su compañía de tecnología favorita.

Piensa en las cosas que te interesan. Será más fácil encontrar la motivación de las cosas que podrían ser realmente útiles para las personas (o solo para ti). Creo que esta es una buena manera de pensar en problemas cuando aún no has comenzado.

También asegúrese de consultar algunas API geniales para obtener datos. Si eres una persona de las redes sociales, los datos de Twitter pueden ser interesantes para ti. Si eres un jugador, echa un vistazo a la API de Steam. Etcétera. Hay un sinnúmero de problemas por resolver, así que solo ve con lo que te interesa.

Para aprender el aprendizaje automático, debes ser mejor que el promedio en matemáticas. Estas son las matemáticas que debe aprender teniendo en cuenta el objetivo final para estar preparado.

  • Álgebra lineal-Álgebra lineal– MIT 18.06 Álgebra lineal por Gilbert Strang
  • Teoría de probabilidad-Probabilidad y estadística – MIT 6.041 Análisis de sistemas probabilísticos y probabilidad aplicada por John Tsitsiklis
  • Cálculo
  • Cálculo de variaciones.
  • Teoría de grafos
  • Métodos de optimización (multiplicadores de Lagrange)
  • Cualquier lenguaje de programación ampliamente utilizado para ML como python, MATLAB o C ++.

PD: recomendaría Python aquí como lenguaje y recomendaría los siguientes enlaces:

  • Aprendizaje automático con texto en scikit-learn (PyCon 2016)
  • Aprendizaje automático en Python con scikit-learn

Una vez cumplidos estos requisitos, puede por fin comenzar a considerar Machine Learning.

¿6 PASOS FÁCILES para utilizar el APRENDIZAJE DE MÁQUINAS?

Este es el lugar donde comienza la diversión. Ahora, se espera que la base comience a echar un vistazo a algunas informaciones. La mayoría de las empresas de aprendizaje automático tienen básicamente el mismo proceso de trabajo:

PASO 1.) Fabrica tus fundamentos de aprendizaje automático estudiando material relacionado con el tema:

a.) Las conferencias de Andrew Ng’s Machine Learning son un gran comienzo:

Colección de conferencias | Aprendizaje automático: YouTube

b.) Certificado de aplicaciones y minería de datos de Stanford:

Certificado de Posgrado en Minería de Datos y Aplicaciones

c.) Escuela de verano de aprendizaje automático:

https://www.youtube.com/playlist

d.) Un enlace a la lista de reproducción completa está aquí (Lecture Collection | Machine Learning)
https://www.youtube.com/view_pla

e.) “Pase la mejor introducción de aprendizaje automático que he visto hasta ahora”.

PASO 2.) Tome un curso en línea

Lo principal que aconsejo a alguien que necesita ingresar al aprendizaje automático es tomar el curso en línea de Andrew Ng.

Creo que el curso de Ng es especialmente preciso y excepcionalmente eficiente, por lo que es un conocimiento extraordinario para alguien que necesita ingresar a ML. Me sorprende cuando las personas me revelan que el curso es “excesivamente fundamental” o “excesivamente superficial”. En el caso de que me revelen que solicito que aclaren el contraste entre la Regresión logística y el SVM, PCA versus la factorización matricial, regularización o descenso de gradiente de Kernel lineal. He hablado con aspirantes que afirmaron años de encuentros de LD que no sabían la respuesta a estas preguntas. En su mayor parte, se aclaran claramente en el curso de Ng. Hay muchos otros cursos en línea que puede tomar después de este, pero ahora está en su mayor parte preparado para pasar a la siguiente etapa.

Vea mi publicación anterior 10 mejores videos, profesores y cursos sobre aprendizaje automático para principiantes y avanzados

PASO 3.) Algunas sugerencias de libros

Mi siguiente paso sugerido es obtener un libro de ML decente (mi lectura más abajo), leer las principales secciones de introducción, y después de eso rebotar a cualquier parte que incorpore un algoritmo, usted está interesado. Cuando haya descubierto ese algo, salte a él, vea cada uno de los puntos de interés y, en particular, impleméntelo. En el paso anterior del curso en línea, a partir de ahora habría actualizado algunos algoritmos en Octave. Sea como fuere, aquí estoy buscando ejecutar un algoritmo sin ninguna preparación en un lenguaje de programación “real”. En cualquier caso, puede comenzar con una simple, por ejemplo, Regresión logística regularizada en L2, o k-means, pero también debe impulsarse a actualizar todos los más intrigantes, por ejemplo, SVM. Puede utilizar una implementación de referencia en una de las muchas bibliotecas existentes para asegurarse de obtener resultados equivalentes.

  • El razonamiento bayesiano y el aprendizaje automático de David Barber
  • El aprendizaje automático de Kevin Murphy: una perspectiva probabilística
  • Los elementos del aprendizaje estadístico de Hastie, Tibshirani y Friedman
  • Reconocimiento de patrones y aprendizaje automático de Bishop
  • Aprendizaje automático de Mitchell

También hay numerosos libros excelentes que llaman la atención sobre un tema específico. Por ejemplo, Sutton and Re-Inforcement Learning es una obra de arte. Además, el libro Deep Learning (accesible en la web) prácticamente se está convirtiendo en un ejemplo antes de ser distribuido. Sea como fuere, necesita un par de esos libros para reunir una comprensión equilibrada y hasta cierto punto del campo.

Vea mi publicación anterior 10 eBooks gratuitos de lectura obligatoria sobre conceptos básicos de aprendizaje automático.

También puede ir específicamente a un trabajo de investigación que presente un algoritmo o enfoque que le interese y salte a él.

PASO 4.) Algoritmos más esenciales

Se confía en usted para conocer los aspectos básicos de un algoritmo esencial.

Vea mi anterior post 15 algoritmos que los ingenieros de aprendizaje automático deben saber.

En cualquier caso, aparte de los algoritmos, también es fundamental saber cómo configurar sus datos (selección de características, transformación y compresión) y cómo evaluar sus modelos. Tal vez, para empezar, podría consultar nuestro Aprendizaje automático en el ejercicio de instrucción scikit-learn en SciPy 2016. Se condensa una gran parte de los rudimentos al presentar la biblioteca scikit-learn, que puede resultar útil para la ejecución y otros exámenes. :

PASO 5.) Juega con algunos conjuntos de datos enormes que son de acceso abierto.

Descubra un conjunto de datos que le parezca especialmente interesante o sobre el que tenga hipótesis y compruebe si tiene razón.

Datos del gobierno de EE. UU. http://www.data.gov/

Ferrocarril Catering y Turismo Corporación http://www.irctc.co.in

PASO 6.) Participa con un equipo de personalización o aprendizaje automático centrado en el producto.

El grupo que busca debe estar cargado de ingenieros a quienes desea instruir y aprender. Esto lo mejorará para convertirse en un buen ingeniero de aprendizaje automático. Del mismo modo, al dividir un grupo de productos, descubrirá rápidamente cómo la ciencia y la hipótesis del aprendizaje automático varían de la capacitación. Específicamente, cómo la conducta del cliente le mostrará algo nuevo cada día.

Gracias por el A2A. No hay requisitos como tales para estudiar Machine Learning. Las personas con antecedentes muy dispares que van desde la física teórica hasta el arte, las matemáticas y la ingeniería se han subido al tren de ML. Sin embargo, tener una base sólida en teoría de la probabilidad y álgebra lineal le dará una ventaja adicional.

En lo que respecta a la investigación de ML en sí, un entorno universitario probablemente sería el mejor punto de partida. Dado que ya ha completado un MTech en CS, un puesto de investigación en una universidad probablemente debería ser su próximo paso. Identificar universidades es bastante sencillo, muchas universidades de todo el mundo tienen grupos de investigación de ML. Una gran cantidad de ellos se encuentran en los EE. UU. (Stanford, MIT, CMU, Berkeley, Columbia, UIUC, Georgia Tech, etc.), con algunos destacados también en Europa (UCL, ETH Zurich, Cambridge, etc.).

Mientras busca una universidad, eche un vistazo al trabajo que se está haciendo allí y vea cómo se alinea con sus propios intereses. Como ya tiene un Máster en Ciencias de la Computación, las universidades probablemente esperarían alguna experiencia previa en investigación / publicaciones en su área de estudio prevista. Si no posee esa experiencia, puede ser una buena idea trabajar estrechamente con un profesor en un proyecto de investigación que podría conducir a una publicación de la institución donde obtuvo su MTech.

Sí. La respuesta de Sandeep lo resume todo. Para agregar un poco, podría tomar posiciones de RA durante un año más o menos en buenas universidades como Iisc e IIT después de revisar los perfiles de los profesores que trabajan allí. Al pasar tan poco tiempo, no solo mejoraría sus posibilidades, sino que también tendría una buena idea de varios campos dentro de ML antes de pasar a PhD.
También hay un curso reciente presentado en Coursera en ML por Andrew Ng, es posible que desee retomarlo.

More Interesting

¿Qué campos de investigación tendrán más impacto fuera de la academia en los próximos años?

En términos simples, ¿cómo funciona el algoritmo de hash perfecto "comprimir, hash y desplazar (CHD)"?

¿Cómo es estudiar datateknik (civ.ing) en la Universidad Tecnológica de Chalmers?

¿Cuáles son las áreas clave de investigación en la práctica de farmacia actualmente?

¿Cómo explicaría las pruebas probabilísticamente comprobables y el teorema de PCP a un estudiante universitario en informática?

¿Puede un estudiante universitario llevar a cabo una 'investigación' en computación cuántica de forma independiente?

¿Cómo hacer un hábito de leer y comprender artículos de informática? De donde debo comenzar

¿Cuál es la investigación reciente en informática? ¿Cómo puedo obtener un conocimiento profundo de alguna investigación o tema si deseo saber?

¿Cuál es la diferencia entre computer graphics y computer vision?

Cómo comenzar el trabajo de investigación sobre aprendizaje automático y cómo puedo elegir un tema o problema en el aprendizaje automático

¿Cuál es un buen tema de investigación de pregrado en visión por computadora?

¿Cuáles son las principales áreas de vulnerabilidades para los sistemas operativos?

¿Cuáles son las tendencias modernas en la investigación en informática?

Predicción de tráfico sobre hosts o nodos en la nube: ¿es un tema de tendencia o un área de investigación en la computación en la nube?

¿Qué áreas de la informática involucran más trabajo de hardware?