Diferencias ente AI, NLP, Machine Learning y Deep Learning

Machine Learning

En ocasiones, las diferencias entre Inteligencia Artificial, Machine Learning y Deep Learning son difíciles de establecer.

En la Ciencia de los Datos, es bastante típico trabajar al rededor de estos conceptos.

Tratemos de ver, rápidamente, cuales son estas diferencias.

AI (inteligencia artificial) es un subcampo de la ciencia de la computación que se creó en la década de 1960.  Su  preocupación es resolver tareas que son fáciles para los humanos pero difíciles para las computadoras.

AI
Inteligencia Artificial

En particular, una Strong IA (Inteligencia Artificial Fuerte) ​​sería un sistema que puede hacer cualquier cosa que un humano pueda (sin contar algunos aspectos físicos).

Esto es bastante genérico e incluye todo tipo de tareas, como planificar, moverse por el mundo, reconocer objetos y sonidos, hablar, traducir, realizar transacciones sociales o comerciales, trabajos creativos (hacer arte o poesía), etc.

NLP (procesamiento del lenguaje natural) es simplemente la parte de AI que tiene que ver con el lenguaje (generalmente escrito).

NLP
Procesado del Lenguaje Natural

El aprendizaje automático (machine learning en inglés) se refiere a un aspecto concreto de todo esto: dado un problema de IA que puede describirse en términos discretos (por ejemplo, de un conjunto particular de acciones, cuál es el correcto), y dada mucha información sobre el mundo, figura cuál es la acción “correcta”, sin que el programador la programe.

Machine Learning
Aprendizaje Automático

Típicamente se necesita algún proceso externo para juzgar si la acción fue correcta o no.

En términos matemáticos, se trata de una función: introduces cierta información y quieres que produzca la salida correcta, por lo que todo el problema es simplemente construir un modelo de esta función matemática de forma automática.

Para establecer una distinción con AI: puedo escribir un programa muy inteligente que tenga un comportamiento similar al humano, puede ser AI, pero a menos que sus parámetros se aprendan automáticamente de los datos, no es machine learning.

El aprendizaje profundo (deep learning en inglés) es un tipo de aprendizaje automático (machine learning) que es muy popular últimamente. Implica un tipo particular de modelo matemático que puede considerarse como una composición de bloques simples (composición de funciones) de un cierto tipo, y donde algunos de estos bloques se pueden ajustar para predecir mejor el resultado final.

Deep Learning
Aprendizaje Profundo

La palabra profundo significa que la composición tiene muchos de estos bloques apilados uno sobre el otro, y la parte difícil es cómo ajustar los bloques que están lejos de la salida, ya que un pequeño cambio allí puede tener efectos muy indirectos en el salida.

Esto se hace a través de algo llamado Backpropagation dentro de un proceso más grande llamado descenso de gradiente que le permite cambiar los parámetros de una manera que mejora su modelo.

Este artículo está basado en una respuesta en la red Quora sobre estos temas y realizada por Dmitriy GenzelPhD. en Computer Science.