Cómo aprender el aprendizaje automático y el aprendizaje profundo a nivel de doctorado utilizando solo recursos gratuitos en línea

Recientemente respondí una pregunta similar. Te podría ayudar también.

Si tiene suficiente disciplina y pasión, puede aprender Aprendizaje automático simplemente utilizando material en línea disponible gratuitamente.

Esto es importante , mi recomendación sería comenzar desde el curso de Redes neuronales convolucionales de Stanford . Ese curso toca todos los aspectos de esta guía y lo mantendrá motivado porque logra cosas en pequeñas cantidades.

Material fundacional

Matemáticas

Se requerirá álgebra lineal, probabilidad y cálculo. Enfoque su estudio desde una perspectiva de herramientas, es decir, aprenda sobre un tema cuando lo encuentre y tenga muy claro por qué ese tema es importante.

  • Primera sección del libro Deep Learning. Introducción agradable y suave a los conceptos matemáticos relacionados con el aprendizaje automático.
  • Esencia de álgebra lineal y esencia de cálculo. Serie de videos cortos de Youtube que proporcionan una intuición muy hermosa sobre el álgebra y el cálculo lineal. Por ejemplo, ¿sabías que el determinante describe cómo se escala y se transforma el espacio mediante una matriz?
  • Calculus Made Easy de Thompson. Recientemente me topé con este texto (alguien publicado en Twitter) y me enamoré de él. Da una buena introducción superficial al cálculo.
  • Análisis de sistemas de probabilidad MIT y probabilidad aplicada. Va un poco lento para mi gusto pero cubre todos los temas principales.
  • Métodos matemáticos para la visión artificial, robótica y gráficos. Recomiendo volver a Khan Academy para materiales suplementarios.
  • Métodos matemáticos para ingenieros 1 y 2. Curso MIT sobre matemáticas aplicadas. Algunos métodos relevantes para la IA y otros no. Veo conferencias seleccionadas cuando estoy revisando algún material.

Ingeniería de software

  • Aprende Python. La mayoría de las bibliotecas de AI y el código de ejemplo que hay por ahí se implementa en Python. Vengo de un contexto de JAVA y este libro me ayudó enormemente a comprender las formas de Pythonic.
  • Una vez que se sienta cómodo con lo básico, comience a sentirse cómodo con la programación paralela en Python. Tendrá que usarlo para crear datos de entrenamiento en paralelo o acelerar las tareas de cocción de datos mundanos. Este blog te dará un buen comienzo. Te encontrarás con el maravilloso mundo de GIL :).
  • Sé bueno usando NumPy y Scipy. Estas herramientas implementan las matemáticas en las computadoras. Esta introducción de Stanford es un gran comienzo. Un punto sutil es este: NumPy parece haber establecido los estándares sobre cómo se debería pensar acerca del Álgebra Lineal en las computadoras. Así que los conceptos aprendidos aquí se transfieren a la mayoría de los otros kits de herramientas de inteligencia artificial.

Aprendizaje automático acelerado de GPU

La mayor parte del aprendizaje automático son transformaciones matriciales. Matrix Matemix puede ser masivamente acelerado en GPUs. Recomiendo explorar GPU para acelerar sus modelos ML.

  • A la larga, construir tu propia caja de GPU será más barato. Consulte estas guías: Una guía completa de hardware para el aprendizaje profundo: Tim Dettmers y la creación de su propio cuadro de aprendizaje profundo: Hacia la ciencia de los datos: Medio.
  • Recomiendo este libro y este curso. Recuerde, no necesita saberlo todo, pero la comodidad con este material lo ayudará a ejecutar sus redes más rápido y a solucionar problemas.
  • También necesitarás aprender un marco basado en GPU. Hay muchos para elegir, como MXNet, Theano, Tensorflow y PyTorch. Todos estos marcos son motores de álgebra lineal. Sus sitios web están llenos de guías y tutoriales. Elige uno y hazlo bien.

Aprendizaje automático de materiales específicos

El aprendizaje automático es un campo vasto. Esta sección variará según el tipo de Aprendizaje automático que desee seguir. Utilizo las redes neuronales para perseguir el aprendizaje automático, por lo que mi descripción estará sesgada a esas técnicas.

En mi humilde opinión, la progresión de los materiales de digestión es conferencias -> blogs / libros -> artículos. Algunos de mis favoritos.

Conferencias

  • Aprendiendo de los datos.
  • Redes neuronales para el aprendizaje automático.
  • Redes neuronales convolucionales para el reconocimiento visual.
  • Aprendizaje profundo para el procesamiento del lenguaje natural
  • Oxford CS Deep NLP
  • Redes neuronales

Blogs / Libros

  • Libro de aprendizaje profundo
  • Andrej Karapathy
  • Colah
  • Sebastian Ruder
  • WildML
  • Destilar

