Internet está repleto de tutoriales para comenzar con el aprendizaje profundo. Puede optar por empezar con los magníficos cursos de Stanford CS221 o CS224, Cursos rápidos de IA o IA de aprendizaje profundo cursos si eres un principiante absoluto. Todos, excepto Deep Learning AI, son gratuitos y accesibles desde la comodidad de su hogar. Todo lo que necesitas es un buen ordenador (preferiblemente con una GPU Nvidia) y estás listo para dar tus primeros pasos en el aprendizaje profundo.
Sin embargo, este blog no está dirigido al principiante absoluto. Una vez que tenga un poco de intuición sobre cómo funcionan los algoritmos de aprendizaje profundo, es posible que desee comprender cómo funcionan las cosas de manera clandestina. Si bien la mayor parte del trabajo en Deep Learning (el 10% excepto el almacenamiento de datos, es decir, el 90% del trabajo total) consiste en añadir capas como Conv2D, cambiar los hiperparámetros en diferentes tipos de estrategias de optimización como ADAM o utilizar batchnorm y otras técnicas simplemente escribiendo comandos de una línea en Python (gracias a los increíbles marcos disponibles), muchas personas pueden sentir un profundo deseo de saber qué sucede entre bastidores. Esta es la lista de recursos que pueden ayudarte a saber qué ocurre dentro del capó cuando (por ejemplo) colocas una capa conv2d o llamas a t.Grad en Theano.
Tratado general
Deep Learning Book es, por supuesto, el más famoso y conocido recurso. Otros buenos recursos son los del profesor Charniak curso y artículo que es una introducción técnica al aprendizaje profundo. También hay otros recursos que quizás quieras utilizar si quieres entender las cosas desde una perspectiva particular. Por ejemplo, el tutorial fue escrito desde el punto de vista de los matemáticos aplicados y si solo quieres empezar a programar sin entrar en ninguna teoría, lee aquí. Otro recurso recomendado es el curso de aprendizaje profundo en PyTorch aquí. Este curso habla de las cosas de abajo hacia arriba y te ayuda a tener una perspectiva más amplia.
Problemas relacionados con la retropropagación

Hay muchas ocasiones en las que la gente no está segura de «¿en qué son lo mismo el descenso del gradiente y la retropropagación?» o «¿qué es exactamente la regla de la cadena y la retropropagación?». Para entender lo básico, podemos optar por leer el artículo original de Rumelhart, Hinton y Williams, donde todo comenzó. El documento está ubicado aquí y es un documento muy sencillo de entender.
Otros recursos muy útiles que se pueden leer además de esto son el blog de Karpathy sobre el tema Backward derivación de accesorios y este vídeo explicando la derivación de backprop.
Álgebra lineal y otras matemáticas

Cualquiera redirigiría a alguien que aspira a aprender álgebra lineal para que vaya a la casa del profesor Strang curso. Este es probablemente el mejor recurso sobre álgebra lineal del planeta. Similar es el caso del curso de optimización del profesor Boyd aquí o el libro Calculus on Manifolds para cálculo vectorial (puedes encontrar un pdf si buscas en Google «Calculus on Manifolds»). Sin embargo, no es necesario profundizar en la profundidad con la que estos recursos analizan sus temas para adentrarse en el aprendizaje profundo. Una forma muy rápida de empezar es repasar rápidamente todos los requisitos previos del cálculo para el aprendizaje profundo, que está disponible aquí. También está este muy buen conjunto de apuntes de clase para ver solo la optimización convexa utilizada en el aprendizaje profundo. Otro buen recurso es el artículo de Sebastian Reuder aquí. También me gustan estas notas de clase para entender las derivadas de tensores.
Bibliotecas de aprendizaje profundo y diferenciación automática

