¿Qué es una red neuronal?

Una red neuronal es un método de la inteligencia artificial que enseña a las computadoras a procesar datos de una manera que está inspirada en la forma en que lo hace el cerebro humano. Se trata de un tipo de proceso de machine learning llamado aprendizaje profundo, que utiliza los nodos o las neuronas interconectados en una estructura de capas que se parece al cerebro humano. Crea un sistema adaptable que las computadoras utilizan para aprender de sus errores y mejorar continuamente. De esta forma, las redes neuronales artificiales intentan resolver problemas complicados, como la realización de resúmenes de documentos o el reconocimiento de rostros, con mayor precisión.

¿Por qué son importantes las redes neuronales?

Las redes neuronales pueden ayudar a las computadoras a tomar decisiones inteligentes con asistencia humana limitada. Esto se debe a que pueden aprender y modelar las relaciones entre los datos de entrada y salida que no son lineales y que son complejos. Por ejemplo, pueden realizar las siguientes tareas.

Hacer generalizaciones y sacar conclusiones

Las redes neuronales pueden comprender datos no estructurados y hacer observaciones generales sin un entrenamiento explícito. Por ejemplo, pueden reconocer que dos oraciones de entrada diferentes tienen un significado similar:

  • ¿Puede explicarme cómo hacer el pago?
  • ¿Cómo puedo transferir dinero?

Una red neuronal sabría que ambas oraciones significan lo mismo. O sería capaz de reconocer, en términos generales, que Baxter Road es un lugar, pero que Baxter Smith es el nombre de una persona.

¿Para qué se utilizan las redes neuronales?

Las redes neuronales están presentes en varios casos de uso en muchos sectores, como los siguientes:

  • Diagnóstico médico mediante la clasificación de imágenes médicas
  • Marketing orientado mediante el filtrado de redes sociales y el análisis de datos de comportamiento
  • predicciones financieras mediante el procesamiento de datos históricos de instrumentos financieros
  • Previsión de la carga eléctrica y la demanda de energía
  • Proceso y control de calidad
  • Identificación de compuestos químicos

A continuación, presentamos cuatro de las aplicaciones más importantes de las redes neuronales.

Visión artificial

La visión artificial es la capacidad que tienen las computadoras para extraer información y conocimientos de imágenes y videos. Con las redes neuronales, las computadoras pueden distinguir y reconocer imágenes de forma similar a los humanos. La visión artificial tiene varias aplicaciones, como las siguientes:

  • Reconocimiento visual en los vehículos autónomos para que puedan reconocer las señales de tráfico y a otros usuarios del camino
  • Moderación de contenido para eliminar de forma automática los contenidos inseguros o inapropiados de los archivos de imágenes y videos
  • Reconocimiento facial para identificar rostros y reconocer atributos como ojos abiertos, gafas y vello facial
  • Etiquetado de imágenes para identificar logotipos de marcas, ropa, equipos de seguridad y otros detalles de la imagen

Reconocimiento de voz

Las redes neuronales pueden analizar el habla humana a pesar de los diferentes patrones de habla, el tono, el idioma y el acento. Los asistentes virtuales como Amazon Alexa y el software de transcripción automática utilizan el reconocimiento de voz para realizar tareas como las siguientes:

  • Asistir a los agentes de los centros de llamadas y clasificar las llamadas de forma automática
  • Convertir las conversaciones clínicas en documentación en tiempo real
  • Subtitular con precisión videos y grabaciones de reuniones para aumentar el alcance del contenido

Procesamiento de lenguaje natural

El procesamiento de lenguaje natural (PLN) es la capacidad de procesar texto natural creado por humanos. Las redes neuronales ayudan a las computadoras a obtener información y significado a partir de los datos y los documentos de texto. El PLN está presente en varios casos de uso, entre los que se incluyen los siguientes:

  • Chatbots y agentes virtuales automatizados
  • Organización y clasificación automáticas de datos escritos
  • Análisis de inteligencia empresarial de documentos con formato largo, como emails y formularios
  • Indexación de frases clave que indican sentimientos, como los comentarios positivos y negativos en las redes sociales
  • Resumen de documentos y producción de artículos para un tema determinado

Motores de recomendaciones

Las redes neuronales pueden hacer un seguimiento de la actividad del usuario para elaborar recomendaciones personalizadas. También pueden analizar todo el comportamiento de los usuarios y descubrir productos o servicios nuevos que interesen a un usuario específico. Por ejemplo, Curalate, una empresa emergente con sede en Filadelfia, ayuda a las marcas a convertir las publicaciones en las redes sociales en ventas. Las marcas utilizan el servicio de etiquetado inteligente de productos (IPT) de Curalate para automatizar la recopilación y la selección del contenido social que generan los usuarios. El IPT utiliza las redes neuronales para encontrar y recomendar de forma automática productos relevantes para la actividad del usuario en las redes sociales. Los consumidores no tienen que buscar en los catálogos en línea para encontrar un producto específico a partir de una imagen en las redes sociales. En cambio, pueden utilizar el etiquetado automático de productos de Curalate para comprar el producto con facilidad.

