La Inteligencia Artificial (IA) es la combinación de algoritmos planteados con el propósito de crear máquinas que presenten las mismas capacidades que el ser humano. Una tecnología que todavía nos resulta lejana pero que desde hace unos años está presente en nuestro día a día a todas horas.
Dentro de la Inteligencia Artificial podemos encontrar muchas ramas diferentes. En la figura podemos ver unas cuantas.
En la imagen podemos ver cómo funciona una neurona artificial
El perceptrón ha sido un gran avances dentro del campo de la inteligencia artificial, en el aprendizaje profundo o deep learning. Es un algoritmo que inventó Frank Rosenblatt en 1958 que permitía el entrenamiento de una sola neurona artificial. Es un algoritmo de aprendizaje supervisado, por funciones que deciden si un objeto pertenece o no a una clase específica, en función de los datos de entrada representados por un vector numérico.
El perceptrón es un algoritmo clasificador llamado threshold function o función de umbral, siendo este una sola neurona, donde actúa como una función matemática de suma ponderada añadiéndole un bias, definiéndose como el comportamiento de una regresión lineal.
Las redes neuronales que operan en dos o tres capas de neuronas conectadas se conocen como redes neuronales superficiales. Combina diversas capas de procesamiento y utiliza elementos simples que operan en paralelo, y están inspiradas en los sistemas nerviosos biológicos. Consta de una capa de entrada, una o varias capas ocultas y una capa de salida
Una red neuronal utiliza elementos simples que operan en paralelo, y están inspiradas en los sistemas nerviosos biológicos. Consta de una capa de entrada, una o varias capas ocultas y una capa de salida. Las capas están interconectadas mediante neuronas artificiales; y cada capa utiliza la salida de la capa anterior como entrada.
El concepto de deep learning surge cuando se tienen muchas capas, incluso cientos de ellas. Son técnicas de machine learning que aprenden directamente de los datos introducidos. Es una forma de aprendizaje automático, donde una máquina intenta imitar al cerebro humano utilizando redes neuronales artificiales con más de tres capas que le permiten hacer predicciones con una gran precisión.
A una red se le llama Deep Learning o aprendizaje profundo cuando tiene más de tres capas.
Se adapta bien a aplicaciones de identificación complejas, tales como el reconocimiento facial, la traducción de textos y el reconocimiento de voz. También en conducción asistida, la asignación de carriles y el reconocimiento de señales de tráfico.
Algunas técnicas frecuentes de machine learning para diseñar aplicaciones de redes neuronales son el aprendizaje supervisado y el no supervisado, la clasificación, la regresión, el reconocimiento de patrones y el clustering.
Las redes neuronales supervisadas se entrenan para producir las salidas deseadas como respuesta a una entrada, por lo que resultan muy útiles para modelar y controlar sistemas dinámicos, clasificar datos con ruido y predecir eventos futuros.
Los modelos de regresión describen la relación entre una variable de respuesta, salida y una o varias variables de predicción, entrada.
El reconocimiento de patrones es un componente importante de las aplicaciones de redes neuronales en visión artificial, procesamiento de radar, reconocimiento de voz y clasificación textual. Funciona mediante la clasificación de los datos de entrada en objetos o clases en función de características clave, ya sea mediante la clasificación supervisada o no supervisada.
En la visión artificial, se emplean técnicas de reconocimiento de patrones supervisado para el reconocimiento óptico de caracteres (OCR), la detección facial, el reconocimiento facial, la detección de objetos y la clasificación de objetos.
En el procesamiento de imágenes y la visión artificial, se emplean técnicas de reconocimiento de patrones no supervisado para la detección de objetos y la segmentación de imágenes.
Las redes neuronales no supervisadas se entrenan permitiendo que la red neuronal se autoajuste continuamente a las nuevas entradas. Se emplean para inferir información a partir de conjuntos de datos que constan de datos de entrada sin respuestas etiquetadas. Se pueden utilizar para descubrir distribuciones naturales, categorías y relaciones entre categorías en los datos.