La diferenciación automática no es algo que sea absolutamente necesario saber cuando se utiliza Deep Learning. La mayoría de los marcos, como Torch, Theano o Tensorflow, lo hacen automáticamente. En la mayoría de los casos, ni siquiera es necesario saber cómo se realiza la diferenciación. Dicho esto, si está decidido a entender cómo funcionan los marcos de aprendizaje profundo, es posible que desee entender cómo funciona la diferenciación automática aquí. Puedes encontrar otros buenos recursos para entender cómo funcionan las bibliotecas de aprendizaje profundo en este blog y vídeo.
Redes neuronales convolucionales:

Lo más útil que puede necesitar después de haber realizado algunos cursos que le permitan usar conventos básicos es comprender cómo funcionan las convoluciones en las imágenes. «¿Cuál es la forma de salida después de aplicar un determinado tipo de convoluciones a una entrada?» , «¿Cómo afecta la zancada a las convoluciones?» , «¿Qué es la normalización por lotes?» y cosas así. Los dos mejores recursos que he visto para este tipo de preguntas aplicadas son el tutorial aquí y la charla de Ian Goodfellow aquí. Un más completo revisión on Convnets está aquí si quieres hacerte una idea. Esto revisión sobre la detección de objetos es un recurso muy bueno sobre el tema.
Aprendizaje profundo en PNL

El curso de Stanford 224 que señalé anteriormente en el blog es un muy buen punto de partida y deberías ser lo suficientemente bueno para casi todo. También hay un curso en youtube de Graham Neubig (que usa Dynet) aquí. También hay un Libro de PNL de Yoav Goldberg que te puede gustar. Se revisan los avances (más recientes) de la PNL después de la redacción de este libro aquí. También existe una pregunta muy común sobre si se deben usar convnets o RNN (LSTMS/GRU) en el texto. Una buena visión general es aquí.
Aprendizaje por refuerzo

Sutton y Barto son la biblia para empezar con estos métodos. El libro es gratuito y está disponible aquí. Está disponible una muy buena revisión de los métodos recientes de aprendizaje por refuerzo profundo aquí. Hay un tutorial muy interesante sobre el aprendizaje por refuerzo aquí.
Una buena reseña de Monte Carlo Tree Search (que forma parte del algoritmo AlphaGo de Deepmind, además de las técnicas de aprendizaje por refuerzo profundo) es aquí. Yo, sin embargo, usé esto tutorial rápido para aprender sobre ellos.
Algunas otras buenas reseñas/tutoriales
Un buen tutorial sobre las GAN (redes generativas adversarias) y los modelos generativos, en general, es lo que Goodfellow dio en ICLR 2016. Se puede encontrar aquí. Las redes neuronales se han utilizado para transferir arte (por ejemplo, en la aplicación Prisma). Se puede encontrar un estudio detallado de los métodos para hacerlo aquí. Otra buena encuesta sobre el aprendizaje multitarea (combinación de múltiples tareas en la misma red neuronal) realizada por Reuder es aquí.
Críticas
Si bien el aprendizaje profundo funciona increíblemente bien en múltiples problemas, sabemos que siempre habrá algunos lugares a los que aún no hayan llegado. Algunas críticas que vale la pena leer son Fracasos del aprendizaje basado en gradientes Shalev-Shwartz y col. , esta charla de Hinton que enumera algunas dificultades para conventos y cómo los conventos no pueden descifrar los negativos de las imágenes se entrenan en. Otra crítica que se hizo viral/controvertida hace unos días es esto. También hay este extenso informe sobre el uso malintencionado del aprendizaje profundo.
Ejemplos contradictorios
Este es un campo enorme para crear puntos de datos artificiales/reales que pueden engañar a los conventos. Podría haberlo publicado en las secciones críticas, pero no lo hice
1) no son un desafío técnico para todas las aplicaciones y
2) No he leído muy bien sobre ellos. Un caso muy interesante para empezar e interesarse es aquí donde generan «objetos adversarios» para engañar a las redes neuronales.
También puede leer sobre los algoritmos de aprendizaje automático que debe conocer para convertirse en científico de datos aquí.
Esperamos que os haya gustado el artículo. Por favor Inscríbase para obtener una cuenta Komprehend gratuita para comenzar su viaje con la IA. También puedes consultar las demostraciones de las API de IA de Komprehend aquí.


