¿Qué son el aprendizaje profundo y el aprendizaje automático, sus diferencias, similitudes, relaciones y una línea de tiempo de su historia de invención?

(Incluyo también modelos estadísticos en esta respuesta si sirve como un buen límite para el aprendizaje automático).

El aprendizaje automático puede verse como una categoría general de modelos que toman algo de entrada y predicen algo de salida. Otro tipo de modelos también se ajusta a esta descripción, pero estos modelos se clasifican mejor en modelos estadísticos o modelos de aprendizaje profundo.

La diferencia del aprendizaje automático en comparación con los modelos estadísticos es que los modelos de aprendizaje automático tienen bases teóricas débiles. Esto es diferente para la mayoría de los modelos estadísticos.

Por ejemplo, el modelo lineal generalizado, que incluye la regresión logística, se entiende muy bien en teoría y la interpretación de estos modelos es clara como el cristal. Los médicos a menudo prefieren los resultados de estos modelos más simples, como la regresión logística, porque pueden decir de inmediato cómo se comparan los medicamentos, qué tan efectivo es un medicamento y qué tan probable es que tenga un efecto y cómo la dosis cambia los resultados. Esto puede ser muy poco claro en los modelos de aprendizaje automático.

El límite entre los modelos de aprendizaje automático puede definirse por el área donde comienza a ser difícil interpretar los parámetros. Los estadísticos a menudo hacen un análisis cuidadoso e interpretación de las parcelas para todos los parámetros en el modelo. El modelo resultante es, por lo tanto, cuidadosamente validado y prácticamente robusto. A menudo, una persona capacitada puede interpretarlo fácilmente, utilizarlo para aplicaciones críticas y proporcionar garantías probabilísticas o ciertas propiedades. Esto se llama modelado estadístico.

Los modelos de aprendizaje automático, aun siendo aún interpretables (árboles de decisión, etc.), tienden a parecerse más a las cajas negras, porque a menudo el número de parámetros es tan alto que la interpretación es un esfuerzo bastante inútil.

Los modelos de aprendizaje automático generalmente cambian la interpretabilidad por un rendimiento absoluto con respecto a la métrica de pérdida, por ejemplo, cuán preciso se puede predecir un cierto resultado, en lugar de ser capaz de comprender lo que está haciendo el modelo. Para algunos modelos, todavía puedes entender por qué predicen ciertas cosas, pero diría que el aprendizaje automático comienza en el límite del comportamiento de la caja negra.

En muchos casos, no nos importa la robustez y la capacidad de interpretación y solo queremos rendimiento. El aprendizaje automático trata este problema. Queremos tomar algunos datos, predecir algo y luego tomar decisiones con respecto a esta predicción. No nos importan las predicciones erróneas siempre que el modelo ofrezca resultados de alta calidad la mayor parte del tiempo. Esto es aprendizaje automático.

Sin embargo, el aprendizaje automático tiene un gran problema. Si queremos tener un buen rendimiento, debemos proporcionarle las entradas correctas. Por ejemplo, si queremos reconocer el spam, funcionará bastante mal si bombardeamos nuestro modelo con el texto completo de cada correo electrónico. En cambio, queremos extraer algunas variables comprimidas, llamadas características, que usamos como entrada. Las características para la detección de spam pueden ser, por ejemplo, el recuento normalizado de palabras relacionadas con spam en un correo electrónico.

Sin embargo, si cambiamos de tarea, necesitamos nuevas funciones. Para el aprendizaje automático, es fundamental para un buen rendimiento que cada vez que nos enfrentamos a una nueva tarea, pensemos detenidamente cuáles serían las buenas características.

Por ejemplo, para detectar el sonido de ciertas especies de ballenas entre otras especies, podemos usar la transformación de Fourier y extraer ciertas bandas de frecuencia y usarlo como una característica en nuestro modelo de aprendizaje automático. Un modelo de aprendizaje automático generalmente consta de muchas características que agregamos paso a paso hasta que tengamos el mejor rendimiento para nuestro modelo. Esto se llama ingeniería de características.

La ingeniería de características es extremadamente difícil. La principal dificultad es que no existe un único recurso bueno sobre cómo aprender ingeniería de características. Tienes que aprenderlo a través de la práctica. La mejor manera de aprender ingeniería de características es hacer competencias de Kaggle. Los mejores competidores en Kaggle son los mejores porque son los mejores en ingeniería de características [1] [2].

Debido a que la ingeniería de características es tan difícil, apenas es escalable para problemas muy difíciles. Si desea detectar objetos en imágenes, primero necesitará extraer buenas características para hacerlo bien. Si desea detectar las imágenes de 1000 especies de animales, necesitaría diseñar características para cada especie a mano (lo que llevaría años) o confiar en descriptores de características más generales que describan las propiedades de una imagen en una región determinada. Pero esto no es tan simple como parece. De hecho, los informáticos trabajaron en este problema durante décadas. Antes del aprendizaje profundo, se les ocurrieron descriptores locales generales de imágenes que se pueden comparar entre imágenes y, por lo tanto, puede obtener una pista de qué imágenes contienen objetos similares. Pero aún así, este es un método muy crudo con un mal rendimiento. ¿Cómo podemos abordar este problema?

Ingrese al aprendizaje profundo. O tal vez debería decir “Ingrese el aprendizaje de características” porque el aprendizaje profundo es esencialmente aprendizaje de características.

El aprendizaje de características involucra modelos que aprenden automáticamente características de los datos. Es decir, un modelo de este tipo presenta la ingeniería de forma automática por sí solo, ¡no se requiere magia de ingeniería de características!

