Autor: Carlos Aizaga. En una nuevo número de #ArtículosVAC, presenta un tema relacionado a la inteligencia artificial y las redes neuronales. Para descargar el artículo en PDF, puedes hacer clic aquí.
El cerebro humano es un órgano complejo. En su interior, millones de neuronas se comunican entre sí, por intermedio de un mecanismo químico conocido como sinapsis, que no es otra cosa que el impulso nervioso que posibilita su comunicación.
Hoy en día, por medio de sistemas de software y hardware, es posible replicar dicho proceso. Esto es posible mediante una arquitectura muy similar, llamada redes neuronales.
Antes de hablar propiamente de redes neuronales es necesario conocer un poco sobre aprendizaje automático (machine learning), a partir de la evolución de la programación.
Los programas de computación tradicionales, diseñados con programación tradicional (human learning), se basan en sistemas lógicos: si ocurre A, sucede B; por lo que todos los posibles “outcomes” o respuestas son pre programados.
Ahora bien, el machine learning funciona sin una lógica específica o predeterminada, está diseñado para mirar y adaptarse en función a una determinada cantidad de información de partida.
Por ende, viene a ser un sistema adaptable por medio el cual las computadoras aprenden de sus errores y van mejorando de forma continua. En términos muy básicos, el machine learning viene a ser como aprendizaje a través de ejemplos.
Al igual que el cerebro humano, la característica diferenciadora es la capacidad de detectar patrones similares. A partir de todos estos inputso data inicial, comienza un proceso de categorización que sirve para generar determinados outputs.
A manera de ejemplo, vemos un determinado plato y, en función a todas las experiencias y aprendizajes que hemos tenido concierne a ese plato, podemos relacionar todas aquellas características que esa comida podría llegar a representar: sabor, temperatura, precio, etc.
Estas interconexiones, que permiten pasar de un input a un output, junto con todas las relaciones que existen de por medio, se conocen como redes neuronales. Como su nombre lo indica, estas redes están conformadas por neuronas artificiales, las cuales trabajan juntas para la resolución de un problema. Cada una de estas neuronas, se puede entender como una función o una unidad de aprendizaje, que, a partir de información previa u outputs de otras neuronas, genera todavía más outputs.
Una red neuronal simple se compone de tres tipos de neuronas artificiales, dispuestas en tres capas:
- Capa de entrada: es la encargada de tomar toda la información del mundo exterior, para posteriormente categorizar, procesar, clasificar, analizar y poder pasar a la otra capa
- Capa oculta: estas son las encargadas de tomar la información de la capa de entrada o de otras capas ocultas para procesarlas aún más.
- Capa de salida: viene a ser el resultado final del procesamiento de datos tanto de la capa de entrada y de cada una de las capas intermedias.
Las redes neuronales son importantes porque pueden ayudar a las computadoras a tomar decisiones inteligentes con asistencia humana limitada. Esto se debe, principalmente, a que pueden aprender y modelar las relaciones entre los datos de entrada y salida que no son lineales y que pueden llegar a ser complejos.
Amazon Web Services identifica varios de los casos de usos más comunes para las redes neuronales:
- 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.
De igual manera, entre sus más importantes campos de aplicación se encuentran: visión artificial (capacidad que tienen las computadoras para extraer información y conocimientos de imágenes y vídeos), reconocimiento de voz, procesamiento de lenguaje natural y en motores de recomendaciones.
El uso de redes neuronales en tecnología ha representado importantes ventajas durante los últimos años, siendo imprescindibles en un campo tan relevante como lo es la inteligencia artificial, con suficiente data y un correcto “entrenamiento” pueden llegar a significar grandes resultados en términos de resolución de problemas complejos, y soluciones precisas en plazos cortos de tiempo.
Se hace referencia a ¿Qué es una red neuronal?, Neural Networks for Dummies: a quick intro to this fascinating field y Neural Networks for Dummies: A Comprehensive Guide