48690471 redes-neuronales

4,499 views

Published on

Primer PPT

Published in: Education, Technology, Business

48690471 redes-neuronales

  1. 1. Redes Neuronales Diego Colás Escalera Brais Xabier Iglesias Rivas
  2. 2. Contenido <ul><li>Funcionamiento del Cerebro </li></ul><ul><li>Modelo Artificial </li></ul><ul><li>Tipos de Redes Neuronales </li></ul><ul><ul><li>Evolución histórica </li></ul></ul><ul><ul><li>Estructura de la Red </li></ul></ul><ul><ul><li>Regla de aprendizaje </li></ul></ul><ul><li>Aplicaciones </li></ul><ul><li>Implementación con Matlab y EsayNN </li></ul>
  3. 3. Introducción <ul><li>Resulta irónico pensar que máquinas de computo capaces de realizar 100 millones de operaciones en coma flotante por segundo, no sean capaces de entender el significado de las formas visuales o de distinguir entre distintas clases de objetos. </li></ul><ul><li>Los sistemas de computación secuencial (Von Neuma), son exitosos : en problemas matemáticos o científicos, creación, manipulación y mantenimiento de BBDD, en comunicaciones electrónicas, procesamiento de textos, funciones de control de electrodomésticos, pero definitivamente tienen una gran incapacidad para interpretar el mundo . </li></ul>
  4. 4. Introducción <ul><li>Cerebro Humano </li></ul><ul><ul><li>Es robusto y tolerante a fallos, diariamente mueren neuronas sin afectar su desempeño. </li></ul></ul><ul><ul><li>Es flexible, se ajusta a nuevos ambientes por aprendizaje, no hay que programarlo. </li></ul></ul><ul><ul><li>Puede manejar información difusa, con ruido o inconsistente. </li></ul></ul><ul><ul><li>Es altamente paralelo </li></ul></ul><ul><ul><li>Es pequeño, compacto y consume poca energía. </li></ul></ul><ul><li>Basados en la eficiencia de los procesos llevados a cabo por el cerebro, e inspirados en su funcionamiento </li></ul><ul><li>Se desarrollo teoría de las Redes Neuronales Artificiales (RNA) </li></ul>
  5. 5. RNA <ul><li>Emulan las redes neuronales biológicas, y que se han utilizado para aprender estrategias de solución basadas en ejemplos de comportamiento típico de patrones. </li></ul><ul><li>Estos sistemas no requieren que la tarea a ejecutar se programe, ellos generalizan y aprenden de la experiencia. </li></ul>
  6. 6. RNA <ul><li>Aplicaciones </li></ul><ul><ul><li>Procesamiento de imágenes y de voz Reconocimiento de patrones </li></ul></ul><ul><ul><li>Planeamiento </li></ul></ul><ul><ul><li>Interfaces adoptivas para sistemas Hombre/máquina </li></ul></ul><ul><ul><li>Predicción </li></ul></ul><ul><ul><li>Control y optimización </li></ul></ul><ul><ul><li>Filtrado de señales </li></ul></ul>
  7. 7. RNA <ul><li>Las RNA es una teoría que aún esta en proceso de desarrollo, su verdadera potencialidad no se ha alcanzado todavía. </li></ul><ul><li>Los investigadores han desarrollado potentes algoritmos de aprendizaje de gran valor práctico. </li></ul><ul><li>Las representaciones y procedimientos de que se sirve el cerebro, son aún desconocidas. </li></ul>
  8. 8. Cerebro <ul><li>10^11 neuronas con 10^4 conexiones cada una </li></ul><ul><li>Rx = dentritas </li></ul><ul><li>Tx = Axon </li></ul><ul><li>Soma = suma señales </li></ul><ul><li>Sinapsis = conector </li></ul><ul><li>Cargas = Na+ </li></ul><ul><li>Umbral de Activacion </li></ul>
  9. 9. Modelo Artificial <ul><li>Las RNA no alcanzan la complejidad del cerebro, sin embargo hay dos aspectos similares entre redes biológicas y artificiales: </li></ul><ul><ul><li>Los bloques de construcción de ambas redes son sencillos elementos computacionales altamente interconectados; </li></ul></ul><ul><ul><li>Las conexiones entre neuronas determinan la función de la red. </li></ul></ul>
  10. 10. Modelo Artificial <ul><li>El modelo de una neurona artificial es una imitación del proceso de una neurona biológica </li></ul>
  11. 11. Modelo Artificial <ul><li>El modelo que seguiremos </li></ul><ul><li>Funciones de Activacion: </li></ul><ul><ul><li>Hardlim, Hardlims, Purelin, Satlin, Satlins, Tansig y Logsig </li></ul></ul><ul><li>las RNA se inspiren en modelos biológicos no existe ninguna limitación para realizar modificaciones en las funciones de salida, así que se encontrarán modelos artificiales que nada tienen que ver con las características del sistema biológico </li></ul>
  12. 12. Topología de Red <ul><li>Dentro de una red neuronal, los elementos de procesamiento se encuentran agrupados por capas. </li></ul><ul><ul><li>Capa de entrada, Capas ocultas y Capa de salida. </li></ul></ul>
  13. 13. Topología de Red <ul><li>La Respuesta de una red neuronal depende de las entradas , los pesos de sus conexiones y la función de transferencia </li></ul><ul><li>El aprendizaje viene dado por el algoritmo a seguir a la hora de actualizar los pesos de las conexiones. </li></ul>
  14. 14. Topologia de Red
  15. 15. Tipos de Redes Neuronales <ul><li>Red Perceptron </li></ul><ul><li>Red Adeline </li></ul><ul><li>Red Back Propagation </li></ul><ul><li>Aprendizaje Asociativo </li></ul><ul><ul><li>Red Oustar </li></ul></ul><ul><ul><li>Red Instar </li></ul></ul><ul><li>Redes Competitivas </li></ul><ul><ul><li>Red Kohomen </li></ul></ul><ul><ul><li>Red Hamming </li></ul></ul><ul><li>Redes Recurrentes </li></ul><ul><ul><li>Red Hopfield </li></ul></ul><ul><ul><li>Red Multicapa </li></ul></ul><ul><ul><li>Red Helman </li></ul></ul>
  16. 16. Red Perceptron .-. Historia <ul><li>1ª red neuronal.- 1943 por Warren McCulloch y Walter Pitts </li></ul><ul><li>1ª red tipo Perceptrón fue inventada por el sicólogo Frank Rosenblatt en el año 1957 </li></ul><ul><li>El primer modelo de Perceptrón fue desarrollado en un ambiente biológico imitando el funcionamiento del ojo humano, el fotoperceptrón como se le llamo era un dispositivo que respondía a señales ópticas </li></ul>
  17. 17. Red Perceptron .-. Estructura <ul><li>Comportamiento se representa en un mapa las regiones de decisión creadas en el espacio multidimensional de entradas, en estas regiones se visualiza qué patrones pertenecen a una clase. </li></ul><ul><li>Perceptrón separa las regiones por un hiperplano cuya ecuación queda determinada por los pesos de las conexiones y el valor umbral de la función de activación de la neurona. </li></ul><ul><li>Los pesos pueden fijarse o adaptarse empleando diferentes algoritmos de entrenamiento. </li></ul>
  18. 18. Red Perceptron .-. Aprendizaje <ul><li>Supervisado -> [entrada,salida_esperada] </li></ul><ul><li>Algoritmo </li></ul><ul><ul><li>Se asignan pesos y ganacias aleatorias aleatorios </li></ul></ul><ul><ul><li>Se presenta 1 patron a la red (E/S) </li></ul></ul><ul><ul><li>Se calcula la salida </li></ul></ul><ul><ul><li>Si respuesta no correcta, hay que cambiar valores de los pesos, para ello </li></ul></ul>Ej Matlab
  19. 19. Red Perceptron .-. Limitaciones <ul><li>Solo puede resolver problemas que sean linealmente separables </li></ul><ul><li>Función XOR (no separable linealmente) </li></ul><ul><li>Solución Multicapa </li></ul>
  20. 20. Red Adeline <ul><li>(1957) Bernard Widrow y su estudiante Marcian Hoff introdujeron la red Adaline y su regla de aprendizaje LMS </li></ul><ul><li>La red Adaline es similar al Perceptrón, excepto en su función de transferencia, (lineal-purelin) </li></ul><ul><li>La red Adaline presenta la misma limitación del Perceptrón en cuanto problemas a resolver </li></ul><ul><li>El algoritmo LMS es más potente que la regla de aprendizaje del Perceptrón ya que minimiza el error medio cuadrático </li></ul><ul><li>La regla sirvió de inspiración para el desarrollo de otros algoritmos, este es el gran aporte de esta red. </li></ul>
  21. 21. Red Adeline
  22. 22. Red Adeline .-. Aprendizaje <ul><li>Supervisado (==Perceptron) </li></ul><ul><li>Algoritmo de actualización de pesos y ganancias LMS </li></ul>
  23. 23. Red Adeline .-. Aplicaciones <ul><li>Principal uso en Filtrado Adaptivo </li></ul><ul><li>Supera a los ctos. RLC y DSP´s </li></ul><ul><li>Se necesita un bloque de retardos en línea </li></ul>
  24. 24. Red Adeline .-. Aplicaciones <ul><li>Es una convolución </li></ul><ul><li>Ejemplo filtrado: </li></ul><ul><ul><li>Un RLC necesitamos saber la frequencia de corte de nuestro filtro </li></ul></ul><ul><ul><li>En un DSP necesitamos saber la h[n] respuesta al impulso de nuestro filtro y las caracteristicas de la señal de entrada </li></ul></ul><ul><ul><li>Adeline hace lo mismo que un DSP , con la diferencia que es ella quien calcula la h[n] </li></ul></ul><ul><li>Si cambian las características de la señal, la red Adaline puede adaptarse automáticamente </li></ul><ul><li>El problema, en que la red sea capaz de especificar la señal de salida deseada, dada una señal de entrada específica </li></ul>
  25. 25. Red Backpropagation <ul><li>1974 .- Paul Werbos </li></ul><ul><li>El LMS y aprendizaje del percecptron para una capa, necesidad nuevos algoritmos, para redes mas complejas. </li></ul><ul><li>Se procesa la infamación en paralelo </li></ul><ul><li>Lo que hace es adaptarse a sí mismo para aprender la relación entre un conjunto de patrones dado como ejemplo y ser capaz de aplicar la misma relación a nuevos patrones de entrada </li></ul><ul><li>De aprendizaje supervisado, que emplea un ciclo propagación – adaptación de dos fases </li></ul>
  26. 26. Red Backpropagation <ul><li>Un estímulo se propaga desde la primera capa, hasta generar una salida </li></ul><ul><li>Se calcula el error </li></ul><ul><li>El error se propaga hacia atrás (para cada neurona una fracción de error) </li></ul><ul><li>Basándose en el error percibido, se actualizan los pesos cada neurona. </li></ul><ul><li>A medida que se entrena la red, las neuronas de las capas intermedias se organizan a sí mismas de tal modo que las distintas neuronas aprenden a reconocer distintas características del espacio total de entrada </li></ul>
  27. 27. Red Backpropagation <ul><li>Después del entrenamiento, cuando se les presente un patrón arbitrario de entrada que contenga ruido o que esté incompleto </li></ul><ul><li>Las neuronas de la capa oculta de la red responderán con una salida activa si la nueva entrada contiene un patrón que se asemeje a aquella característica que las neuronas individuales hayan aprendido a reconocer durante su entrenamiento. </li></ul>
  28. 28. Red Backpropagation <ul><li>Puede notarse que esta red de tres capas equivale a tener tres redes tipo Perceptrón en cascada </li></ul><ul><li>Cada capa puede tener diferente número de neuronas, e incluso distinta función de transferencia </li></ul>
  29. 29. Backpropagation Aprendizaje <ul><li>Alternativas </li></ul><ul><ul><li>Momentum </li></ul></ul><ul><ul><li>Rata variable </li></ul></ul><ul><ul><li>Gradiente Conjugado </li></ul></ul><ul><ul><li>Algoritmo de Levenberg - Marquardt </li></ul></ul><ul><li>Diferencia en el nº de iteraciones a la hora de corregir el error cuadratico medio. Velocidad de aprendizaje </li></ul>
  30. 30. Backpropagation .-. Aplicaciones <ul><li>Matlab </li></ul><ul><ul><li>Network Function </li></ul></ul><ul><ul><li>Backprogation Calculation </li></ul></ul><ul><ul><li>Aproximacion de Funciones </li></ul></ul>
  31. 31. Aprendizaje Asociativo.-.Historia <ul><li>Principios, estudios de sicología intentando explicar comportamiento humano-animal </li></ul><ul><li>Experimento de Pavlov </li></ul><ul><li>Finales 60´s Regla de Hebb: </li></ul><ul><ul><ul><ul><li>&quot; Cuando un axón de una celda A está lo suficientemente cerca de otra celda B como para excitarla y repetidamente ocasiona su activación, un cambio metabólico se presenta en una o ambas celdas, tal que la eficiencia de A, como celda excitadora de B, se incrementa&quot; </li></ul></ul></ul></ul>
  32. 32. Aprendizaje Asociativo.-.Intro <ul><li>Son de aprendizaje no supervisado. </li></ul><ul><li>Suele decirse que son capaces de autoorganizarse. </li></ul><ul><li>Modifican sus pesos en función de los patrones de entrada </li></ul><ul><li>Existen varias posibilidades en cuanto a la interpretación de la salida de estas redes que dependen de su estructura y del algoritmo de aprendizaje empleado. </li></ul>
  33. 33. Aprendizaje Asociativo.-.Intro <ul><li>Salida: representa el grado de similitud entre la información de la entrada de la red y las informaciones que se le han mostrado hasta entonces, en otro caso la red. </li></ul><ul><li>Salida: indica a que categoría pertenece la información presentada a la entrada, siendo la propia red quien deba encontrar las categorías apropiadas a partir de correlaciones entre las informaciones presentadas. Ej Matlab demopnn1,nnd7sh </li></ul>
  34. 34. Aprendizaje Asociativo.-.Estructura <ul><li>Ejemplo de asociación simple </li></ul><ul><li>Estimulo condicionado : campana </li></ul><ul><li>Estimulo no condicionado : comida perro </li></ul><ul><li>Ejemplo Matlab : platano </li></ul>
  35. 35. Aprendizaje Asociativo.-.Tipos <ul><li>Red Instar </li></ul><ul><ul><li>Entrada Vectorial , Salida Escalar, aprendizaje cuando out != 0 </li></ul></ul><ul><li>Red Outstar </li></ul><ul><ul><li>Entrada Escalar , Salida Vectorial, aprendizaje cuando in != 0 </li></ul></ul><ul><li>Ejemplos de Matlab , nnd13is , nnd13os </li></ul>
  36. 36. Redes Competitivas.-.Intro <ul><li>Las neuronas compiten unas con otras con el fin de llevar a cabo una tarea dada. </li></ul><ul><li>Neuronas con conexiones de autoexitación (signo positivo) y conexiones de inhibición (signo negativo) por parte de neuronas vecinas. </li></ul>
  37. 37. Redes Competitivas.-.Intro <ul><li>El objetivo de este aprendizaje es categorizar </li></ul><ul><li>Se pretende que cuando se presente a la red cierta información de entrada, sólo una de las neuronas de salida de la red, o una por cierto grupo de neuronas, se active. </li></ul><ul><li>Los pesos se actualizan en función de la neurona activada. </li></ul>
  38. 38. Redes Competitivas.-.Historia <ul><li>1959, Frank Rosenblatt </li></ul><ul><ul><ul><li>Simple clasificador espontáneo </li></ul></ul></ul><ul><ul><ul><li>Basado en el Perceptron </li></ul></ul></ul><ul><ul><ul><li>Clasificaba vectores en 2 clases </li></ul></ul></ul><ul><li>Principios 70’s Stephen Grossberg </li></ul><ul><ul><ul><li>Redes que usaban inhibición lateral obteniendo buenos resultados </li></ul></ul></ul>
  39. 39. Redes Competitivas.-.Historia <ul><li>Zisper en 1985 </li></ul><ul><ul><ul><li>Utilizaba redes multicapa </li></ul></ul></ul><ul><ul><ul><li>Dividiendo cada capa en grupos de neuronas </li></ul></ul></ul><ul><ul><ul><li>Conexiones inhibitorias con otras neuronas de su mismo grupo </li></ul></ul></ul><ul><ul><ul><li>Conexiones excitadoras con las neuronas de la siguiente capa. </li></ul></ul></ul><ul><li>Kohonen en 1982 </li></ul><ul><ul><ul><li>Redes con una disposición bidimensional de las neuronas de salida </li></ul></ul></ul><ul><ul><ul><li>Permiten obtener mapas topológicos o topográficos </li></ul></ul></ul>
  40. 40. Redes Competitivas.-.Estructura <ul><li>Sólo una neurona se activará ante una entrada. </li></ul><ul><li>Informaciones de la misma categoría hacen ganadora a la misma neurona. </li></ul>
  41. 41. Redes Competitivas.-. Kohonen <ul><li>En el cerebro hay neuronas que se organizan en zonas de forma que las informaciones captadas se representan en forma de mapas topológicos. </li></ul><ul><li>Ej) En el sistema auditivo se detecta una organización según la frecuencia a la que cada neurona alcanza mayor repuesta . </li></ul>
  42. 42. Redes Competitivas.-. Kohonen <ul><li>El aprendizaje es de tipo Off-line, por lo que se distingue una etapa de aprendizaje y otra de funcionamiento. </li></ul><ul><li>En este modelo el aprendizaje no concluye después de presentarle una vez todos los patrones de entrada, sino que habrá que repetir el proceso varías veces para refinar el mapa topológico de salida. </li></ul>
  43. 43. Redes competitivas.-.Hamming <ul><li>Esta Red representa uno de los primeros avances en este tipo de aprendizaje. </li></ul><ul><li>Capas: </li></ul><ul><ul><li>Instar : Relación entre entrada y vectores prototipo </li></ul></ul><ul><ul><li>Recurrente : Indica cual de las neuronas de la salida debe ser activada. (Aproximación a prototipo) </li></ul></ul>
  44. 44. Redes competitivas.-.Hamming
  45. 45. Redes Recurrentes.- <ul><li>Dinámicas por naturaleza: </li></ul><ul><ul><li>red de Hopfield </li></ul></ul><ul><ul><li>la red de Jordan </li></ul></ul><ul><ul><li>la red de Elman </li></ul></ul><ul><li>Redes dinámicas de naturaleza estática. </li></ul><ul><ul><li>las redes multicapa </li></ul></ul><ul><li>Comportamiento dinámico-> poderosa herramienta para simular e identificar sistemas dinámicos no lineales. </li></ul>
  46. 46. Red Hopfield.-.Historia <ul><li>80´s surge la teoría clásica de control geométrico basada en la geometría diferencial (para sistemas basados en ED no linelales) </li></ul><ul><li>Simultáneamente-> renacacimiento del estudio de las Redes Neuronales debido al redescubrimiento del algoritmo Backpropagation </li></ul><ul><li>Fracaso de las metodologías tradicionales-> desarrollo las redes neuronales recurrentes para control e identificación de sistemas no lineales </li></ul><ul><li>Este desarrollo es posible debido a que las propiedades matemáticas de las redes recurrentes están enmarcadas en las mismas propiedades que fundamentan el control geométrico </li></ul>
  47. 47. <ul><li>La primera red neuronal recurrente de naturaleza dinámica fue propuesta por Hopfield en 1984 bajo el contexto de las memorias asociativas </li></ul><ul><li>La memoria recupera la información almacenada con base en parte de su contenido. </li></ul><ul><li>Ej) Base de datos que contiene nombres y direcciones de los empleados-> la información completa se recupera suministrando el nombre (o parte de él) </li></ul>Red Hopfield.-.Historia
  48. 48. Red Hopfield.- Funcionamiento <ul><li>Cuando se le presenta un patrón de entrada a la red de Hopfield, el estado inicial de la salida será el mismo patrón de entrada y luego la red convergerá al patrón prototipo almacenado que se encuentre más cercano (o que más se parezca) al patrón . </li></ul><ul><li>Esto lo hace buscando el mínimo error con el contenido de memoria asociativa (Lyapunov) </li></ul>
  49. 49. Red Hopfield.-.Aprendizaje <ul><li>La red de Hopfield no tiene una ley de aprendizaje asociada, esto significa que la red no es entrenada ni realiza un proceso de aprendizaje. </li></ul><ul><li>Determinación de la matriz de pesos por medio de un procedimiento basado en la función Lyapunov </li></ul>
  50. 50. Red Hopfield.-.Aprendizaje <ul><li>El procedimiento consiste en escoger la matriz de pesos W y el vector de ganancias b tal que la función Lyapunov tome la forma de la función no lineal que buscamos. </li></ul><ul><li>A la red se le presenta un patrón, y nos devuelve ese patrón, hasta que converge al patrón prototipo. </li></ul><ul><li>Los patrones prototipos han de ser mínimos de la función de Lyapunov </li></ul>
  51. 51. Red Hopfield.-.Estructura
  52. 52. Red Multicapa.-.Estructura <ul><li>Las redes multicapa son de naturaleza estática, o sea su salida no evoluciona con el tiempo. </li></ul><ul><li>Pueden adquirir un comportamiento dinámico realimentando sus entradas con estados anteriores de sus salidas </li></ul>
  53. 53. Redes Multicapa.-.Estructura
  54. 54. Red Multicapa.-.Aprendizaje <ul><li>La etapa estática que hace parte de la red multicapa dinámica recurrente generalmente es entrenada con cualquier algoritmo de propagación inversa </li></ul><ul><li>Para redes dinámicas multicapa los algoritmos de propagación inversa son más eficientes y rápidos. </li></ul>
  55. 55. CONCLUSIONES <ul><li>La teoría de RNA presenta grandes ventajas: </li></ul><ul><ul><li>Inspiración en modelos biológicos del cerebro </li></ul></ul><ul><ul><li>Tiempo de cómputo reducido </li></ul></ul><ul><ul><li>Notación y modelos matemáticos sencillos </li></ul></ul><ul><ul><li>Tolerancia a fallos </li></ul></ul><ul><ul><li>Flexibilidad </li></ul></ul><ul><ul><li>Aprenden de la experiencia </li></ul></ul>
  56. 56. CONCLUSIONES <ul><li>Proceso entrenamiento: </li></ul><ul><ul><li>Comprensión profunda del problema para poder escoger los patrones adecuados </li></ul></ul><ul><ul><li>Una vez elegido tipo de red, estructura depende de la experiencia del diseñador. </li></ul></ul>
  57. 57. <ul><li>Para escoger tipo de red facilmente: </li></ul><ul><ul><li>¿Se conocen las salidas? </li></ul></ul>CONCLUSIONES Aprendizaje supervisado Aprendizaje no supervisado SI NO
  58. 58. Implementación Software <ul><li>Matlab </li></ul><ul><ul><li>Necesita toolbox Neural Network </li></ul></ul><ul><li>Easy NN </li></ul><ul><ul><li>Facil diseño y entrenamiento </li></ul></ul>

×