¿Cómo funcionan las redes neuronales?

El cerebro humano es lo que inspira la arquitectura de las redes neuronales. Las células del cerebro humano, llamadas neuronas, forman una red compleja y con un alto nivel de interconexión y se envían señales eléctricas entre sí para ayudar a los humanos a procesar la información. De manera similar, una red neuronal artificial está formada por neuronas artificiales que trabajan juntas para resolver un problema. Las neuronas artificiales son módulos de software, llamados nodos, y las redes neuronales artificiales son programas de software o algoritmos que, en esencia, utilizan sistemas informáticos para resolver cálculos matemáticos.

Arquitectura de una red neuronal simple

Una red neuronal básica tiene neuronas artificiales interconectadas en tres capas:

Capa de entrada

La información del mundo exterior entra en la red neuronal artificial desde la capa de entrada. Los nodos de entrada procesan los datos, los analizan o los clasifican y los pasan a la siguiente capa.

Capa oculta

Las capas ocultas toman su entrada de la capa de entrada o de otras capas ocultas. Las redes neuronales artificiales pueden tener una gran cantidad de capas ocultas. Cada capa oculta analiza la salida de la capa anterior, la procesa aún más y la pasa a la siguiente capa.

Capa de salida

La capa de salida proporciona el resultado final de todo el procesamiento de datos que realiza la red neuronal artificial. Puede tener uno o varios nodos. Por ejemplo, si tenemos un problema de clasificación binaria (sí/no), la capa de salida tendrá un nodo de salida que dará como resultado 1 o 0. Sin embargo, si tenemos un problema de clasificación multiclase, la capa de salida puede estar formada por más de un nodo de salida.

Arquitectura de una red neuronal profunda

Las redes neuronales profundas, o redes de aprendizaje profundo, tienen varias capas ocultas con millones de neuronas artificiales conectadas entre sí. Un número, denominado peso, representa las conexiones entre un nodo y otro. El peso es un número positivo si un nodo estimula a otro, o negativo si un nodo suprime a otro. Los nodos con valores de peso más altos tienen mayor influencia en los demás nodos.
En teoría, las redes neuronales profundas pueden asignar cualquier tipo de entrada a cualquier tipo de salida. Sin embargo, también necesitan mucho más entrenamiento en comparación con otros métodos de machine learning. Necesitan millones de ejemplos de datos de entrenamiento en lugar de los cientos o miles que podría necesitar una red más simple.

 

¿Cuáles son los tipos de redes neuronales?

Las redes neuronales artificiales pueden clasificarse en función de cómo fluyen los datos desde el nodo de entrada hasta el nodo de salida. A continuación, se indican varios ejemplos:

Redes neuronales prealimentadas

Las redes neuronales prealimentadas procesan los datos en una dirección, desde el nodo de entrada hasta el nodo de salida. Todos los nodos de una capa están conectados a todos los nodos de la capa siguiente. Una red prealimentada utiliza un proceso de retroalimentación para mejorar las predicciones a lo largo del tiempo.

Algoritmo de retropropagación

Las redes neuronales artificiales aprenden de forma continua mediante el uso de bucles de retroalimentación correctivos para mejorar su análisis predictivo. En pocas palabras, puede pensar en los datos que fluyen desde el nodo de entrada hasta el nodo de salida a través de muchos caminos diferentes en la red neuronal. Solo un camino es el correcto: el que asigna el nodo de entrada al nodo de salida correcto. Para encontrar este camino, la red neuronal utiliza un bucle de retroalimentación que funciona de la siguiente manera:

  1. Cada nodo intenta adivinar el siguiente nodo de la ruta.
  2. Se comprueba si la suposición es correcta. Los nodos asignan valores de peso más altos a las rutas que conducen a más suposiciones correctas y valores de peso más bajos a las rutas de los nodos que conducen a suposiciones incorrectas.
  3. Para el siguiente punto de datos, los nodos realizan una predicción nueva con las trayectorias de mayor peso y luego repiten el paso 1.

Redes neuronales convolucionales

Las capas ocultas de las redes neuronales convolucionales realizan funciones matemáticas específicas, como la síntesis o el filtrado, denominadas convoluciones. Son muy útiles para la clasificación de imágenes porque pueden extraer características relevantes de las imágenes que son útiles para el reconocimiento y la clasificación de imágenes. La forma nueva es más fácil de procesar sin perder características que son fundamentales para hacer una buena predicción. Cada capa oculta extrae y procesa diferentes características de la imagen, como los bordes, el color y la profundidad.

