//

viernes, 1 de noviembre de 2024

Tratando de emular al cerebro humano

La Inteligencia Artificial es un área de la Informática que está integrada por varias disciplinas, entre ellas, las redes neuronales artificiales....

Carlos Enrique del Porto Blanco en Exclusivo 28/01/2020
0 comentarios
Redes Neuronales artificiales
Las redes neuronales artificiales se han utilizado también para el diagnóstico de varios tipos de cáncer. (Tomada de tynmagazine.com)

La Inteligencia Artificial es un área de la Informática que está integrada por varias disciplinas, sobre una de ellas se hablará en esta entrega, las redes neuronales artificiales.

Estas son un modelo computacional vagamente inspirado en el comportamiento observado en su homólogo biológico. Consiste en un conjunto de unidades de software, llamadas neuronas artificiales, conectadas entre sí para transmitirse señales. La información de entrada atraviesa la red neuronal (donde se somete a diversas operaciones) produciendo valores de salida.

Cada neurona está conectada con otras a través de enlaces, en los que el valor de salida de la neurona anterior es multiplicado por un valor de peso, los cuales pueden incrementar o disminuir el estado de activación de las neuronas adyacentes. Del mismo modo, a la salida de cada neurona, existe una función que impone un límite que se debe sobrepasar antes de propagarse a otra neurona.

Esos sistemas aprenden por sí mismos, en lugar de ser programados de forma explícita, y sobresalen en áreas donde la detección de soluciones o características es difícil de expresar con la programación convencional. Los valores de los pesos de las neuronas se actualizan buscando reducir el valor de la función de pérdida. El objetivo de la red neuronal es resolver los problemas de la misma manera que el cerebro humano.

Las redes neuronales se han utilizado para resolver una amplia variedad de tareas, como la visión por computadoras y el reconocimiento de voz, que son difíciles de resolver usando la ordinaria programación basado en reglas. Históricamente, el uso de modelos de redes neuronales marcó un cambio de dirección, de alto nivel, a finales de los años ochenta, que se caracteriza por sistemas expertos con conocimiento incorporado en “si-entonces las reglas”.

