Download Redes Neuronales – Unidad 3 – Parte II

Document related concepts

Propagación hacia atrás wikipedia , lookup

Perceptrón multicapa wikipedia , lookup

Perceptrón wikipedia , lookup

Red neuronal prealimentada wikipedia , lookup

Adaline wikipedia , lookup

Transcript
Redes
Neuronales
Parte II
Facultad de Ciencias Exactas y Tecnología
Universidad Nacional de Tucumán
Mg. Ing. Gustavo E. Juárez
UNIDAD TEMÁTICA :
REDES NEURONALES
Introducción. De/iniciones. Topologías típicas. Redes Supervisadas. Modelo
Backpropagation – Redes No Supervisadas – Modelo de Kohonen –
ImplementaciónenMatlabmedianteToolkitsobreRedesNeuronales.ANFIS.
NEURONAS
DEFINICIÓN
“Lasneuronasarti+icialesoprocesadorelementales
undispositivosimpledecalculoque,apartirdeun
vectordeentradaprocedentedelexteriorodeotras
neuronas,proporcionaunaúnicarespuestaosalida”.
REDES NEURONALES ARTIFICIALES
DEFINICIONES
“Lasredesneuronalesarti/icialessonredesinterconectadasmasivamenteen
paraleloyconorganizaciónjerárquica,lascualesintentaninteractuarcon
losobjetosdelmundorealdelmismomodoquelohaceelsistemanervioso
biológico”.
(TeuvoKohonen)
“Modelosmatematicosdesarrolladosparaemularelcerebrohumano”
(Chen-1998)
RED
NEURONAL
ARTIFICIAL
CARACTERISTICAS, USOS Y APLICACIONES
REDES NEURONALES ARTIFICIALES
CARACTERISTICAS
•  Las características principales que reproducen las redes neuronales
arti/iciales se pueden reducir a los siguientes tres conceptos:
procesamiento paralelo, distribuido y adaptativo. [Del Brio y Sanz
Molina,2002]
•  Seajustanoseentrenan,demodoqueunaentradaparticularconducea
unasalidadedestinoespecí/ico.
•  Las RNA no ejecutan instrucciones, responden en paralelo a las entradas que
se les presenta.
REDES NEURONALES ARTIFICIALES
CARACTERISTICAS
Laredneuronalarti/icialesajustada,enbaseaunacomparacióndelasalida
delamismaconeldeobjetivo,hastalasalidadelaredseaigualalobjetivo.
OBJETIVO
ENTRADA
La Red neuronal
Incluyen conexiones
(llamados pesos)
entre las neuronas
AJUSTE
DE PESOS
SALIDA
Compara
REDES NEURONALES ARTIFICIALES
CARACTERISTICAS
Laredneuronalarti/icialesajustada,enbaseaunacomparacióndelasalida
delamismaconeldeobjetivo,hastalasalidadelaredseaigualalobjetivo.
Elentrenamientoporlotesdeunaredneuronalserealizahaciendocambios
enlospesosybasadosenelsesgodeunconjuntocompletodelosvectores
deentrada.
La entrenamiento incremental cambia los pesos y el sesgo (o ganancia) de
unaredsegúnseanecesario,despuésdelapresentacióndecadavectorde
entrada.
REDES NEURONALES ARTIFICIALES
USOS
Lasredesneuronaleshansidoentrenadaspararealizarfuncionescomplejas
endiversoscampos,loscualesincluyen:
1.  Procesamientodeimágenesydevoz
2.  Reconocimientodepatrones
3.  Planeamiento
4.  InterfacesadaptivasparasistemasHombre/máquina
5.  Predicción
6.  Controlyoptimización
7.  Filtradodeseñales
REDES NEURONALES ARTIFICIALES
APLICACIONES
Lasaplicacionesmasrelevantesson:
Aeroespacial
•Altorendimientodelpilotoautomático,simulacióndelatrayectoriadevuelo,control
delasistemasdeaeronaves,mejorasdepilotoautomático,,deteccióndeaviones
Automotor
•Automóvilsistemadeguiadoautomático,laactividaddegarantíadeanálisis
Bancario
•Comprobaryotradelecturadedocumentos,evaluacióndesolicituddecrédito
Comprobacióndelatarjetadecrédito
•Actividadinusualactividaddelatarjetadecréditodelpuntoqueposiblementepodría
estarasociadoconlapérdidadedeunatarjetadecrédito
REDES NEURONALES ARTIFICIALES
APLICACIONES
Lasaplicacionesmasrelevantesson:
Defensa
• Seguimiento de objetivos, la discriminación de objetos, reconocimiento facial,
procesamiento de sensores, sonar, de radar y la señal de imagen, extracción de
característicasysupresiónderuido.
Electrónica
• Código de predicción de secuencia, diseño integrado chip de circuito, control de
procesos,visiónarti/icial,síntesisdevoz,elmodeladonolineal
Entretenimiento
•Animación,efectosespeciales,previsionesdemercado
Industrial
•Predicciondeemisiondegasesenprocesosindustriales.
NEURONALES ARTIFICIALES
Unaneuronaconunasolaentradaescalar,sinyconsesgoserepresentan:
ENTRADA NEURONA SIN SESGO
ENTRADA NEURONA CON SESGO
θ
Funcion
Umbral que la
neurona debe
sobrepasar
para activarse
La entrada escalar “p” es un vector que contiene tantos valores como neuronas,
se transmite a través de una conexión que multiplica su la fuerza por el peso “w”
escalar para formar el producto “wp”, de nuevo un escalar.
Aquí la entrada ponderada “wp” es el único argumento de la función de
transferencia F, que produce la salida de un escalar.
La neurona de la derecha, tiene un sesgo escalar “b”.
NEURONALES ARTIFICIALES
La función de transferencia de la red de entrada “n”, da un nuevo escalar,
redultadodelasumadelaentradaponderada“wp”yelsesgo“b”.Estasuma
es el argumento de la función de transferencia “ f ”, la cual es escogida
dependiendodelasespeci/icacionesdelproblemaquelaneuronaresuelva.
Aquí“f”esunafuncióndetransferencia,típicamenteunafuncióndepasoque
tomaelargumentode“n”yproducelasalida“a”.
Se debe tener en cuenta que “w” y “b” son ambos parámetros escalares
ajustables de la neurona, de manera de presentar un comportamiento
deseado.
RED
NEURONAL
ARTIFICIAL
MODELO, TOPOLOGIA Y FASES
MODELO GENERAL DE UNA
NEURONA ARTIFICIAL
ENTRADA
NEURONA
Donde
R = número
de elementos del
Vector de entrada
Aquí el vector de entrada “p” está representado por la barra vertical a la izquierda.
Las dimensiones de “p” se muestra en “Rx1”, dado que es un vector de elementos
de entrada “R”.
Al igual que antes, una constante “1” entra en la neurona como una entrada y se
multiplica por un sesgo escalar “b”.
La entrada de red para la función de transferencia “f” es “n”, la suma del sesgo o
ganancia “b” y el producto “Wp”. Esta suma se pasa a la función de transferencia
“f“ para obtener una salida de la neurona, que en este caso es un escalar.
TOPOLOGIA DE UNA RED NEURONAL
Una vez definida el tipo de neurona que se utilizará en un modelo de redes
neuronales artificiales es necesario definir la topología de la misma.
La organización y disposición de las neuronas dentro de una red neuronal
se denomina topología, y viene dada por el número de capas, la cantidad
de neuronas por capa, el grado de conectividad, y el tipo de conexión
entre neuronas.
TOPOLOGIA DE UNA RED NEURONAL - CAPAS
•  Las neuronas suelen agruparse en unidades funcionales denominadas
capas. Se denomina capa de entrada a “aquella que esta compuesta
por neuronas de entradas y por lo tanto recibe información
procedente desde el exterior”.
•  Análogamente, se denomina capa oculta y capa de salida a aquellas
capas que están compuestas por neuronas ocultas y de salida
respectivamente.
•  Una red neuronal artificial esta compuesta por una o más capas, las
cuales se encuentran interconectadas entre sí. Entre un par de
neuronas de la red neuronal artificial pueden existir conexiones. Estas
conexiones son las sinapsis, tienen asociadas un peso sináptico, y son
direccionales.
TOPOLOGIA DE UNA RED NEURONAL - CONEXION
Definicion Feedforward (Hacia Adelante)
“Las redes neuronales con conexión hacia delante (redes feedforward)
cuando las conexiones entre las distintas neuronas de la red siguen un
único sentido, desde la entrada de la red hacia la salida de la misma”.
Definicion Feedback (Adelante-Atras)
“Cuando las conexiones pueden ser tanto hacia delante como
hacia atrás hablamos de redes recurrentes (redes feedback)”.
RED NEURONAL - FASES
Durante la operatoria de una red neuronal podemos distinguir claramente
dos fases o modos de operación: la fase de aprendizaje o
entrenamiento, y la fase de operación o ejecución.
Fase de Aprendizaje o Entrenamiento: la red es entrenada para realizar
un determinado tipo de procesamiento.
Fase de Operacion: Una vez alcanzado un nivel de entrenamiento
adecuado, se pasa a la fase de operación, donde la red es utilizada para
llevar a cabo la tarea para la cual fue entrenada.
RED NEURONAL - FASES
FASE DE APRENDIZAJE O ENTRENAMIENTO
Una vez seleccionada el tipo de neurona artificial y determinada su
topología es necesario entrenarla para que la red pueda ser utilizada.
El proceso de aprendizaje se puede dividir en tres grandes grupos de
acuerdo a sus características [Isasi Viñuela y Galván León, 2004]:
• Aprendizaje supervisado
• Aprendizaje no supervisado
• Aprendizaje por refuerzo
RED NEURONAL - FASES
FASE DE APRENDIZAJE O ENTRENAMIENTO
Aprendizaje supervisado.
Aprendizaje no supervisado.
Aprendizaje por refuerzo.
1.  Se presenta a la red un conjunto de patrones de entrada junto con la
salida esperada.
2.  Los pesos se van modificando de manera proporcional al error que se
produce entre la salida real de la red y la salida esperada.
RED NEURONAL - FASES
FASE DE APRENDIZAJE O ENTRENAMIENTO
Aprendizaje supervisado.
Aprendizaje no supervisado.
Aprendizaje por refuerzo.
1.  Se presenta a la red un conjunto de patrones de entrada.
2.  No hay información disponible sobre la salida esperada.
3.  El proceso de entrenamiento en este caso deberá ajustar sus pesos
en base a la correlación existente entre los datos de entrada-salida
exacta que debe proporcionar la red.
RED NEURONAL - FASES
FASE DE APRENDIZAJE O ENTRENAMIENTO
Aprendizaje supervisado.
Aprendizaje no supervisado.
Aprendizaje por refuerzo.
•  Este tipo de aprendizaje se ubica entre medio de los dos anteriores.
•  Se le presenta a la red un conjunto de patrones de entrada y se le
indica a la red si la salida obtenida es o no correcta.
•  No se le proporciona el valor de la salida esperada.
•  Este tipo de aprendizaje es muy útil en aquellos casos en que se
desconoce cual es la salida exacta que debe proporcionar la red.
RED NEURONAL – FASES
FASE DE OPERACIÓN
Una vez finalizada la fase de aprendizaje, la red puede ser utilizada para
realizar la tarea para la que fue entrenada.
Una de las principales ventajas que posee este modelo es que la red
aprende la relación existente entre los datos, adquiriendo la capacidad de
generalizar conceptos.
De esta manera, una red neuronal puede tratar con información que no le
fue presentada durante de la fase de entrenamiento.
RED
NEURONAL
ARTIFICIAL
PERCEPTRON. MULTICAPA
REDES NEURONALES CON CONEXIÓN HACIA DELANTE
Este tipo de redes neuronales artificiales con conexión hacia delante , que
se caracteriza por su organización en capas y conexiones estrictamente
hacia delante, utilizan algoritmos de entrenamiento del tipo supervisado.
Es el más utilizado en aplicaciones prácticas que utilizan redes
neuronales, obteniéndose muy buenos resultados fundamentalmente
como clasificadores de patrones y estimadores de funciones.
Se tipifican en:
•  PERCEPTRON
•  ADALINE/MADALINE
•  PERCEPTRON MULTICAPA
REDES NEURONALES
PERCEPTRON
•  Modelo de gran importancia histórica ya que posee un mecanismo de entrenamiento
que permite determinar automáticamente los pesos sinápticos que clasifican
correctamente a un conjunto de patrones a partir de un conjunto de datos dados.
•  Esta compuesta por dos capas de neuronas, una de entrada y una de salida. La capa de
entrada es la que recibe la información proveniente del exterior y la transmite a las
neuronas sin realizar ningún tipo de operación sobre la señal de entrada.
•  La función de activación de las neuronas de un perceptrón es del tipo escalón, dando de
esta manera sólo salidas binarias.
Cada neurona de salida del perceptrón representa a una clase. Una neurona de salida
responde con “1” si el vector de entrada pertenece a la clase a la que representa y
responde con 0 en caso contrario.
•  La operación de un perceptrón con “n” neuronas de entrada y “m” neuronas de salidas
puede ser resumida de la siguiente manera:
REDES NEURONALES
PERCEPTRON
La operación de un perceptrón con “n” neuronas de entrada y “m” neuronas de
salidas puede ser resumida de la siguiente manera:
El algoritmo de entrenamiento perceptrón es un algoritmos por corrección de
errores, los cuales ajustan los pesos de manera proporcional a la diferencia entre
la salida actual proporcionada por la red y la salida objetivo, con el fin de
minimizar el error producido por la red.
Este método de entrenamiento converge siempre en un tiempo finito y con
independencia de los pesos de partida, siempre que la función a representar sea
linealmente separable. El principal problema de este método de entrenamiento es
que cuando la función a representar no es linealmente separable el proceso de
entrenamiento oscilará y nunca alcanzará la solución.
REDES NEURONALES
ADALINE / MADALINE
La topología de la red ADALINE es similar a la del perceptrón sólo que en
este caso la función de salida de las neuronas es lineal.
Dado que las señales de entrada pueden ser continuas, la red ADALINE
es un dispositivo de entrada/salida analógica (continua) a diferencia del
perceptrón que es un dispositivo entrada/salida digital (binaria).
La operación de una red ADALINE con “n” neuronas de entrada y m
neuronas de salidas puede ser resumida de la siguiente manera:
REDES NEURONALES
ADALINE / MADALINE
La diferencia entre la red ADALINE y el perceptrón consiste en la regla de
aprendizaje que utilizan. La red ADALINE implementa como método de
aprendizaje la regla de Widrow-Hoff, también conocida como regla LMS
(Least Mean Squares, mínimos cuadrados), que realiza una
actualización continua de los pesos sinápticos de acuerdo a la contribución
de cada neurona sobre el error total de la red.
REDES NEURONALES
PERCEPTRON MULTICAPA
El perceptrón multicapa es una extensión del perceptrón simple. La topología de
un perceptrón multicapa esta definida por un conjunto de capas ocultas, una capa
de entrada y una de salida. No existen restricciones sobre la función de
activación aunque en general se suelen utilizar funciones sigmoideas.
La operación de un perceptrón multicapa con una única capa oculta puede ser
resumida de la siguiente manera:
Este modelo es el más utilizado en la actualidad. Podemos mencionar algunas
áreas de aplicación:
•  Codificación de información
•  Traducción de texto en lenguaje hablado
•  Reconocimiento óptico de caracteres (OCR)
ENTRENAMIENTO DE REDES NEURONALES
Partiendo de un conjunto de pesos sinápticos aleatorio, el proceso de
aprendizaje busca un conjunto de pesos que permitan a la red desarrollar
correctamente una determinada tarea.
El proceso de aprendizaje es un proceso iterativo, en el cual se va
refinando la solución hasta alcanzar un nivel de operación suficientemente
bueno.
ENTRENAMIENTO DE REDES NEURONALES
OBJETIVOS
El objetivo del método de entrenamiento es encontrar el conjunto de pesos
sinápticos que minimizan (o maximizan) la función.
El método de optimización proporciona una regla de actualización de los
pesos que en función de los patrones de entrada modifica iterativamente
los pesos hasta alcanzar el punto óptimo de la red neuronal.
REFERENCIAS
Libros
Redes Neuronales y Sistemas Difusos / Bonifacio Martin del Brío y Alfredo Sanz Molina.
Alfa Omega – Rama. Colombia/c.2005
Sitios Webs
http://www.youtube.com/watch?v=Krabo0GPc5A
http://www.youtube.com/watch?v=uMbZGSEuI74
http://www.youtube.com/watch?v=1WGPk2eONZ0
Referencias
http://www1.herrera.unt.edu.ar/intar