Monografias | Redes neuronales artificiales - Fundamentos, modelos y aplicacionesRedes neuronales artificiales - Fundamentos, modelos y aplicacionesResumen: Panorama Histórico. El Modelo Biológico. Elementos de una Red Neuronal Artificial. Estructura de una Red Neuronal Artificial. Características de las Redes Neuronales. Implementación de las Redes Neuronales. Ventajas de las Redes Neuronales. Tipos de Redes Neuronales. Aplicaciones de las Redes Neuronales. Redes Neuronales y Control. Futuro. Indice
Existe actualmente una gran tendencia a establecer un nuevo
campo de la computación que integraría los diferentes métodos de resolución
de problemas que no pueden ser descritos fácilmente mediante un enfoque algorítmico
tradicional. Estos métodos tienen su origen en la emulación de sistemas
biologicos. Se trata de una nueva forma de computación que es capaz de manejar
las impresiciones e incertidumbres de problemas relacionados con el mundo real
(reconocimiento de formas, toma de decisiones, etc.). Para ello se dipone de un
conjunto de metodologías como la Logica Borrosa, el Razonamiento Aproximado, la
Teoria del Caos y las Redes Neuronales, tema central de este documento. Palabras Clave: Máquinas Inteligentes. Máquinas que realizan con cierto
éxito funciones típicas de los seres humanos. Inteligencia Artificial. Capacidad de un artefacto de
realizar los mismos tipos de funciones que caracterizan al pensamiento humano. Con las Redes Neuronales se busca la solución de problemas
complejos, no como una secuencia de pasos, sino como la evolución de unos
sistemas de computación inspirados en el cerebro humano, y dotados por tanto de
cierta "inteligencia", los cuales no son sino la combinación de
elementos simples de proceso (neuronas - se dará una visión rápida sobre el
funcionamiento de las mismas en los seres vivos-) interconectados, que operando
de forma paralela en varios estilos que serán analizados detalladamente,
consiguen resolver problemas relacionados con el reconocimiento de formas o
patrones, predicción, codificación, control y optimización entre otras
aplicaciones que finalizarán con este documento. FUNDAMENTOS DE LAS REDES NEURONALES Conseguir, diseñar y construir máquinas capaces de realizar
procesos con cierta inteligencia ha sido uno de los principales objetivos y
preocupaciones de los científicos a lo largo de la historia. Sin embargo a
pesar de disponer de herramientas y de lenguajes de programación diseñados
para el desrrollo de máquinas inteligentes, existe un problema de fondo que
limita los resultados: estas máquinas se implementan sobre ordenadores basados
en la filosofía de Von Neumann, y se apoyan en una descripción secuencial del
proceso de tratamiento de la información. Las primeras explicaciones teóricas sobre el cerebro y el
pensamiento fuerón dadas por algunos filósofos griegos, como Platón y Aristóteles,
quienes fuerón apoyados despúes por Descartes y filósofos empiristas. Alan Turing, en 1936, fue el primero en estudiar el cerebro
como una forma de ver el mundo de la computación, pero quienes primero
concibierón algunos fundamentos de la computación neuronal fuerón Warren
McCulloch y Walter Pitts, despúes otras teorias iniciales fuerón expuestas por
Donald Hebb. Pero solo hasta 1957 Frank Rosenblatt comenzó el desarrollo del
Perceptrón, la red neuronal más antigua de la que me encargaré
posteriormente. Más adelante apareció el modelo ADALINE, desarrollado por
Bernard Widrow y Marcial Hoff. Stephen Grossberg realizó Avalancha en 1967, hasta 1982 el
crecimiento se frenó pero surgierón luego investigaciones sobre redes como la
de Marvin Minsky y Seymour Papert, despúes James Anderson desarrollo el
Asociador Lineal, en Japón Kunihiko Fukushimika y Teuvo Kohonen que se centrarón
en redes neuronales para el reconocimiento de patrones; en USA John Hopfield
tambien realizó importantes investigaciones. Desde 1985 comenzarón a consolidarse los congresos más
importantes como Neuronal Networks for Computing, la Neural Information
Processing Systems, entre algunas otras. Actualmente, son numerosos los trabajos que se realizan y
publican. Revistas como Neural Networks, Transactions on Neural Networks, entre
otros, son las encargadas de la publicación de los últimos avances. El Departamento de Defensa de los Estados Unidos, la Sociedad
Europea de Redes Neuronales son algunos de los ejemplos del resurgir de la
investigación sobre redes neuronales. La teoría y modelado de resdes neuronales está inspirada en
la estructura y funcionamiento de los sistemas nerviosos, donde la neurona es el
elemento fundamental. En general, una neurona consta de un cuerpo celular más o
menos esférico, de 5 a 10 micras de diámetro, del que salen una rama
principal, el axón, y varias ramas más cortas, llamadas dendritas. Una de las características de las neuronas es su capacidad
de comunicarse. En términos generales las dendritas y el cuerpo celular reciben
señales de entrada; el cuerpo celular las combina e integra y emite señales de
salida. El axón transmite dichas señales a los terminales axónicos, que
distribuyen información o un nuevo conjunto de neuronas, se calcula que en el
cerebro humano existen del orden de 1015 conexiones. Las señales que se utilizan son de dos tipos: eléctrica y
química. La señal generada por la neurona y transportada a lo largo del axón
es un implso eléctrico, mientras que la señal que se transmite entre los
terminales axónicos de una neurona y las dendritas de la otra es de origen químico. Para establecer una similitud directa entre la actividad sináptica
y la analogía con las redes neuronales artificiales podemos considerar: Las señales
que llegan a la sinapsis son las entradas a la neurona; estas son ponderadas
(atenuadas o simplificadas) a través de un parámetro, denominado peso asociado
a la sinapsis correspondiente. Estas señales de entrada pueden excitar a la
neurona (sinapsis con peso positivo) o inhibirla (peso negativo). El efecto es
la suma de las entradas ponderadas. Si la suma es igual o mayor que el umbral de
la neurona, entonces la neurona se activa (da salida). Esta es una situación de
todo o nada; cada neurona se activa o no se activa. La facilidad de transmisión
de señales se altera mediante la actividad del sistema nervioso. Las sinapsis
son suceptibles a la fatiga, deficiencia de oxígeno y la presencia de anestésicos,
entre otro. Esta habilidad de ajustar señales es un mecanismo de aprendizaje. Elementos de una Red Neuronal Artificial Las redes neuronales artificiales (RNA) son modelos que
intentan reproducir el comportamiento del cerebro. Como tal modelo, realiza una
simplificación, averiguando cuáles son los elementos relevantes del sistema,
bien bien porque la cantidad de información de que se dispone es excesiva o
bien porque es redundante. Una elección adecuada de sus características, más
una estructura conveniente, es el procedimiento convencional utilizado para
construir redes capaces de realizar determinada tarea.
Se conoce como capa o nivel a un conjunto de neuronas
cuyas entradas provienen de la misma fuente y cuyas salidas se dirigen al
mismo destino. Existen cuatro funciones de transferencia típicas que
determinan distintos tipos de neuronas:
Estructura de una Red Neuronal
Artificial Anteriormente ya se estipuló que la distribución de
neuronas dentro de la red se realiza formando niveles o capas de un número
determinado de neuronas cada una, y que existen capas de entrada, de salida, y
ocultas, ahora veamos las formas de conexión entre neuronas. Cuando ninguna salida de las neuronas es entrada de neuronas
del mismo nivel o de niveles precedentes, la red se describe como de propagación
hacia adelante. Cuando las salidas pueden ser conectadas como entradas de
neuronas de niveles previos o del mismo nivel, incluyendose ellas mismas, la red
es de propagación hacia atrás. Características de las Redes Neuronales Existen cuatro aspectos que caracterizan una red neuronal: su
topología, el mecanismo de aprendizaje, tipo de asociación realizada entre la
información de entrada y salida, y la forma de representación de estas
informaciones.
Redes Monocapa: Se establecen conexiones laterales, cruzadas o
autorrecurrentes entre las neuronas que pertenecen a la única capa que
constituye la red. Se utilizan en tareas relacionadas con lo que se conoce
como autoasociación; por ejemplo, para generar informaciones de entrada que
se presentan a la red incompletas o distorsionadas. Redes Multicapa: Son aquellas que disponen de conjuntos
de neuronas agrupadas en varios niveles o capas. Una forma de distinguir la
capa a la que pertenece la neurona, consiste en fijarse en el origen de las
señales que recibe a la entrada y el destino de la señal de salida. Según
el tipo de conexión, como se vio previamente, se distinguen las redes
feedforward, y las redes feedforward/feedback.
Un criterio para diferenciar las reglas de aprendizaje se
basa en considerar si la red puede aprender durante su funcionamiento
habitual, o si el aprendizaje supone la desconexión de la red. Otro criterio suele considerar dos tipos de reglas de
aprendizaje: las de aprendizaje supervisado y las correspondientes a un
aprendizaje no supervisado, estas reglas dan pie a una de las clasificaciones
que se realizan de las RNA: Redes neuronales con aprendizaje supervisado y
redes neuronales con aprendizaje no supervisado. La diferencia fundamental
entre ambos tipos estriba en la existencia o no de un agente externo
(supervisor) que controle el aprendizaje de la red. Redes con Aprendizaje Supervisado. El proceso de
aprendizaje se realiza mediante un entrenamiento controlado por un agente
externo (supervisor, maestro) que determina la respuesta que debería generar
la red a partir de una entrada determinada. El supervisor comprueba la salida
de la red y en el caso de que ésta no coincida con la deseada, se procederá
a modificar los pesos de las conexiones, con el fin de conseguir que la salida
se aproxime a la deseada. Se consideran tres formas de llevar a cabo este tipo de
aprendizaje: Redes con Aprendizaje No Supervisado. Estas redes no
requieren influencia externa para ajustar los pesos de las conexiones entre
neuronas. La red no recibe ninguna información por parte del entorno que le
indique si la salida generada es o no correcta, asi que existen varias
posibilidades en cuanto a la interpretación de la salida de estas redes. En algunos casos, la salida representa el grado de
familiaridad o similitud entre la información que se le está presentando en
la entrada y las informaciones que se le han mostrado en el pasado. En otro
caso podría realizar una codificación de los datos de entrada, generando a
la salida una versión codificada de la entrada, con menos bits, pero
manteniendo la información relevante de los datos, o algunas redes con
aprendizaje no supervisado lo que realizan es un mapeo de características,
obteniendose en las neuronas de salida una disposición geométrica que
representa un ,apa topográfico de las características de los datos de
entrada, de tal forma que si se presentan a la red informacikones similares,
siempre sean afectadas neuronas de salidas próximas entre sí, en la misma
zona del mapa.. En general en este tipo de aprendizaje se suelen considerar
dos tipos: Estos dos mecanismos de asociación de asociación dan
lugar a dos tipos de redes neuronales: las redes heteroasosciativas y laas
autoasociativas. Una red heteroasociativa podría considerarse aquella que
computa cierta función, que en la mayoría de los casos no podrá
expresarse analíticamente, entre un conjunto de entradas y un conjunto de
salidas, correspondiendo a cada posible entrada una determinada salida.
Existen redess heteroasociativas con conexiones feedforward,
feedforward/feedback y redes con conexiones laterales. Tambien existen redes
heteroasociativas multidimensionales y su aprendizaje puede ser supervisado
o no supervisado. Por otra parte, una red autoasociativa es una red cuya
principal misión es reconstruir una determinada información de entrada que
se presenta incomp´leta o distorsionada (le asocia el dato almacenado más
parecido). Pueden implementarse con una sola capa, existen conexiones
laterales o tambien autorrecurrentes, habitualmente son de aprendizaje no
supervisado.
Implementación de las Redes
Neuronales En la búsqueda de sistemas inteligentes en general, se ha
llegado a un importante desarrollo del software, dentro de esta línea se
encuentran algunos de los neurocomputadores más conocidos. Un neurocomputador
es básicamente un conjunto de procesadores conectados con cierta regularidad
que operan concurrentemente. En la actualidad ya existen un serie de
neurocomputadores comerciales destinados a la realización de redes neuronales.
Por otro lado la realización de RNA puede llevarse a cabo por medio de uno o
varios circuitos integrados específicos, para así poder obtener una estructura
que se comporte lo más similar posible a como lo haría una red neuronal. Otra
tecnología que podría ser apropiada en la implementación de las redes
neuronales es la tecnología electroóptica, con la ventaje de utilizar la luz
como medio de transporte de la información, permitiendo la transmición, masiva
de datos. Otro método es la realización de redes neuronales a través
de arquitecturas orientadas a la ejecución de procesos con un alto de
paralelismo, tales como redes de transputers, arquitecturas sistólicas, etc.
Este método es una optimización del anterior, ya que el acelera el proceso,
permitiendo una respuesta en tiempo real, pero el comportamiento real de la
red sigue siendo simulado por una estructura ajena a la estructura intrínseca
de una red neuronal. Una tercera aproximación radicalmente distinta es la
realización de redes neuronales mediante su implementación por uno o varios
circuitos integrados específicos. Son los llamados chips neuronales. Las
neuronas y las conexiones se emulan con dispositivos específicos, de forma
que la estructura del circuito integrado refleja la arquitectura de la red. Se
consigue de esta forma realizaciones que funcionan a alta velocidad, pero a
costa de una pérdida notable de velocidad.. Algunos de los productos comerciales son: ANSim (DOS),
ExpertNet (DOS, Windows), Neuralesk (Windows), Neuralworks Pro II/Plus (DOS,
OS/2, UNIX, VMS) Los de propósito especial han sido diseñados para
implementar un modelo específico de red neuronal. Ventajas de las Redes Neuronales En el proceso de aprendizaje, los enlaces ponderados de
las neuronas se ajustan de manera que se obtengan unos resultados específicos.
Una RNA no necesita un algoritmo para resolver un problema, ya que ella
puede generar su propia distribución de los pesos de los enlaces mediante
el aprendizaje. Tambien existen redes que continúan aprendiendo a lo largo
de su vida, despúes de completado e periodo inicial de entrenamiento. La función del diseñador es únicamente la obtención
de la arquitectura apropiada. No es problema del diseñador el cómo la red
aprenderá a dioscriminar; sin embargo, si es necesario que desarrolle un
buen algoritmo de aprendizaje que proporcione la capacidad de discriminar de
la red mediante un entrenamiento con patrones.
Hay dos aspectos distintos respecto a la tolerancia a
fallos: primero, las redes pueden aprender a reconocer patrones con ruido,
distorsionados, o incompleta. Segundo pueden seguir realizando su función
(con cierta degradación) aunque se destruya parte de la red. La razón por la que las redes neuronales son tolerantes
a fallos es que tienen su información distribuida en las conexiones entre
neuronas, existiendo cierto grado de redundancia en ese tipo de
almacenamiento, a diferencia de la mayoría de los ordenadores algorítmicos
y sistemas de recuperación de datos que almacenan cada pieza de información
en un estado único, localizado y direccionable.
En la el Anexo 1 se presenta una tabla de los tipos de redes
más conocidos, comentando esquematicamente su topología, tipo de aprendizaje
(ON/OFF line, supervisado/no supervisado, regla), clase de asociación
(Auto/Heterogenea), presentación entrada y salida y autores. Aplicaciones de las Redes Neuronales Las redes neuronales son una tecnología computacional
emergente que puede utilizarse en un gran número y variedad de aplicacione,
tanto como comerciales como militares. Hay muchos tipos diferentes de redes neuronales, cada uno de
los cuales tiene un aplicación particular más apropiada. Separandolas según
las distintas disciplinas algunos ejemplos de sus aplicaciones son: Biología: Aprender más acerca del cerebro y otros sistemas. Obtención de modelos de la retina. Empresa Reconocimiento de caracteres escritos. Identificación de candidatos para posiciones específicas. Optimización de plazas y horarios en líneas de vuelo. Explotación de bases de datos. Evaluación de probabilidad de formaciones geológicas y
petrolíferas. Sintesís de voz desde texto. Medio Ambiente Analizar tendencias y patrones. Previsión del tiempo. Finanzas Previsión de la evolución de los precios. Valoración del riesgo de los créditos. Identificación de falsificaciones. Interpretación de firmas. Manufacturación Robots automatizados y sistemas de control (visión
artificial y sensores de presión, temperatura, gas, etc.) Control de producción en líneas de proceso. Inspección de calidad. Filtrado de señales. Medicina Analizadores del habla para la ayuda de audición de
sordos profundos. Diagnóstico y tratamiento a partir de síntomas y/o de
datos analíticos (encefalograma, etc.). Monitorización en cirugía. Predicción de reacciones adversas a los medicamentos. Lectoras de Rayos X. Entendimiento de causa de ataques epilépticos. Militares Clasificación de las señales de radar . Creación de armas inteligentes. Optimización del uso de recursos escasos. Lo que se hace en control es modelar, según los parámetros
aprendidos en sistemas dinamicos, los sistemas para luego controlarlos, sin
embargo en ese modelamiento se desprecian muchos datos debido a la alinealidad
de los mismos, por ejemplo, al modelar un motor se desprecian datos como el
desgaste de máquina, esos son valores importantes, pero al tenerlos en cuenta
la solución de un sistema se haría imposible, así que se hace necesario
despreciar esos términos, sin ellos el modelamiento funciona pero en la vida práctica
no es tan preciso. Ese problema se soluciona con redes neuronales, debido a las
teorías anteriormente expuestas, si por ejemplo, usted modela un sistema de
manera tradicional y luego este sufre variación alguna los planteamientos
iniciales ya no funcionan, con las redes neuronales eso ya no sucede, porque el
sistema despúes de haber recibido unps patrones inicales comienza a
identificar, acepta, aprende y responde ante diferentes señales. Sin importar
que estas no sean identicas a los patrones iniciales. Es necesario resaltar la significación e importancia que las
redes neuronales están adquiriendo en la actualidad como lo evidencia el hecho
de formar parte de los estudios centrales de instituciones gubernamentales a
nivel mundial. Así que la intención principal es profundizar en esta nueva
tecnología, aprovechando el hecho de que será está una materia en cursos
posteriores en el transcurso de mi carrera, para así lograr un alto grado de
aprendizaje y con el la implementación practica de alguna red neuronal. AGRADECIMIENTOS Agradezco especialmente la contribución al Ing. Ivan A. Olier y
al Ing. Gilberto Guerrero por la enorme colaboración en la adquisición de
información para este documento "REDES NEURONALES ARTIFICIALES", José R. Hilera y
Victor J Martinez. 2000. Alfaomega. Madrid. España
"DIGITAL NEURAL NETWORKS", S. Y. Kung, 1993. PTR
Prentice Hall, Inc.
En Internet: Autora: Sandra Patricia Daza P. Universidad Militar Nueva Granada Facultad de Ingenieria
Mecatronica Bogota, Colombia Publicación enviada por Sandra Patricia Daza P. Contactar mailto:1800059@umng.edu.co Código ISPN de la Publicación EpyVZEuFAAboUblISx Publicado Thursday 9 de October de 2003 Ultimas Publicaciones en ilustrados.com
ilustrados.com nace con el fin difundir el conocimiento publicando trabajos de investigación, monografias, tesis, presentaciones powerpoint y afines. Publicar trabajos en ilustrados.com ha alcanzado prestigio y reconocimiento internacional siendo cada vez más el número de académicos, empresas, investigadores, científicos que consultan las publicaciones de nuestro portal. | |||||||||