Documente Academic
Documente Profesional
Documente Cultură
Agenda
Introduccin Historia Neurona Biolgica / Artificial Funciones del modelo de Neurona Artificial Qu son las redes neuronales? Ventajas Caractersticas Topologa Redes neuronales y su clasificacin Mecanismos de aprendizaje Aplicaciones Software de las Redes Neuronales reas de aplicacin de las Redes Neuronales
2
Introduccin:
El hombre se ha caracterizado siempre por una bsqueda constante de nuevas vas para mejorar sus condiciones de vida. Estos esfuerzos han servido para reducir el trabajo en aquellas operaciones en las que la fuerza juega un papel primordial. Los progresos obtenidos han permitido dirigir estos esfuerzos a otros campos.
El desarrollo de mquinas que puedan imitar la capacidad de aprendizaje del hombre es actualmente un desafo en el que pone sus miras buena parte de la comunidad cientfica.
La forma en que los humanos representan y almacenan el conocimiento es un aspecto bsico para el comportamiento inteligente. El estudio de los smbolos para representar el conocimiento y de los distintos modos de razonamiento, considerado como el mecanismo para generar conocimiento a partir del conocimiento almacenado, es la base de una buena parte de los sistemas funcionales que estn teniendo una progresiva importancia en el mbito de las aplicaciones practicas, ya sea en forma de reglas lgicas caractersticas de los sistemas expertos, o mecanismos de representacin del conocimiento implcito no simblico, que tienen las redes neuronales como principal mtodo.
Fundamentos de Ciencias de la Computacin 4
Con el surgimiento de la Inteligencia Artificial el problema de representar el conocimiento adquiere una relevancia trascendental ya que ahora se trata de que los sistemas automatizados capten, almacenen, transmitan, evalen y generen conocimiento. Inteligencia Artificial se centra en los mecanismos que permitan representar el conocimiento en forma automatizada.
1949 - Donald Hebb. Escribi un importante libro: La organizacin del comportamiento, en el que se establece una conexin entre psicologa y fisiologa. Fue el primero en explicar los procesos del aprendizaje (que es el elemento bsico de la inteligencia humana) desde un punto de vista psicolgico, desarrollando una regla de como el aprendizaje ocurra. 1950 - Karl Lashley. En sus series de ensayos, encontr que la informacin no era almacenada en forma centralizada en el cerebro sino que era distribuida encima de l. 1957 - Frank Rosenblatt. Comenz el desarrollo del Perceptrn. Esta es la red neuronal ms antigua; utilizndose hoy en da para aplicacin como reconocedor de patrones. En 1959, escribi el libro Principios de Neurodinmica, en el que confirm que, bajo ciertas condiciones, el aprendizaje del Perceptrn converga hacia un estado finito. 1960 - Bernard Widrow/Marcial Hoff. Desarrollaron el modelo Adaline (ADAptative LINear Elements). Esta fue la primera red neuronal aplicada a un problema real que se ha utilizado comercialmente durante varias dcadas.
Fundamentos de Ciencias de la Computacin 7
1961 - Karl Steinbeck: Die Lernmatrix. Red neuronal para simples realizaciones tcnicas (memoria asociativa). 1967 - Stephen Grossberg. A partir de sus conocimientos fisiolgicos, ha escrito numerosos libros y desarrollado modelo de redes neuronales. 1969 - Marvin Minsky/Seymour Papert. Minsky y Papera, del Instituto Tecnolgico de Massachussets (MIT), publicaron un libro Perceptrons. Probaron (matemticamente) que el Perceptrn no era capaz de resolver problemas relativamente fciles, tales como el aprendizaje de una funcin no-lineal.
1974 - Paul Werbos. Desarroll la idea bsica del algoritmo de aprendizaje de propagacin hacia atrs (backpropagation); cuyo significado qued definitivamente aclarado en 1985.
1980 - Kunihiko Fukushima. Desarroll un modelo neuronal para el reconocimiento de patrones visuales.
Fundamentos de Ciencias de la Computacin 8
1985 - John Hopfield. Provoc el renacimiento de las redes neuronales con su libro: "Computacin neuronal de decisiones en problemas de optimizacin." 1986 - David Rumelhart/G. Hinton. Redescubrieron el algoritmo de aprendizaje de propagacin hacia atrs (backpropagation).
Actualmente, son numerosos los trabajos que se realizan y se publican, las aplicaciones nuevas que surgen y las empresas que lanzan al mercado productos nuevos, tanto hardware como software, sobre todo para simulacin.
La era moderna de las redes neuronales artificiales surge con la tcnica de aprendizaje de propagacin hacia atrs o back propagacin. La estructura de las redes citadas anteriormente (Perceptron, Adaline y Madaline).
Neurona Biolgica
10
11
12
13
Neurona Artificial
Neurona artificial: unidad de procesamiento de la informacin, es un dispositivo simple de clculo que ante un vector de entradas proporciona una nica salida. Elementos: Conjunto de entradas, xj
Pesos sinpticos, wi
Funcin de activacin: + ... + wnxn = a Funcin de transferencia: F (w1x1+ w2x2 + ... + wnxn )
w1x1+ y 2x2 w y=
15
Esta funcin se encarga de transformar las diferentes entradas que provienen de la sinapsis en el potencial de la neurona.
Normalmente se usa como funcin de propagacin la suma ponderada de las entradas multiplicadas por los pesos. Esta funcin se interpreta como un regulador de las seales que se emiten entre neuronas al ponderar las salidas que entran a la neurona.
16
El resultado de la funcin de propagacin es transformada en la salida real de la neurona mediante un proceso algortmico conocido como funcin de activacin. En la funcin de activacin el valor de la salida de combinacin puede ser comparada con algn valor umbral para determinar la salida de la neurona. Si la suma es mayor que el valor umbral, neurona generar una seal. Si la suma es menor que el valor umbral, ninguna seal ser generada.
17
Las funciones de activacin ms comunes son: Lineal: Algunas redes neuronales usan esta funcin de activacin como el Adeline por su eficiencia y facilidad.
Escaln: Esta funcin es la ms usada para redes neuronales binarias ya que no es lineal y es muy simple.
Hiperblicas o tangenciales: Las redes con salidas continuas, como el Perceptron multicapa con retropropagacin, usan esta funcin ya que su algoritmo de aprendizaje necesita una funcin derivable
18
Funcin de Salida
Esta funcin convierte el estado de la neurona en la salida hacia la siguiente neurona que se transmite por las sinapsis. Usualmente no se considera y se toma la identidad, esto es, de manera que la salida es el propio estado de activacin de la neurona. Existen algunas redes que transforman su estado de activacin en una salida binaria y para eso usa la funcin escaln como salida.
19
Redes neuronales artificiales son redes interconectadas masivamente en paralelo de elementos simples (usualmente adaptativos) y con organizacin jerrquica, las cuales intentan interactuar con los objetos del mundo real del mismo modo que lo hace el sistema nervioso biolgico.
Las redes neuronales no son ms que un modelo artificial y simplificado del cerebro humano, que es el ejemplo ms perfecto del que disponemos de sistema que es capaz de adquirir conocimiento a travs de la experiencia, es otra forma de emular ciertas caractersticas propias de los humanos, como la capacidad de memorizar y de asociar hechos.
21
Por lo tanto, las Redes Neuronales: Consisten de unidades de procesamiento que intercambian datos o informacin. Se utilizan para reconocer patrones (un conjunto de reglas que pueden ser usadas para identificar o crear entidades), incluyendo imgenes, manuscritos y secuencias de tiempo, y tendencias financieras. Tienen capacidad de aprender y mejorar su funcionamiento. Las RNA estn compuestas de muchos elementos sencillos que operan en paralelo, el diseo de la red est determinado mayormente por las conexiones entre sus elementos. Al igual que las conexiones de las neuronas cerebrales. Las RNA han sido entrenadas para la realizacin de funciones complejas en variados campos de aplicacin. Hoy en da pueden ser entrenadas para la solucin de problemas que son difciles para sistemas computacionales comunes o para el ser humano.
Fundamentos de Ciencias de la Computacin 22
Aprendizaje Adaptativo: capacidad de aprender a realizar tareas basadas en un entrenamiento o en una experiencia inicial. Auto-organizacin: una red neuronal puede crear su propia organizacin o representacin de la informacin que recibe mediante una etapa de aprendizaje.
Fundamentos de Ciencias de la Computacin 23
Tolerancia a fallos: la destruccin parcial de una red conduce a una degradacin de su estructura; sin embargo, algunas capacidades de la red se pueden retener, incluso sufriendo un gran dao. Operacin en tiempo real: los cmputos neuronales pueden ser realizados en paralelo; para esto se disean y fabrican mquinas con hardware especial para obtener esta capacidad. Fcil insercin dentro de la tecnologa existente: se pueden obtener chips especializados para redes neuronales que mejoran su capacidad en ciertas tareas. Ello facilitar la integracin modular en los sistemas existentes.
Fundamentos de Ciencias de la Computacin 24
Existen cuatro elementos que caracterizan una red neuronal: Su topologa, El mecanismo de aprendizaje, Tipo de asociacin realizada ente la informacin de entrada y salida, y La forma de representacin de estas informaciones.
25
26
Red neuronal
28
29
30
Las neuronas se agrupan formando capas, que pueden tener muy distintas caractersticas.
31
a1 y1 a2 y2 an yn
32
RNA Multicapa
Redes multicapa: capas en cascada. Tipos de capas: Entrada Salida Oculta No hay realimentacin => red feedforward Salida depende de entradas y pesos. Si hay realimentacin => red recurrente Efecto memoria Salida depende tambin de la historia pasada.
33 Fundamentos de Ciencias de la Computacin
Niveles de Neuronas
La distribucin de neuronas dentro de la red se realiza formando niveles o capas de un nmero determinado de neuronas cada una. A partir de su situacin dentro de la red se pueden distinguir tres tipos de capas: De entrada: estas capas reciben la informacin desde el exterior. De Salida: estas envan la informacin hacia el exterior
Ocultas: son capas que solo sirven para procesar informacin y comunicar otras Capas.
34
36
Mecanismo de aprendizaje
Las redes neuronales manejan dos tipos de informacin. La primera, es la informacin voltil, que se refiere a los datos que se estn usando y varan con la dinmica de la computacin de la red, se encuentra almacenada en el estado dinmico de las neuronas.
El segundo tipo de informacin que manejan las redes neuronales, es la informacin no voltil que se mantiene para recordar los patrones aprendidos y se encuentra almacenada en los pesos sinpticos.
Fundamentos de Ciencias de la Computacin 37
El aprendizaje se basa en el entrenamiento de la red con patrones (un conjunto de reglas que pueden ser usadas para identificar o crear entidades), que usualmente son llamados patrones de muestra o entrenamiento. El proceso usual del algoritmo es que la red ejecuta los patrones iterativamente, cambiando los pesos de las sinapsis, hasta que convergen a un conjunto de pesos ptimos que representan a los patrones lo suficientemente bien, entonces mostrar una respuesta satisfactoria para esos patrones. Esto es, sus pesos sinpticos se ajustan para dar respuestas correctas al conjunto de patrones de entrenamiento que le hemos mostrado. Hay que destacar que algunas redes no tienen un aprendizaje iterativo, si no que los pesos de las sinapsis son calculados previamente a partir de los patrones.
Fundamentos de Ciencias de la Computacin 38
Aprendizaje no supervisado, consiste en no presentar patrones objetivos, si no solo patrones de entrada, y dejar a la red clasificar dichos patrones en funcin de las caractersticas comunes de los patrones.
Hbrido, el supervisor no ensea patrones objetivos si no que solo le dice se acierta o falla en su respuesta ante un patrn de entrada. Es el aprendizaje reforzado.
Fundamentos de Ciencias de la Computacin 39
Aprendizaje supervisado
Un esquema general de este tipo de aprendizaje sera este
1. Inicializar los pesos de las sinapsis aleatoriamente. 2. Para cada patrn P perteneciente al conjunto de los patrones que tenemos 2.1 Mostrar el patrn de entrada Pentrada y hacer la dinmica de la red para calcular la salida de la red Sred, que no es la salida deseada sino un patrn aleatorio ya que los pesos inicialmente eran aleatorios. 2.2 Hallamos el error Clculo del error entre la salida de la red, Sred, y la salida deseada del patrn Psalida_deseada. Esto se hace en muchos casos con el error cuadrtico medio Epatrn = Raizcuadrada(suma((Psalida_deseadai) (Sredi) )). 2.3 Ajustar los pesos usando la regla de aprendizaje para disminuir el error medio. Normalmente, se hace creando una funcin que represente el error cometido, la cual derivamos para aplicar la tcnica de minimizacin matemtica.
Fundamentos de Ciencias de la Computacin 40
Otra forma de ver los procesos de ajuste de los pesos, es como un mapa bidimensional que representa los errores que la red comete en la clasificacin, en funcin de los pesos u las entradas. El objetivo es llegar lo ms bajo posible en el mapa, para ello, buscamos la gradiente para cada punto concreto de ese mapa. Para ello derivamos la funcin error para encontrar la direccin de mxima pendiente. Quizs esta parte es la ms compleja matemticamente. En resumen usaremos una funcin, que demostrada matemticamente por alguno de los anteriores principios, minimiza el error entre la salida que deseamos Psalida_deseada y la salida que nos da la red Sred. 3. Si el error es mayor de cierto criterio volver al paso 2; si todos los ejemplos se han clasificado correctamente, finalizar. Las redes ms significativas que usan este aprendizaje supervisado son el Perceptrn, El Perceptrn multicapa y la red de Hopfield.
Fundamentos de Ciencias de la Computacin 41
Aprendizaje no supervisado
Los mtodos de aprendizaje no supervisado usan representaciones modlicas de los objetos a reconocer y a clasificar. Por ejemplo una aplicacin de reconocimiento de caras podramos pasar la fotografa como un mapa de bits pero esto seria muy costoso computacionalmente, pero sin embargo si pasramos una serie de valores como anchura de ojos, anchura de boca, tamao de frente, etc., esto nos podra clasificar la cara en funcin de sus parecidos. Entre los distintos tipos de aprendizaje no supervisado podemos distinguir, el aprendizaje por componentes principales y el aprendizaje competitivo.
42
El aprendizaje por componentes principales: Se basa en hallar caractersticas principales a (componentes) que son comunes a muchos patrones de entrada para ello un pequeo nmero de neuronas coopera en la representacin del patrn de entrada. El aprendizaje competitivo: Las neuronas pugnan entre s, para representar a una clase o patrn de entrada. La neurona seleccionada es aquella cuyos pesos incidentes se asemejan ms al patrn de entrada. El aprendizaje consiste en reforzar las conexiones de la unidad ganadora y debilitar las otras, para que los pesos de la unidad ganadora se asemejen cada vez ms al patrn de entrada. La reconstruccin de un patrn de entrada a partir de una neurona ganadora consiste en tomar el peso de dicha neurona ya que son los valores que ms se asemejan.
Fundamentos de Ciencias de la Computacin 43
Aprendizaje reforzado: La base de este aprendizaje es muy parecida al aprendizaje supervisado pero la informacin que proporcionamos a la red es mnima se limita a indicar si la respuesta de la red es correcta o incorrecta. Este tipo de aprendizaje se basa en la nocin de condicionamiento por refuerzo, esto es se aprenden las conductas reforzadas positivamente y las conductas castigadas o reforzadas negativamente. En nuestro mundo esto se traduce en premiar los pesos sinpticos cuando se acierta la salida y penalizarlos cuando no se acierta.
Fundamentos de Ciencias de la Computacin 44
45
Aplicaciones
Deteccin de patrones. Filtrado de seales
Segmentacin de datos
Control
Identificacin.
46
Validacin
Validacin: es el proceso de comprobacin de la utilidad de modelo obtenido: Si el modelo concuerda con los datos observados Si servir al propsito para el que fue creado Si describe el sistema real Enfoque neuronal: Conjunto de datos de entrenamiento Conjunto de datos de test. Conjunto de datos de validacin.
48
Desarrollado por Infosel Financiero en Mxico. Combina Redes Neuronales Artificiales, junto con tecnologas como Algoritmos de Genticos, para obtener una capacidad de anlisis acertada, recomendando operaciones de compra y venta en el mundo financiero y burstil
Permite analizar el desarrollo del mercado financiero, da tras da. Obtiene los datos de la bolsa en tiempo real. Es robusto y tiene un interfaz amigable. No se emociona y se adapta, es sensible. Permite adquirir la experiencia requerida para obtener la mejor rentabilidad posible. Posee u indicador inteligente.
Fundamentos de Ciencias de la Computacin 49
OPTIMACH: Administrador de publicidad dirigida para internet, analiza y decide los banners o anuncios que presentar un sitio de internet a cada tipo de usuario, para aumentar el inters en l patrocinador, trabaja con servidor Windows NT4 y se utiliza junto con el SiteServer 3.0 Commer Edition. Es el valor agregado al sistema que maximiza el flujo de vistas en las pginas.
ATRASOFT: Se dedica a ser software para anlisis financiero y reconocimiento de imgenes a travs de redes neuronales de Hopfiend y la mquina de Boltzman, se utiliza para clasificar imgenes, buscar imgenes en internet obtener predicciones sobre una serie de datos, reconocimiento de patrones.
Fundamentos de Ciencias de la Computacin 50
Prediccin de ndices. Deteccin de fraudes. Riesgo crediticio, clasificacin. Prediccin de la rentabilidad de acciones.
Empresa
Reconocimiento de caracteres escritos. Identificacin de candidatos para posiciones especificas. Explotacin de base de datos. Evaluacin de probabilidad de formaciones geolgicas y petrolferas.
Fundamentos de Ciencias de la Computacin 51
Redes Neuronales
Funcin de Activacin 1 Si W1* X1+ W2* X2 >= 0 Y= 0 Si W1* X1+ W2* X2 < 0
Evaluar patrones
Evaluar patrones con los nuevos pesos (1) Entrada (1,1) T=1 y=1*(0.2)+ 1*(-0.2)-1*(-1.4)=1.4 1.4>=0 y=1 y=T (2) Entrada (1,-1) T=1 y=1*(0.2) -1*(-0.2)-1*(-1.4)=1.8 1.8>=0 y=1 y=T (3) Entrada (-1,1) T=1 y=-1*(0.2)+ 1*(-0.2)-1*(-1.4)=1 1>=0 y=1 y=T (4) Entrada (-1,-1) T=-1 y=-1*(0.2)-1*(-0.2)-1*(-1.4)=1.4 1.4>=0 y=1 yT
Evaluar patrones con los nuevos pesos (1) Entrada (1,1) T=1 y=1*(1.2)+ 1*(0.8)-1*(-0.4)=2.4 2.4>=0 y=1 y=T (2) Entrada (1,-1) T=1 y=1*(1.2) -1*(0.8)-1*(-0.4)=0.8 0.8>=0 y=1 y=T (3) Entrada (-1,1) T=1 y=-1*(1.2)+ 1*(0.8)-1*(-0.4)=0 0>=0 y=1 y=T (4) Entrada (-1,-1) T=-1 y=-1*(1.2)-1*(0.8)-1*(-0.4)=-1.6 -1.6<0 y=-1 yT