Download Redes Neuronales
Document related concepts
Transcript
Tema 3: Ðreas de la IA: Ejemplos de Investigaci‡n Actual (III) Redes Neuronales SRP Carlos Carrascosa Casamayor Vicente J. Julián Inglada Sistemas de Representación y Procesamiento Automático del Conocimiento Tema 3: Ðreas de La IA: Ejemplos de Investigaci‡n Actual (II) Redes Neuronales. 3.1. Historia. 3.2. Aplicaciones. 3.3. Modelo Natural. 3.4. Computación Neuronal. 3.5. Elementos de una Red Neuronal Artificial. 3.6. Ventajas de las Redes Neuronales. 3.7. Realización de Redes Neuronales. • Bibliografía: – Hilera, J.R., Martínez, V.J., “Redes Neuronales Artificiales: Fundamentos, modelos y aplicaciones”, rara-ma, (1995). – S. Russel, Russel, ‘Inteligencia Artificial: Un enfoque moderno’, Prentice Hall(1996). Sistemas de Representación y Procesamiento Automático del Conocimiento 1 Historia (I) – 1943: Walter Pitts y Warren McCulloch: McCulloch: • Funcionamiento del cerebro humano: – Red de células conectadas entre sí que ejecutan operaciones lógicas. – Menor suceso psíquico (según ellos): el impulso todo/nada, generado por una célula nerviosa. – 1951: Primera Red Neuronal << Sharc >>: • Marvin Minsky y Dean Edmonds. Edmonds. • Compuesta de 300 tubos de vacío y un piloto automático de un bombardero BB-24 (en desuso por supuesto). • Red de 40 neuronas artificiales que imitaban el cerebro de una rata. • No tenía mucho futuro, pues no llegaba a trazar planes. No era “inteligente” Sistemas de Representación y Procesamiento Automático del Conocimiento Historia (II) – 1957: El Perceptrón (Frank Rosenblatt): Rosenblatt): • Red neuronal capaz de generalizar (reconocer patrones similares a los que ya conocía). • Limitación: No es capaz de clasificar clases no separables linealmente. – 1959: Bernard Widrow y Marcial Hoff: Hoff: • Modelo ADALINE (ADAptative (ADAptative LINear Elements): Elements): – RNA: filtros adaptativos que eliminan ecos en las líneas telefónicas. – 1969: “Perceptrons” Seymour Papert) (Marvin Minsky y • Definen a los Perceptrones como caminos sin salida. La mayor parte de las investigaciones sobre Perceptrones se paralizaron y anularon Sistemas de Representación y Procesamiento Automático del Conocimiento 2 Historia (III) – 1977: Asociador Lineal (James Anderson): Anderson): • Las conexiones entre neuronas se refuerzan cada vez que están activas. • Extensión: BrainBrain-StateState-inin-a-Box (BSB). – 1977: Mapas Autoorganizativos (Teuvo Kohonen): Kohonen): • Modelo para reconocimiento de patrones visuales. – 1980: Neocognitrón (Kunihiko Fukushima): Fukushima): – 1982: John Hopfield: Hopfield: • Variación del Asociador Lineal Mostró como tales redes pueden trabajar y qué pueden hacer – 1982: USUS-Japan Joint Conference on Cooperative / Competitive Neural Networks Sistemas de Representación y Procesamiento Automático del Conocimiento Aplicaciones – Área de defensa. – Clasificación de Patrones. – Robótica (esp. control de trayectorias). – Visión Artificial. – Procesamiento de Señales. – Aplicaciones al habla. Sistemas de Representación y Procesamiento Automático del Conocimiento 3 Modelo Natural – Neurona Natural: • Entradas: Dendritas (tantas como necesite). • Salida: Axón. Estado condicionado por el de las Dendritas Sistemas de Representación y Procesamiento Automático del Conocimiento Computaci‡n Neuronal (I) – “Redes Neuronales Artificiales son redes interconectadas masivamente en paralelo de elementos simples (usualmente adaptativos) y con organización jerárquica, las cuales intentan interactuar con los objetos del mundo real del mismo modo que lo hace el sistema nervioso biológico”. (Kohonen). – Operación de proceso básico de los procesadores elementales: • Transformación de sus señales de entrada. Sistemas de Representación y Procesamiento Automático del Conocimiento 4 Computaci‡n Neuronal (II) – Cálculo realizado por arquitects. arquitects. modulares. – Organización: • Redes multicapa: multicapa: • Gran nº de procesadores elementales. • Alto grado de interconectividad. interconectividad. • Realizan localmente una función analógica no lineal. – Eliminación parcial de la necesidad de Sustituir por programación Algoritmos de Aprendizaje Procedimientos Supervisados modifican el valor de los parámetros que definen la computación Procedimientos No Supervisados Sistemas de Representación y Procesamiento Automático del Conocimiento Elementos de una Red Neuronal Artificial (I) ai(t) – Elementos de una Neurona: • • • • • fi Valor o Estado de Activación ai(t). (t). Señal de salida (y (t)). (yi(t)). Peso de una sinapsis (w (wij): factor asignado a cada sinapsis. Neti = ∑ y j wij Entrada Total (Net (Neti) j Función de salida (f (fi): yi(t) = fi(ai(t)) – Función Escalón – Función Lineal y Mixta – Función Sigmoidal – Función Gaussiana • Función de Activación (F): ai(t+1) = F(a F(ai(t), Neti) • Regla de Aprendizaje: modificar los pesos de la red (w (wij) Sistemas de Representación y Procesamiento Automático del Conocimiento 5 Elementos de una Red Neuronal Artificial (II) – Capa o Nivel: • Cjto. Cjto. de neuronas cuyas entradas provienen de la misma fuente y cuyas salidas se dirigen al mismo destino. – Tipos de Capas: • Entrada: Reciben estímulos externos. • Ocultas: Se genera la representación interna de la información. • Salida. Sistemas de Representación y Procesamiento Automático del Conocimiento Elementos de una Red Neuronal Artificial (III) – Formas de Conexión entre Neuronas: • Propagación hacia delante: ninguna salida de las neuronas es entrada del mismo nivel o niveles anteriores. • Propagación hacia atrás: las salidas de las neuronas pueden ser entradas del mismo nivel o niveles anteriores (incluyéndose ellas mismas). Sistemas de Representación y Procesamiento Automático del Conocimiento 6 Elementos de una Red Neuronal Artificial (IV) – Dinámica: • Asíncrona: las neuronas evalúan su estado contínuamente según les va llegando la información. • Síncrona: Síncrona: los cambios se realizan a la vez en todas las neuronas. Sistemas de Representación y Procesamiento Automático del Conocimiento Ventajas de las Redes Neuronales (I) • Similares al cerebro: • Capaces de aprender de la experiencia. • Generalizar de casos anteriores a nuevos casos. • Abstraer características esenciales a partir de entradas que representan información relevante. – Aprendizaje Adaptativo: Adaptativo: • Basado en un entrenamiento o experiencia inicial. • Aprende a llevar a cabo ciertas tareas mediante un entrenamiento con ejemplos ilustrativos. • Capacidad de autoajustarse de las neuronas. • Adaptarse a las nuevas condiciones. • Algoritmo de aprendizaje Proporciona la capacidad de discriminar mediante un entrenamiento con patrones Sistemas de Representación y Procesamiento Automático del Conocimiento 7 Ventajas de las Redes Neuronales (II) – Autoorganización: • Modificación de la red neuronal completa para llevar a cabo un objetivo específico. Permite incluso responder • Generalización ante información incompleta – Tolerancia a fallos: • Respecto a los datos Reconocer patrones con ruido, distorsionados o incompletos • Seguir realizando su función (+ ó -) aunque se destruya parte de la red. • Información distribuida en las conexiones entre neuronas ∃ redundancia Sistemas de Representación y Procesamiento Automático del Conocimiento Ventajas de las Redes Neuronales (III) – Operación en Tiempo Real: • Posibilitada por su implementación paralela. • Entorno de Tiempo Real Mínima necesidad de cambio en los pesos de las conexiones o entrenamiento – Fácil inserción dentro de la tecnología existente: • Una red puede ser rápidamente entrenada, comprobada, verificada y trasladada a una implementación hw de bajo coste Es fá fácil insertar redes neuronales para aplicaciones especí específicas dentro de sistemas existentes Sistemas de Representación y Procesamiento Automático del Conocimiento 8 Realizaci‡n de Redes Neuronales – Simulación en un ordenador normal mediante sw específico • Principal Uso: Para entrenamiento y evaluación. • Desventaja: Simulación de redes con un gran paralelismo mediante máquinas secuenciales. secuenciales. – Mediante arquitects. arquitects. orientadas a la ejecución de procesos con un alto grado de paralelismo (redes de transputers, transputers, ...) • Más rápido, pero sigue siendo una simulación. • Neurocomputador: Neurocomputador: Cjto. Cjto. de procesadores conectados que operan concurrentemente (Mark (Mark III y IV, el ANZA y ANZA Plus o el DeltaDelta-Sigma). – Implementación por circuitos integrados específicos (Chips Neuronales): N64 de Intel (chip con 64 neuronas y 1000 sinapsis, capaz de procesar 2500 conexiones por segundo) • Mucho más rápidos. • Problema: Pérdida de flexibilidad (no se pueden conseguir sinapsis con pesos variables -necesario para el aprendizajeaprendizaje-). Sistemas de Representación y Procesamiento Automático del Conocimiento 9