Las áreas de aplicación incluyen la identificación de sistemas y el control (control del vehículo, predicción de trayectorias, el control de procesos, manejo de recursos naturales), la química cuántica, juegos y la toma de decisiones (ajedrez, póquer y otros), el reconocimiento de patrones (sistemas radar, reconocimiento facial, clasificación de señales, reconocimiento de objetos y más), de reconocimiento de secuencia (gesto, voz, reconocimiento de texto escrito a mano), diagnóstico médico, aplicaciones financieras (por ejemplo, sistemas automatizados de comercio, minería de datos (o descubrimiento de conocimiento en bases de datos), la visualización, traducción automática, diferenciando entre informes deseados y no deseados en redes sociales, prevención de spam (correo basura) de correo electrónico.

Las redes neuronales artificiales se han utilizado también para el diagnóstico de varios tipos de cáncer. Un sistema de detección de cáncer de pulmón híbrido basado en redes neuronales ha mejorado la precisión del diagnóstico y la efectividad del tratamiento. Esas redes también se han utilizado para diagnosticar el cáncer de próstata. Los diagnósticos se pueden utilizar para hacer modelos específicos tomados de un gran grupo de pacientes en comparación con la información de un paciente dado. Las redes neuronales podrían predecir el resultado de un paciente con cáncer colo-rectal con más precisión que los métodos clínicos actuales.

UN POCO DE HISTORIA

Warren McCulloch y Walter Pitts crearon en 1943 un modelo informático para redes neuronales, que se llamó lógica umbral, basada en las matemáticas y los algoritmos. Ese modelo señaló el camino para que la investigación de redes neuronales se dividiera en dos enfoques distintos. Uno se centró en los procesos biológicos en el cerebro y el otro en la aplicación de redes neuronales para la inteligencia artificial.

A finales de la década de 1940 el psicólogo Donald Hebb creó una hipótesis de aprendizaje basado en el mecanismo de plasticidad neuronal, ahora conocido como aprendizaje de Hebb, un “típico” aprendizaje no supervisado. Los investigadores empezaron a aplicar esas ideas a los modelos computacionales en 1948 con la sugerencia de Turing, de que el córtex humano infantil es lo que llamaba “máquina desorganizada” (también conocido como “máquina Turing Tipo B”). Frank Rosenblatt en 1958 creó el perceptrón, un algoritmo de reconocimiento de patrones basado en una red de aprendizaje de computadora de dos capas, que utilizaba suma y resta simples. El primer reporte sobre redes funcionales multicapas fue publicado en 1965 y se conoce como el método de agrupamiento para el manejo de datos. La investigación de redes neuronales se estancó después de la publicación de la investigación de aprendizaje automático por Marvin Minsky y Seymour Papert en 1969, que descubrió dos cuestiones fundamentales con las máquinas computacionales que procesan las redes neuronales. La primera fue que los perceptrones básicos eran incapaces de procesar el circuito de o-exclusivo. La segunda cuestión importante era que las computadoras no tenían suficiente poder de procesamiento para manejar eficazmente el gran tiempo de ejecución requerido por las grandes redes neuronales.

Un avance clave posterior fue el algoritmo de propagación hacia atrás que resuelve eficazmente el problema de o-exclusivo, y en general el problema del entrenamiento rápido de redes neuronales de múltiples capas. El proceso de propagación hacia atrás utiliza la diferencia entre el resultado producido y el resultado deseado para cambiar los “pesos” de las conexiones entre las neuronas artificiales.

Se han creado dispositivos computacionales, tanto para la simulación biofísica como para la computación neuromórfica. Esfuerzos recientes se muestran prometedores para la creación de nanodispositivos para análisis de componentes principales de gran escala. Si tiene éxito, se crearía una nueva clase de computación neuronal, ya que depende de aprendizaje automático en lugar de la programación.

Entre 2009 y 2012, las redes neuronales recurrentes y redes neuronales profundas feedforward, desarrollados en un grupo de investigación del laboratorio suizo de Inteligencia Artificial IDSIA, ganaron ocho concursos internacionales de reconocimiento de patrones y aprendizaje automático. Por ejemplo, han superado el rendimiento humano en los puntos de referencia importantes, tales como el reconocimiento de señales de tráfico o el problema de clasificación de dígitos escritos a mano o ayudar a encontrar moléculas que podrían conducir a nuevos medicamentos.

Hay tres grandes paradigmas de aprendizaje, donde cada uno corresponde a una tarea de aprendizaje abstracto en particular. Ellos son el aprendizaje supervisado, el aprendizaje no supervisado y el aprendizaje por refuerzo.

En el aprendizaje supervisado se da una serie de ejemplos de pares (x,y) y el objetivo es encontrar una función en la clase permitida de funciones que se corresponda con los ejemplos. En otras palabras, se desea inferir el mapeo derivado de los datos; la función de costo está relacionada con la falta de coincidencia entre el mapeo original y los datos, y contiene implícitamente el conocimiento previo sobre el dominio del problema.

Tareas que caen dentro del paradigma de aprendizaje supervisado son el reconocimiento de patrones (conocido como clasificación) y regresión (conocido como aproximación de función). El paradigma de aprendizaje supervisado es aplicable también a los datos secuenciales (por ejemplo, reconocimiento del habla, de la escritura manuscrita y de gestos). Esto se puede considerar como una forma de aprendizaje con un “maestro”, en la forma de una función que proporciona información continua sobre la calidad de las soluciones obtenidas hasta el momento.

En el aprendizaje no supervisado, algunos datos X se dan y la función de costo, que se reduce al mínimo, puede ser cualquier función de los datos y la salida de la red. La función de costo depende de la tarea que se trata de modelar y las propiedades del modelo, sus parámetros y las variables observadas. Tareas que caen dentro del paradigma de aprendizaje no supervisado son la estimación de problemas; las aplicaciones incluyen el agrupamiento, la estimación de distribuciones estadísticas, la compresión de datos y el filtrado bayesiano de spam.

En el aprendizaje por refuerzo los datos X por lo general no se dan, pero se generan por la interacción de un agente con el medio ambiente. En cada punto en el tiempo, el agente realiza una acción y el medio ambiente genera una observación y un costo instantáneo. De acuerdo con algunas dinámicas (por lo general desconocidas). El objetivo es descubrir una política para la selección de las acciones que minimiza el costo a largo plazo, por ejemplo, el coste acumulativo esperado. La dinámica del medio ambiente y el coste a largo plazo para cada política general son desconocidos, pero pueden ser estimados. El objetivo es descubrir la política que minimice el costo. Estas redes neuronales se utilizan con frecuencia en el aprendizaje de refuerzo como parte del algoritmo general y se aplican a problemas no lineales y multi-dimensionales, tales como los implicados en enrutamiento de vehículos, gestión de los recursos naturales o la medicina debido a la capacidad de las redes neuronales para mitigar las pérdidas de precisión. Algunas tareas que caen dentro del paradigma de aprendizaje por refuerzo son problemas de control, juegos y otras secuenciales tareas.

En Cuba, desde los años 90 se han obtenido desarrollos con el uso de estas herramientas, fundamentalmente en las universidades de La Habana, Tecnológica de La Habana y de Las Villas, así como en el Instituto de Cibernética, Matemática y Física, Icimaf, los cuales se han aplicado a diferentes procesos productivos y de servicios.

Ah, recuerden, si me ven en algún lugar, me saludan.


Compartir

Carlos Enrique del Porto Blanco

Ingeniero en Sistemas Automatizados de Dirección y máster en Ciencias de la Computación


Deja tu comentario

Condición de protección de datos