Vous êtes sur la page 1sur 47

Introduccin a Las redes Neuronales (Neurales)

Introduccin a las Redes Neuronales Artificiales

Bibliografia: Simon Haykin, Neural Networks: A comprehensive


Foundation, Segunda Edicin, Prentince Hall, 1998.

Christopher Bishop, Neural networks for pattern


recognition, Oxford press, 1995. " Neural Networks Toolbox: User's guide. Version 4",

Demuth and M. Beale (Disponible en http://www.mathworks.com/access/helpdesk/h elp/pdf_doc/nnet/nnet.pdf)

H.

Introduccin a las Redes Neuronales Artificiales

Introduccin a las Redes Neuronales Artificiales

Introduccin a las Redes Neuronales Artificiales

INTRODUCCIN A LAS REDES NEURONALES Y SUS APLICACIONES

Introduccin a las Redes Neuronales Artificiales

Introduccin

Una red neuronal artificial es una herramienta diseada para emular la forma en que el cerebro humano funciona

Cmo funciona el cerebro humano ? Cmo aprende el ser humano ? Dnde se guarda el conocimiento ? Por qu es tan eficiente el cerebro humano ?

Introduccin a las Redes Neuronales Artificiales

Introduccin

El cerebro humano est compuesto por una gran cantidad de elementos bsicos denominados neuronas Bsicamente las neuronas estn formadas por: Un cuerpo central o Ncleo Un mecanismo de conexin con otras neuronas (sinapsis): Axn y dendritas

Introduccin a las Redes Neuronales Artificiales

Introduccin

http://www.4colorvision.com/pix/pyramidpix.gif

Introduccin a las Redes Neuronales Artificiales

Introduccin

Los estmulos recibidos en el cerebro son transmitidos entre las neuronas mediante las conexiones sinpticas. Cuando una neurona es estimulada libera una pequea cantidad de un componente qumico (neurotransmisor). Este viaja a travs del axn hasta llegar a las dendritas de otras neuronas en las cuales el proceso se repite. Este proceso sirve disminuir la relacin involucradas en el. para incrementar o entre las neuronas

As, ante un determ inado estmulo ciertas neuronas se activan y otras se inhiben

Introduccin a las Redes Neuronales Artificiales

Introduccin

Ejemplo

Respuesta Estmulo 1

Estmulo 2

Respuesta

Introduccin a las Redes Neuronales Artificiales

Introduccin

Mediante un proceso de aprendizaje se logran establecer los niveles correctos de activacin-inhibicin de las neuronas Cuando este proceso se completa entonces ante determinados estmulos sabemos como responder y aprendemos El conocimiento adquirido est entonces en los niveles de relacin entre las neuronas logrados durante e l proceso de aprendizaje El cerebro es entrenado por repeticin de estmulos !

Ejemplo: Los nios !

Introduccin a las Redes Neuronales Artificiales

Introduccin

Cmo puede ser el cerebro tan eficiente ? Por la enorme cantidad de neur onas (aprox. 100 billones) y la manera en que estn interc onectadas (aprox. 60 trillones de sinapsis) Por la capacidad de organizarse, construir reglas y aprender de la experiencia

Qu es y cmo construir una red neuronal artificial?

Introduccin a las Redes Neuronales Artificiales

Introduccin

Emulando entonces el funcionamiento del cerebro construiremos redes neuronales artificiales interconectando elementos de procesamiento ms bsicos como las neuronas.

Hopfield network

Feedforward neural network

Kohonen network

Para entender l as redes neuronales artificiales es necesario entender y modelar las unidad es ms bsicas o neuronas artificiales
Introduccin a las Redes Neuronales Artificiales

Introduccin

Redes Neuronales Artificiales


Is a massive parallel distributed processor that has a natural propensity for storing experimental knowledge and making available for use (Haykin, 1994)

Introduccin a las Redes Neuronales Artificiales

Introduccin

Beneficios de usar RNA


Generalizacin: Capacidad para producir respuestas razonables a estimulos no presentados durante su entrenamiento. Adaptabilidad: La red puede ser construida para adaptar sus pesos sinpticos al medio ambiente (reentrenar). Robusta: Por su caracter distributivo, una red maneja muy bien daos a su estructura (ruido). Complejidad: Puede capturar comportamiento complejo que no es posible con mtodos tradicionales. No-paramtrico: No hace suposiciones a priori.

Introduccin a las Redes Neuronales Artificiales

MODELO DE UNA NEURONA

Introduccin a las Redes Neuronales Artificiales

Modelo de una neurona

Dendritas:

Para recibir el estmulo o establecer las conexiones sinpticas

Pesos sinpticos:
Cada dendrita tendr un peso

wj

para guardar el conocimiento adquirido

w1 w2

wm

Axn:

Para enviar la respuesta

Ncleo:

Para procesar la informacin Introduccin a las Redes Neuronales Artificiales

Modelo de una neurona

Los estmulos se consideran vectores

( x1 , x 2 , , x m )
Cada entrada del vector corresponde a un estmulo o variable en particular de la cual se tiene cierta cantidad de observaciones o valores. Cuando se recibe el est mulo, cada en trada de este es mult iplicada por el correspondiente peso sinptico de la dend rita que recibe dicho valor, y luego cada uno de estos resultados se suman.

x1
x2

w1

w2

w x1 + w2 x2 + + wm xm = wj xj 1
j=1

xm

wm
Este valor se considera como el estmulo que recibe la neurona
Introduccin a las Redes Neuronales Artificiales

Modelo de una neurona

El estmulo es procesado en el ncleo mediante la operacin

m wj x j + b = X tW + b j= 1

Se denomina funcin de transferencia o activacin

b es el parmetro de sesgo o bias

x1
x2

w1

w2

( X tW + b)
Este valor se considera como la respuesta de la neurona al estmulo recibido
Introduccin a las Redes Neuronales Artificiales

xm

wm

Modelo de una neurona

En conclusin, los parmetros del modelo de una neurona son: La funcin de transferencia

El conjunto de pesos sinpticos

El parmetro de sesgo

Este puede ser considerado como un peso sinptico w = b asociado a 0 una dendrita que recibe siempre el estmulo x0 = 1

m m wj x j + b = wj x j = X tW j=1 j= 0

1 x X = 1 xm

b w W = 1 wm

Introduccin a las Redes Neuronales Artificiales

ACERCA DE LA FUNCIN DE ACTIVACIN

Introduccin a las Redes Neuronales Artificiales

La funcin de activacin

La funcin de activacin se utiliza para limitar el rango de valores de la respuesta de la neurona. Generalmente los rangos de valores se limitan a [0,1] o [-1,1], sin embargo otros rangos son posibles de acuerdo a la aplicacin o problema a resolver. Existen diversas funciones de acti vacin y la decisin entre una u otra depender nuevamente de la aplicacin o problema a resolver. Existen funciones de activacin comnmente utilizadas y con las cuales se han obtenido resultados satisfactorios en diversas aplicaciones.

Introduccin a las Redes Neuronales Artificiales

La funcin de activacin

La funcin Umbral o threshold function Esta funcin est definida como

1 si x 0 (x) = 0 si x < 0
La respuesta de la neurona es entonces 1 o 0. Estos valores se pueden asociar a verdadero o falso y esta condicin depender de si

X tW b

X tW < b

Generalmente se utiliza para establ ecer criterios de clasificacin. Por ejemplo, 1=Elemento tipo A, 0=Elemento tipo B
En matlab la funcin se denomina hard-limit function Introduccin a las Redes Neuronales Artificiales

La funcin de activacin

X tW +b 0

1 =
-1 1

0 =

X tW +b 0
0 W = 1 1

-1

1 X = x y

X tW + b = x + y
Introduccin a las Redes Neuronales Artificiales

La funcin de activacin

Ejemplo:

0 1 estmulo X = 1 0

0.8 1 Pesos sinpticos W = 1 0.5

sesgo

b = 1

Cul es la respuesta de la neurona si se utiliza la funcin umbral ?

X tW +b = 0 * 0.8 +1*1 1*1 + 0 * 0.5 1 = 1

( 1) = 0

Introduccin a las Redes Neuronales Artificiales

La funcin de activacin

La funcin signo
Esta funcin est definida como

1 si x < 0 ( x ) = 0 si x = 0 1 si x > 0
La respuesta de la neurona es entonces -1, 0 o 1.

-1 En matlab la funcin se denomina hardlimits Introduccin a las Redes Neuronales Artificiales

La funcin de activacin

X tW +b > 0
1 = -1 =

-1

0 =

X tW +b < 0

-1

X tW +b = 0 X tW + b = x + y
Introduccin a las Redes Neuronales Artificiales

La funcin de activacin

Ejemplo:

0 1 estmulo X = 1 0

0.8 1 Pesos sinpticos W = 1 0.5

sesgo

b = 1

Cul es la respuesta de la neurona si se utiliza la funcin signo ?

X tW +b = 0 * 0.8 +1*1 1*1 + 0 * 0.5 1 = 1

( 1) = 1

Introduccin a las Redes Neuronales Artificiales

La funcin de activacin

La funcin logstica
Esta funcin est definida como

(x ) =

1 1 + exp

( x )

x R, > 0

Es una de las funciones ms utilizadas en la construccin de redes neuronales Es continua a valores en [0, 1] e infinitamente diferenciable Es la versin continua de la funcin umbral y se utiliza en problemas de aproximacin

1.4 1.2 1 0.8 0.6 0.4 0.2 0 -10 -5 0 5 10

=3 =1 = 0.3

En matlab la funcin se denomina logsig

Introduccin a las Redes Neuronales Artificiales

La funcin de activacin

Ejemplo:

0 1 estmulo X = 1 0

0.8 1 Pesos sinpticos W = 1 0.5

sesgo

b = 1

Cul es la respuesta de la neurona si parmetro 1 ?

se utiliza la funcin logstica con

X tW +b = 0 * 0.8 +1*1 1*1 + 0 * 0.5 1 = 1


( 1 ) =
1 1 + exp = 0 . 2689

(1)

Introduccin a las Redes Neuronales Artificiales

La funcin de activacin

La funcin tangente hiperblica Esta funcin est definida como

( x ) = tanh( x / 2) =

1 exp ( x ) 1 + exp ( x )

x R, > 0

Es la versin continua de la funcin signo y se usa en problemas de aproximacin Es importante por sus propiedades analticas Es continua a valores en [-1, 1] e infinitamente diferenciable

1.5 1 0.5 0 -0.5 -1 -1.5 -10 -5 0 5 10

=3 =1 = 0.3

En matlab la funcin se denomina tansig Introduccin a las Redes Neuronales Artificiales

La funcin de activacin

Ejemplo:

0 1 estmulo X = 1 0

0.8 1 Pesos sinpticos W = 1 0.5

sesgo

b = 1

Cul es la respuesta de la neurona hiperblica con parmetro 2 ?

si se utiliza la funcin tangente

X tW +b = 0 * 0.8 +1*1 1*1 + 0 * 0.5 1 = 1

( 1) = 1 exp ( 2 ) = 1 + exp ( 2 )

0 . 76159

Introduccin a las Redes Neuronales Artificiales

La funcin de activacin

La funcin Lineal
Esta funcin est definida como

(x ) = x
No limita la respuesta de la neurona

xR

Se utiliza en problemas de aproximacin o estimacin lineal

3 2 1 1 2 3

En matlab la funcin se denomina purelin

Introduccin a las Redes Neuronales Artificiales

La funcin de activacin

Una regresin lineal simple puede ser vista como la respuesta de una neurona con funcin de activacin lineal

1 X = x
1
b

b W = a

X tW = ax+ b

( X tW ) = ax + b

Introduccin a las Redes Neuronales Artificiales

La funcin de activacin

La funcin Lineal acotada Esta funcin est definida como

si x 0 0 ( x ) = x si 0 x 1 1 si x 1

En matlab la funcin se denomina satlin (saturating linear) Introduccin a las Redes Neuronales Artificiales

La funcin de activacin

La funcin Lineal acotada simtrica Esta funcin est definida como

si x 1 1 ( x ) = x si 1 x 1 1 si x 1

-1

1 -1

En matlab la funcin se denomina satlins (symmetric saturating linear Introduccin a las Redes Neuronales Artificiales

La funcin de activacin

Estmulo

X tW + b = 0 * 0.8 + 1*1 1*1 + 0 * 0.5 1 = 1


Funcin de activacin Umbral o threshold Signo logstica Tangente Hiperblica Lineal Lineal Acotada Lineal Acotada Simtrica Respuesta 0 -1 0.2689 -0.76159 -1 0 -1

La escogencia de la funcin de activacin depende de la aplicacin o problema a resolver !


Introduccin a las Redes Neuronales Artificiales

ACERCA DE LOS PESOS SINPTICOS

w1
w2

wm

Introduccin a las Redes Neuronales Artificiales

Los pesos sinpticos

Recordemos que los pesos sinpticos sirven para guardar el conocimiento adquirido. En analoga con el funcionamiento del cerebro, los valores de los pesos sinpticos se obtienen mediante un proceso de aprendizaje. Este proceso de aprendizaje puede ser dividido en: Paradigmas de aprendizaje y algoritmos de entrenamiento. Paradigmas de aprendizaje Corresponden a la manera en que la red neuronal interacta o se relaciona con el ambiente en el cual opera. Bsicamente existen 2 tipos de paradigmas: Aprendizaje supervisado (Supervised learning) Aprendizaje no supervisado (Non supervised learning)

Introduccin a las Redes Neuronales Artificiales

Los pesos sinpticos

Algoritmos de entrenamiento Son tcnicas matemticas o heursticas bien establecidas a travs de los cuales se obtienen los valores de los pesos sinpticos y el parmetro de sesgo. Estos algoritmos NO modifican la funcin de activacin elegida para el modelo de red neuronal que se entrena. Lo que hacen es modificar los pesos sinpticos utilizando el valor anterior de este mas un factor de correccin

nuevo

=W

viejo

+ W
correccin es

y se diferencian uno de otro en la forma en que dicha obtenida

Existen una amplia variedad de algoritmos de entrenamiento cada cual con sus fortalezas y debilidades. Distintos paradigmas de aprendizaje junto con distintos algoritmos de entrenamiento producen diversas redes neuronales
Introduccin a las Redes Neuronales Artificiales

Los pesos sinpticos

Existen muchos algoritmos de entren amiento, algunos de los cuales se mencionan aqui: Error correction learning or delta rule: es un aprendizaje supervisado, en donde se usa el error obtenido en la presentacin del estmulo para determinar el factor de correccin. Competitive learning: las neuronas compiten entre si para hacerse activas estableciendo. Solo una se activa a la vez (especializacin). Hebbian learning: correlaciona la actividad pre y post sinptica (si ambas neuronas se activan se fortalece la conexin y se debilita en caso contrario). Aqu el factor de correccin es multiplicativo entre la actividad pre y post sinptica. Memory Based learning: la red almacena data ya procesada en memoria. Un nuevo patrn es procesado segn su cercana (en sentido euclideo) a un patrn en memoria.
Introduccin a las Redes Neuronales Artificiales

Los pesos sinpticos

Error correction learning or delta rule


Se utiliza bajo un paradigma de entrenamiento supervisado. La respuesta de la red neuronal se compara con la respuesta deseada y el error cometido se utiliza para modificar los pesos sinpticos

x1
x2

wk 1

Neuron

wk 2

Yk =k (wkj xj )

xm

wkm

wkj ( +1) = wkj () + ek () x j ()


wkj

= Constante de aprendizaje

ek = dk Yk =

Error cometido

Introduccin a las Redes Neuronales Artificiales

Los pesos sinpticos

Hebbian learning or activity product rule Es el postulado de entrenamiento ms antiguo y se basa en consideraciones desarrolladas por Hebb, D.O (1949) en su libro The organization of behavior: A neuropsychological theory El postulado de Hebb establece bsicamente que: Cuando dos neuronas conectadas (sinpsis) se activan simultneamente, la relacin entre estas se fortalece. En caso contrario, la relacin se debilita o es eliminada. La formulacin matemtica apropiada es establecer entonces la correlacin entre el estimulo de entrada y la respuest a a dicho estmulo y utilizar esta informacin para actualizar el valor de los pesos sinpticos

wkj ( +1) = wkj () + yk () x j ()


wkj

xj

w kj

Yk
Neuron

Introduccin a las Redes Neuronales Artificiales

Los pesos sinpticos

Competitive Learning En este tipo de algoritmos se establece un mecanismo de competencia entre las neuronas y la respuesta de la red ante un determinado estmulo proviene exclusivamente de la neurona ganadora

Wj (t +1) = Wj (t ) + (t ) [ X (t ) Wj (t ) ]
w kj

X (t )

Es esta caracter stica la q ue hace que este tipo de algoritmos sean apropiados para descubrir patrones en un conjunto de datos y que por lo tanto sean usados para clasificacin

Introduccin a las Redes Neuronales Artificiales

Los pesos sinpticos

Memory based learning En este tipo de entrenamiento las experiencias pasadas estn almacenadas en la memoria de ejemplos que han sido clasificados correctamente.

En este tipo de entrenamiento un nuevo patrn de entrada es comparado con k patrones cercanos (concepto de vecindad) y luego es asignado la clasificacin ms frecuente en la vecindad. Las RBF utilizan este tipo de postulado en su entrenamiento, al igual que las redes SOM Distancias Euclidea : ||x-y|| Producto interno : xt*y ||x-y|| x y xTy
Introduccin a las Redes Neuronales Artificiales

Arquitecturas

Arquitecturas
Una capa, feedforward

Multicapa feedforward

Redes recurrentes

Introduccin a las Redes Neuronales Artificiales

Problemas

Qu tipos de problemas se pueden resolver? Asociacin de patrones: escritura. La red es presentada con muchos ejemplos de un patron hasta guardar el patron, luego al ser presentado una versin con ruido esta es capaz de reconocer el patrn. Clasificacin: una la red es entrenada con ejemplos de clasificacin conocida. Aproximacin de funciones. Identificacin, problemas inversos. Control: se conoce una seal de referencia y el objetivo es ajustar los parmetros libres para seguir la salida deseada. Filtro: son tiles en predicciones.

Introduccin a las Redes Neuronales Artificiales

Vous aimerez peut-être aussi