¿Qué es el aprendizaje profundo?
El aprendizaje profundo es un tipo de aprendizaje automático que usa redes neuronales artificiales para permitir que los sistemas digitales aprendan y tomen decisiones basadas en datos no estructurados y sin etiquetar.
En general, el aprendizaje automático entrena sistemas de inteligencia artificial para aprender de experiencias adquiridas con datos, reconocer patrones, hacer recomendaciones y adaptarse. Con el aprendizaje profundo en particular, en lugar de simplemente responder a conjuntos de reglas, los sistemas digitales generan conocimiento a partir de ejemplos y, después, usan ese conocimiento para reaccionar, comportarse y actuar como personas.
Por qué es importante el aprendizaje profundo
Los científicos de datos y los desarrolladores utilizan software de aprendizaje profundo para entrenar equipos para analizar complejos conjuntos de datos de gran tamaño, realizar tareas complicadas y no lineales, y responder a voz, imágenes o texto, a menudo más rápidos y precisos que las personas. Esta funcionalidad tiene numerosas aplicaciones prácticas y ha hecho posible muchas innovaciones modernas. Por ejemplo, el aprendizaje profundo es lo que usan los automóviles sin conductor para procesar imágenes y distinguir a los peatones de otros objetos de la carretera, o lo que usan los dispositivos de los hogares inteligentes para reconocer los comandos de voz.
El aprendizaje profundo es importante porque, a medida que aumentan los volúmenes de datos y la capacidad de proceso se hace más eficaz y asequible, las empresas de los sectores sanitario, de venta minorista, del transporte, la fabricación, la tecnología, etc. invierten en aprendizaje profundo para impulsar la innovación, generar nuevas oportunidades y seguir siendo relevantes.
Cómo funciona el aprendizaje profundo
El aprendizaje profundo se basa en arquitecturas de red neuronal de varias capas, unidades de procesamiento gráfico de alto rendimiento implementadas en la nube o en clústeres, y grandes volúmenes de datos etiquetados para lograr niveles muy altos de precisión en el reconocimiento de texto, voz e imágenes. Todo ese potencial puede ayudar a los desarrolladores a crear sistemas digitales con algo parecido a la inteligencia humana y optimizar el tiempo para obtener valor al reducir el tiempo de entrenamiento de los modelos de semanas a horas.
Por ejemplo, para el entrenamiento de un modelo de automóvil sin conductor se podrían necesitar miles de horas de vídeo y millones de imágenes. Sin el aprendizaje profundo, este nivel de entrenamiento no se podría hacer a gran escala.
¿Qué es un marco de aprendizaje profundo?
Para facilitar la implementación de los modelos de aprendizaje automático complejos, los desarrolladores recurren a marcos de aprendizaje profundo, como TensorFlow o PyTorch. Estos marcos simplifican el proceso de recopilación de datos que luego se pueden usar para entrenar redes neuronales. Además, se pueden usar aceleradores como ONNX Runtime con estos marcos para acelerar el entrenamiento y la inferencia de modelos.
Entrenamiento de modelos de aprendizaje profundo
Para entrenar modelos de aprendizaje profundo, hay diferentes estrategias y métodos. Veamos algunos de ellos con más detalle.
Aprendizaje supervisado
En el aprendizaje supervisado, un algoritmo se entrena con conjuntos de datos etiquetados. Esto significa que, cuando el algoritmo realiza una determinación sobre un fragmento de información, puede usar las etiquetas incluidas con los datos para comprobar si esa determinación es correcta. En el aprendizaje supervisado, los datos con los que se entrenan los modelos los deben proporcionar personas, que etiquetan los datos antes de usarlos para entrenar el algoritmo.
Aprendizaje no supervisado
Con el aprendizaje no supervisado, los algoritmos se entrenan con datos que no contienen etiquetas ni información que el algoritmo pueda usar para comprobar sus determinaciones. Lo que hace el sistema es ordenar y clasificar los datos en función de los patrones que reconoce por sí mismo.
Reforzar el aprendizaje
Con el aprendizaje de refuerzo, un sistema resuelve las tareas mediante la técnica de ensayo y error para tomar una serie de decisiones en una secuencia y lograr un resultado previsto incluso en un entorno que no es sencillo. Con el aprendizaje de refuerzo, el algoritmo no usa conjuntos de datos para hacer determinaciones, sino información que recopila de un entorno.
Aprendizaje de refuerzo profundo
Cuando se combinan técnicas de aprendizaje profundo y aprendizaje de refuerzo, crean un tipo de aprendizaje automático denominado aprendizaje de refuerzo profundo. El aprendizaje de refuerzo profundo utiliza la misma técnica de toma de decisiones por ensayo y error, y la misma consecución de objetivos complejos que el aprendizaje de refuerzo, pero se basa también en la funcionalidad del aprendizaje profundo para procesar y dar sentido a grandes cantidades de datos no estructurados.
¿Para qué se usa el aprendizaje profundo?
El aprendizaje profundo se usa en empresas de numerosos sectores para una amplia gama de casos de uso. Los siguientes son algunos ejemplos de cómo se usa normalmente el aprendizaje profundo:
Reconocimiento de imágenes, voz y emociones
El software de aprendizaje profundo se usa para aumentar la precisión del reconocimiento de imágenes, voz y emociones, y para habilitar la búsqueda de fotos, asistentes digitales personales, vehículos sin conductor, seguridad pública, seguridad digital y otras tecnologías inteligentes.
Experiencias adaptadas
Los servicios de streaming, los minoristas de comercio electrónico y otras empresas utilizan modelos de aprendizaje profundo para generar recomendaciones automatizadas de productos, películas, música u otros servicios, y para perfeccionar la experiencia de los clientes en función de su historial de compras, comportamientos anteriores y otros datos.
Bots de chat
Las empresas más hábiles utilizan el aprendizaje profundo en la creación de bots de chat online activados por voz o texto para atender preguntas frecuentes, transacciones rutinarias y, especialmente, para la atención al cliente. Reemplazan los equipos de agentes de servicio y las colas de clientes en espera por respuestas automatizadas, adecuadas contextualmente y útiles.
Asistentes digitales personales
Los asistentes digitales personales activados por voz usan el aprendizaje profundo para reconocer la voz, responder adecuadamente a las preguntas y los comandos en lenguaje natural e, incluso, bromear a veces.
Vehículos sin conductor
Los automóviles sin conductor, que son el representante no oficial de la inteligencia artificial y el aprendizaje profundo, usan algoritmos de aprendizaje profundo para procesar varias fuentes de distribución de datos dinámicas en milésimas de segundo, no tener que pedir indicaciones y reaccionar ante imprevistos, con más rapidez que un conductor humano.
Muchas empresas utilizan software de aprendizaje automático de código abierto para incorporar soluciones de aprendizaje profundo a sus organizaciones.
¿Qué son las redes neuronales?
Una red neuronal artificial (ANN) es una arquitectura digital que imita los procesos cognitivos humanos para modelar patrones complejos, desarrollar predicciones y reaccionar adecuadamente a estímulos externos. Los datos estructurados son necesarios para muchos tipos de aprendizaje automático. Sin embargo, las redes neuronales pueden interpretar eventos del mundo que las rodea como datos que pueden procesar.
Cada vez que lee un informe, ve una película, conduce un automóvil o huele una flor, miles de millones de neuronas de su cerebro procesan la información a través de pequeñas señales eléctricas. Cada neurona procesa las entradas y los resultados se le muestran a la siguiente neurona para que continúe procesándolos y, finalmente y de forma inmediata, producen una conclusión empresarial, una risita, una frenada o una pequeña alegría. En el aprendizaje automático, las redes neuronales permiten que los sistemas digitales interpreten y reaccionen a situaciones de la misma manera.
Una red ANN es como un cerebro lleno de neuronas digitales y, aunque la mayoría de las redes ANN son imitaciones rudimentarias de lo real, pueden procesar grandes volúmenes de datos no lineales para resolver problemas complejos que, de otro modo, podrían requerir la intervención humana. Por ejemplo, los analistas de los bancos pueden usar una red ANN para procesar las solicitudes de préstamos y predecir la probabilidad de que un solicitante no pague.
Qué se puede hacer con las redes neuronales
En el aprendizaje automático, las redes neuronales se usan para el aprendizaje y el modelado de entradas y salidas complejas y volátiles, deducir relaciones ocultas y realizar predicciones sin restricciones de distribución de datos. Los modelos de red neuronal son la base de muchas aplicaciones de aprendizaje profundo, como la visión artificial y el procesamiento de lenguaje natural, que pueden ayudar en la protección contra fraudes, el reconocimiento facial o los vehículos autónomos.
La mayoría de las empresas confían en la previsión como base para la toma de decisiones comerciales, estrategias de ventas, directivas financieras y el uso de recursos. Pero, con frecuencia, las limitaciones de la previsión tradicional dificultan la predicción de procesos dinámicos complejos, con varios factores subyacentes y, a menudo, ocultos, como los precios del mercado de valores. Los modelos de red neuronal de aprendizaje profundo ayudan a exponer relaciones no lineales complejas y factores ocultos del modelo, con el fin de que las empresas puedan desarrollar previsiones precisas para la mayoría de las actividades empresariales.
Redes neuronales comunes
Hay muchos tipos diferentes de redes neuronales de inteligencia artificial (ANN) y cada una de ellas está indicada para aplicaciones de aprendizaje profundo distintas. Use una red ANN adecuada para sus requisitos empresariales y tecnológicos. Estos son algunos ejemplos de redes neuronales de inteligencia artificial comunes:
Red neuronal convolucional (CNN)
Los desarrolladores utilizan una red CNN para ayudar a los sistemas de inteligencia artificial a convertir imágenes en matrices digitales. Las redes CNN, que se usan principalmente para la clasificación de imágenes y el reconocimiento de objetos, son adecuadas para el reconocimiento facial, la detección de temas y el análisis de sentimiento.
Red neuronal desconvolucional (DNN)
Si las señales de red complejas o de gran volumen se pierden o convolucionan con otras señales, una red DNN ayuda a encontrarlas. Las redes DNN son útiles para procesar imágenes de alta resolución y cálculos de flujo óptico.
Red generativa antagónica (GAN)
Los ingenieros usan una red GAN para entrenar modelos sobre cómo generar nueva información o material que imite las propiedades específicas de los datos de entrenamiento. Las redes GAN ayudan a los modelos a distinguir diferencias sutiles entre los originales y las copias para crear copias más auténticas. Entre los usos de las redes GAN, se incluyen la generación de imágenes y vídeos de alta fidelidad, el reconocimiento facial avanzado y la superresolución.
Red neuronal recurrente (RNN)
Una red RNN introduce datos en capas ocultas con retrasos de tiempo específicos. La informática de red tiene en cuenta la información histórica en los estados actuales, y las entradas más altas no cambian el tamaño del modelo. Las redes RNN son una buena opción para el reconocimiento de voz, la previsión avanzada, la robótica y otras cargas de trabajo de aprendizaje profundo complejas.
Transformadores
Los transformadores están diseñados para controlar los datos de entrada secuenciales. Sin embargo, no se limitan al procesamiento de los datos en un orden secuencial, sino que utilizan la atención, una técnica que permite a los modelos asignar distintos niveles de influencia a diferentes fragmentos de datos de entrada e identificar el contexto de los datos individuales en una secuencia de entrada. Esto permite un mayor nivel de paralelización, que puede reducir los tiempos de entrenamiento del modelo.
Aprendizaje automático frente a redes neuronales
Aunque las redes neuronales se consideran un subconjunto del aprendizaje automático, hay algunas diferencias importantes entre las redes neuronales y los modelos de aprendizaje automático normales.
Por un lado, las redes neuronales suelen ser más complejas y capaces de funcionar de una forma más independiente que los modelos de aprendizaje automático normales. Por ejemplo, una red neuronal puede determinar por sí misma si sus predicciones y resultados son precisos, mientras que un modelo de aprendizaje automático necesitaría la intervención de un ingeniero humano para hacer esa distinción.
Además, las redes neuronales están estructuradas para poder seguir aprendiendo y tomando decisiones inteligentes por sí solas. Los modelos de aprendizaje automático, en cambio, están limitados a la toma de decisiones basada únicamente en aquello con lo que se han entrenado específicamente.
Empiece a trabajar con el aprendizaje profundo en Azure
Permita el reconocimiento de imágenes con redes neuronales u optimice el procesamiento de lenguaje natural con modelos de NLP BERT rápidos, fáciles y precisos. Vea cómo crear, entrenar e implementar todos los tipos de modelos de aprendizaje profundo con Azure Machine Learning.
Explorar el aprendizaje automático para científicos de datos
Aprende a crear soluciones de aprendizaje automático a escala de nube en Azure y explora herramientas de aprendizaje automático para científicos de datos e ingenieros de aprendizaje automático.