Papeles

  • Gran lista compilada por Terry Taewoong Um
  • Crea una cuenta en Arxiv Sanity Preserver y vuélvete loco

Este campo se está moviendo tan rápido que la mejor manera de “mantenerse informado” es seguir a los líderes del campo. La mejor manera de hacerlo es en las redes sociales. Algunas recomendaciones y, probablemente, las redes sociales que elijas (la mayoría de ellas están activas en Twitter) comenzarán a mostrarte personas más relevantes 🙂

  • Andrew Ng
  • Yoshua Bengio
  • Yann LeCun
  • Fie-Fie Li
  • Andrej Karpathy

Organizando tu material de lectura (opcional)

Intento constantemente optimizar cómo organizo mi material. En un momento me había impreso papeles por todas partes. Luego, con el iPad Pro y el Apple Pencil, “intenté” ir sin papel pero revertí. Pero, en el último mes (después del lanzamiento de iPad de 10.5 pulgadas) creo que finalmente encontré un sistema que me funciona.

  • Yo uso Papers para organizar mis archivos PDF. Puede importar archivos PDF de fuentes como Arxiv.
  • Uso LiquidText para leer y anotar mis archivos PDF. Lo bueno aquí es que puedes abrir archivos PDF desde Papers en LiquidText y cuando hayas terminado, puedes enviarlos nuevamente a Papers con tus anotaciones intactas.
  • Utilizo Google Keep para los marcadores sobre la marcha. Luego, cuando tengo tiempo, importo cosas en Papers o LiquidText para futuras lecturas.

En el sentido real, si desea aprender “Aprendizaje profundo” y “Aprendizaje automático”, no necesita un doctorado. No veo cómo puede obtener un doctorado simplemente utilizando recursos en línea gratuitos. En su pregunta, creo que quiere decir que desea obtener un nivel de conocimiento igual al de PhD.

Debido a que hoy en día hay muchos cursos de Data Science / Deep Learning disponibles en línea, también puede aprender desde su casa. Así que mi sugerencia es no pensar en doctorado. Mejor poner esos esfuerzos para completar el curso de aprendizaje profundo en línea.

El aprendizaje profundo es el futuro. Así que tienes que aprender de expertos, no de chicos normales. Como estudiante de doctorado, te sugeriré algunos de los

Algunos de los mejores cursos en línea de aprendizaje profundo y aprendizaje automático son:

1. Deep Learning AZ ™: redes neuronales artificiales prácticas

2. Ciencia de datos: Aprendizaje profundo en Python

3. Procesamiento de lenguaje natural con aprendizaje profundo en Python

4. Prerrequisitos de Aprendizaje Profundo: Regresión Lineal en Python

5. Zero to Deep Learning ™ con Python y Keras

Alternativamente, puede ir a una buena escuela de programación como Holberton School y aprender ingeniería de software desde cero. Al inscribirse en nuestra escuela, podrá estudiar mucho más y, por lo tanto, captar más contenido. Con el tiempo y la práctica, mejorarás cada día.

Simplemente no puedes. El propósito de obtener un doctorado es trabajar en investigación con expertos en la materia. Puede obtener un nivel suficiente de conocimientos de las clases en línea para trabajar en el campo. Luego, a través del trabajo con expertos, puede alcanzar el nivel de doctorado. Un gran componente del doctorado es la experiencia adquirida en la realización de investigaciones en un nuevo campo, junto con un mentor experto.

Esto no quiere decir que serás inferior a cualquier graduado de doctorado si eres autodidacta. Es solo una ruta diferente con un resultado diferente.

Toma la introducción de Coursera al aprendizaje automático.

Empieza a leer el libro de aprendizaje automático de Tom Mitchell.

Para un aprendizaje profundo, necesitas una gran comprensión de las redes neuronales.

Tome el curso de coursera de Geoffrey Hinton. Use el libro de Ian Goodfellow para profundizar en los temas importantes.

Revisa los trabajos de investigación a diario. Saber hacia dónde se dirige el tema en la actualidad.

Si tienes interés y pasión sí.

Le sugiero que siga este enlace que puede aprender ML en 90 días. Véase también aquí.

Depende de lo que quieres decir al aprender ML. Es decir, ¿solo desea tener un nivel de conocimiento igual al de un doctorado o desea realmente poder aprovechar ese conocimiento?

Usted no Probablemente pueda obtener la mayor parte del camino a un nivel de BSc o tal vez incluso a un nivel de MSc, pero un PhD es otra cosa. Un doctorado es una persona que está capacitada para ampliar el conocimiento de la humanidad y abordar los problemas más difíciles que los humanos tienen para ofrecer.

Sin embargo, no dejes que eso te impida aprender. Puedes llegar muy lejos por ti mismo y puedes irte y hacer cosas increíbles.