En ese sentido, el aprendizaje de características es similar al arco vs mosquetes. Los arcos eran mejores que los mosquetes si se manejaban bien, pero los arcos requieren años de entrenamiento, mientras que los mosquetes casi no requieren entrenamiento para ser utilizados efectivamente. Esta es la razón principal por la cual los mosquetes reemplazaron los arcos. La ingeniería de características + aprendizaje automático seguirá siendo la mejor para la mayoría de las tareas en los próximos años, pero el aprendizaje de características puede ser utilizado por mucha más gente con mucha menos capacitación, es por eso que vemos que el aprendizaje profundo reemplaza a la mayoría del aprendizaje automático en este momento.

El problema con el aprendizaje de características es que no se pueden aprender características complejas de los datos, sino solo características muy simples. Para aprender características más complejas, uno tiene que construir una capa adicional de características en las características anteriores. Cuanto más profundo es un modelo de aprendizaje de características, más complejas son las características aprendidas en la capa final. Esto causa problemas, por supuesto, por ejemplo, cuanto más profundos sean sus modelos, más difícil será entrenarlos con éxito. Entonces, la idea principal del aprendizaje profundo es aprender tantas capas de características como desee y luego pasar estas características a un clasificador (por ejemplo, regresión logística, como en la mayoría de los problemas de clasificación) que luego realiza la clasificación. Esto se llama aprendizaje profundo.

Básicamente, el aprendizaje profundo es solo aprendizaje automático con ingeniería automática de características.

Históricamente, todos estos métodos estaban vinculados por la potencia informática y la teoría. En el pasado, las personas trabajaban para calcular modelos estadísticos a mano y, por lo tanto, solo se podía calcular un número limitado de parámetros. Las computadoras posteriores estuvieron disponibles, lo que permitió el cálculo automático de modelos estadísticos. Un poco más adelante, el poder computacional era tan grande que los métodos computacionalmente caros se volvieron prácticos, como las máquinas de vectores de soporte con núcleos no lineales. Con la introducción de las GPU, el aprendizaje profundo se volvió más práctico.

Por supuesto, los avances teóricos también fueron importantes. Para el aprendizaje profundo, esto fue, por ejemplo, redes convolucionales, mejores funciones no lineales como unidades lineales rectificadas, un mejor optimizador como RMSProp o Adam, métodos de normalización como la normalización de lotes y capas, métodos de regularización como abandono y métodos que ayudan a mantener intacta la información del gradiente. como las celdas de memoria en LSTM y las conexiones de carretera y residuales.

En breve:

* Modelos estadísticos: interpretables, pocos parámetros, robustos

* Modelos de aprendizaje automático: comportamiento difícil de interpretar o caja negra, mayor rendimiento que los métodos estadísticos, requieren ingeniería de características

* Aprendizaje profundo: mayor rendimiento que los métodos de aprendizaje automático, comportamiento de recuadro negro, sin ingeniería de características debido al aprendizaje de características, problemas asociados con la profundidad de red y modelos con gran cantidad de parámetros

Notas al pie

[1] Aprendiendo de los mejores

[2] Anthony Goldbloom te da el secreto para ganar las competencias de Kaggle

El aprendizaje automático es esencialmente una aproximación de funciones multidimensionales a partir de un conjunto de puntos.

Para las funciones unidimensionales se inventó cuando se inventó el cálculo. Hace mucho tiempo.

En Deep Learning, pasa del espacio original a una dimensionalidad mucho más pequeña antes de aproximar la función. Las ideas de dimensionalidad reducida y parámetros efectivos existieron en física y matemáticas durante mucho tiempo. El uso de redes neuronales para la reducción de la dimensionalidad se inventó en los años 70, creo.

Quizás te interese este: ¿Qué es el aprendizaje profundo y sus ventajas? Caos cognitivo

En pocas palabras, el aprendizaje profundo utiliza modelos apilados de aprendizaje automático. Entonces DL es un subcampo de ML.

More Interesting

Tengo un conjunto de datos (audios y transcripciones), necesito saber cómo entrenaré estos datos para crear un modelo acústico que se utilizará para un reconocimiento de voz.

¿Qué son los núcleos en aprendizaje automático y SVM y por qué los necesitamos?

¿Cuáles son los últimos algoritmos de aprendizaje de los vecinos más cercanos? Me refiero a todo lo que se basa en datos, como métodos basados ​​en instancias, kNN, algoritmos de aprendizaje vecinos y métricos, todo en un solo lugar.

¿Hay otros ejemplos de algoritmos de PNL que escriben libros publicados?

¿Puede la red neuronal convolucional reconocer un objeto en cualquier condición?

¿Por qué decimos que las redes neuronales simples no pueden manejar la entrada de longitud variable?

¿Qué es un componente principal y por qué se llama así?

¿Cuál es la mejor hoja de ruta para aprender el aprendizaje automático usando Python?

¿Cómo debo usar máquinas restringidas de Boltzmann para el filtrado colaborativo?

¿Cuál debería ser el primer paso para aprender IA y aprendizaje automático?

¿Podemos usar un algoritmo no supervisado para realizar análisis de sentimientos?

¿Cuál es la teoría detrás de ingresar una imagen en una red neuronal?

¿AWS es bueno para ejecutar proyectos de aprendizaje profundo? ¿Qué tan rápido y costoso sería entrenar una red convolucional en aproximadamente 1 millón de imágenes?

Cómo medir cómo suenan dos señales similares

¿Qué es el aprendizaje no supervisado?