¿Cómo entrenar las redes neuronales?

El entrenamiento de redes neuronales es el proceso de enseñar a una red neuronal a realizar una tarea. En principio, las redes neuronales aprenden procesando varios conjuntos grandes de datos etiquetados o sin etiquetar. Debido a que utilizan estos ejemplos, pueden procesar entradas desconocidas con mayor precisión.

Aprendizaje supervisado

En el aprendizaje supervisado, los científicos de datos proporcionan a las redes neuronales artificiales conjuntos de datos etiquetados que ofrecen la respuesta correcta por adelantado. Por ejemplo, una red de aprendizaje profundo que se entrena sobre el reconocimiento facial, en un principio, procesa cientos de miles de imágenes de rostros humanos, con varios términos relacionados con el origen étnico, el país o la emoción que describen a cada imagen.

La red neuronal aumenta lentamente el conocimiento a partir de estos conjuntos de datos, que proporcionan la respuesta correcta por adelantado. Una vez que se entrena la red, comienza a adivinar el origen étnico o la emoción de una imagen nueva de un rostro humano que nunca antes ha procesado.

¿Qué es el aprendizaje profundo en el contexto de las redes neuronales?

La inteligencia artificial es el campo de las ciencias de la computación que investiga métodos para dar a las máquinas la capacidad de realizar tareas que requieren inteligencia humana. El machine learning es una técnica de inteligencia artificial que otorga a las computadoras acceso a conjuntos de datos muy grandes y les enseña a aprender de estos datos. El software de machine learning encuentra patrones en los datos existentes y los aplica a datos nuevos para tomar decisiones inteligentes. El aprendizaje profundo es un subconjunto del machine learning que utiliza las redes de aprendizaje profundo para procesar los datos.

Comparación entre machine learning y aprendizaje profundo

Los métodos tradicionales de machine learning requieren la intervención humana para que el software de machine learning funcione suficientemente bien. Un científico de datos determina de forma manual el conjunto de características relevantes que el software debe analizar. Esto limita la capacidad del software, lo que hace que su creación y administración sean tediosas.

Por otro lado, en el aprendizaje profundo, el científico de datos solo proporciona datos sin procesar al software. La red de aprendizaje profundo obtiene las características por sí misma y aprende de forma más independiente. Puede analizar conjuntos de datos no estructurados como documentos de texto, identificar qué atributos de los datos deben priorizarse y resolver problemas más complejos.

Por ejemplo, si se entrenara un software de machine learning para identificar la imagen de una mascota de forma correcta, debería seguir estos pasos:

  • Encontrar y etiquetar de forma manual miles de imágenes de mascotas, como gatos, perros, caballos, hámsters, loros, etc.
  • Indicar al software de machine learning qué características debe buscar para poder identificar la imagen mediante la eliminación. Por ejemplo, podría contar el número de patas, comprobar la forma de los ojos, la forma de las orejas, la cola, el pelo, etc.
  • Evaluar y cambiar de forma manual los conjuntos de datos etiquetados para mejorar la precisión del software. Por ejemplo, si su conjunto de entrenamiento cuenta con demasiadas fotos de gatos negros, el software identificará de forma correcta a un gato negro pero no a uno blanco.
  • En el aprendizaje profundo, sin embargo, las redes neuronales procesarían todas las imágenes y determinarían de forma automática que necesitan analizar primero el número de patas y la forma de la cara, y mirar las colas en último lugar para identificar con éxito el animal en la imagen.

¿Cuáles son los servicios de aprendizaje profundo en AWS?

Los servicios de aprendizaje profundo de AWS aprovechan la potencia de la computación en la nube de modo que sea posible escalar las redes neuronales de aprendizaje profundo a un costo menor, así como optimizarlas para que sean más rápidas. También puede utilizar servicios de AWS como estos para administrar por completo las aplicaciones específicas de aprendizaje profundo:

  • Amazon Rekognition permite agregar características de visión artificial entrenadas previamente o personalizables a la aplicación.
  • Amazon Transcribe permite reconocer y transcribir de forma automática el habla con precisión.
  • Amazon Lex para crear chatbots inteligentes que comprendan la intención, mantengan el contexto conversacional y automaticen tareas simples en muchos idiomas.

Comience a utilizar las redes neuronales de aprendizaje profundo en AWS con Amazon SageMaker y cree, entrene y despliegue modelos a escala con rapidez y facilidad. También puede utilizar las AMI de aprendizaje profundo de AWS para crear entornos y flujos de trabajo personalizados para el aprendizaje profundo.

Cree una cuenta de AWS gratuita para comenzar hoy mismo.

Siguientes pasos de AWS