Ejemplo Perceptron Simple

download Ejemplo Perceptron Simple

of 29

Transcript of Ejemplo Perceptron Simple

  • Ing. Ivan Mejia Cabrera

    Ing. Ivan Mejia Cabrera

  • Ing. Ivan Mejia Cabrera

    Redes Neuronales

    Razonamiento Aproximado

    Algoritmos Genticos

    Teora del Caos

    Colonias de hormigas

    En la emulacin,

    ms o menos

    inteligente, del

    comportamiento de

    los sistemas

    biolgicos

    M

    E

    T

    O

    D

    O

    L

    O

    G

    I

    A

    S

    Manejar las

    imprecisiones

    e

    incertidumbres

    Al resolver

    problemas

    relacionados

    con el mundo

    real

    Problemas

    que no

    pueden

    describirse

    fcilmente

    con un

    enfoque

    algortmico

    tradicional

    sontienen

    su origen

    que

    aparecen

    permiten

  • Ing. Ivan Mejia Cabrera

    REDES NEURONALES ARTIFICIALES

    Basados en el comportamiento del

    sistema nerviosa

    las neuronas poseen caractersticas que

    las diferencian de las otras clulas, tal

    como su capacidad de comunicarse

    En todo el sistema nervioso central

    del ser humano hay alrededor de 1011

    neuronas y existen alrededor de 1015

    conexiones.

  • Ing. Ivan Mejia Cabrera

    Neurona biolgica

    La teora y modelado de redes

    neuronales artificiales est inspirada en

    la estructura y funcionamiento del

    sistema nervioso, donde la neurona es

    el elemento fundamental.

    Las neuronas poseen caractersticas

    que las diferencian de las otras clulas,

    tal como su capacidad de comunicarse.

    Por lo general una neurona recibe

    informacin de miles de otras neuronas y, a

    su vez, enva informacin a miles de

    neuronas ms.

  • Ing. Ivan Mejia Cabrera

    Ramn y Cajal, Santiago

    (1852-1934)

    Cajal argumentabaconvincentemente que lasneuritas de las diferentesneuronas no tienencontinuidad unas con otras yque es preciso que secomuniquen por contacto yno por continuidad. Esta ideade que la neurona cumpla lateora celular empez aconocerse con el nombre dedoctrina neuronal. Cajal en1906 recibe el Premio Nbel.

    http://cajal.unizar.es

  • Dendritas Cuerpo

    celularAxn Sinapsis

    Recibir

    seales

    de

    entrada

    Combina,

    integra y

    emite

    seales de

    salida

    Transporta las

    seales a los

    terminales

    axnicos

    Punto de

    conexin

    con otra

    neurona

    Comunicacin neuronal

  • Seales

    Neuronales

    Elctricas

    Qumicas

    Impulsos elctricos

    generados por la neurona

    y transportados a lo largo

    del axn

    Sustancias qumicas neurotransmisores que fluyen a travs de un

    contacto especial llamado

    sinapsis y contribuyen a

    transmitir los impulsos

    nerviosos de una neurona

    a otra

    Naturaleza de las seales neuronales

  • Ing. Ivan Mejia Cabrera

    DEFINICIN DE RED

    NEURONAL ARTIFICIAL

    Una nueva forma de computacin, inspirada en modelos biolgicos.

    Un modelo matemtico compuesto por un gran nmero de elementos procesales organizados en niveles.

    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.

    En general son modelos que intentan reproducir el

    COMPORTAMIENTO del cerebro

  • Ing. Ivan Mejia Cabrera

    McCulloch Warren Pitts Walter (1943)

    Los primeros tericos que concibieron los

    fundamentos de la computacin neuronal fueron

    Warren McCulloch, un neurofisilogo, y Walter Pitts,

    un matemtico, quienes, en 1943, lanzaron una teora

    acerca de la forma de trabajar de las neuronas. Ellos

    modelaron una red neuronal simple mediante

    circuitos elctricos

  • Ing. Ivan Mejia Cabrera

    Rosenblatt, Frank (1957)

    En 1957, comenz el desarrollo del Perceptron.El

    Perceptron es la ms antigua red neuronal, y se usa hoy

    en da de varias formas para la aplicacin como

    reconocedor de patrones.

  • Ing. Ivan Mejia Cabrera

    Hopfield, John (1982)

    En 1982, coincidieron numerosos eventos que hicieron resurgir el inters por las redes neuronales. John Hopfield, fsico, present su trabajo sobre redes neuronales en la Academia Nacional de las Ciencias . En el trabajo describe con claridad y rigor matemtico una red a la que ha dado su nombre

  • NEURONA ARTIFICIAL

  • CAPAS DE UNA RED

    NEURONAL ARTIFICIAL

  • Unidad U iW j i

    Y i Net j

    F(aj(t),Netj)

    =

    a j(t+1)

    fj (aj (t+1)

    =

    Y j

    Entrada

    total Funcin de

    salida o

    transferencia

    Funcin o

    regla de

    activacin

    Salida

    y j

    Unidad U j

    Estructura de una red neuronal

  • Net j =

    a j (t+1) = F ( a i (t), Net i ) generalmente F es la identidad

    Y j (t +1) = f ( Net j )

    n

    i

    iij yw

  • Ing. Ivan Mejia Cabrera

    MECANISMOS

    DE

    APRENDIZAJE

    Mecanismos de

    aprendizaje de la red

    Reglas o

    algoritmos

    Aprendizaje

    supervisado

    Aprendizaje no

    supervisado

    A. por correccin

    de errorA. por refuerzo A. estocstico

    Proceso por el cual

    una red modifica sus

    pesos en respuesta

    a una informacin

    de entrada

    Regla del

    Perceptron

    Regla delta o de

    Widrow - HoffRegla delta

    generalizada o

    Backpropagation

  • Ing. Ivan Mejia Cabrera

    EL PERCEPTRON

    Primer modelo de red neuronal desarrollado por Rosenblatt 1958.

    Est formada por varias neuronas lineales para recibir las entradas a la red y una neurona de salida entrada.

    Despert gran inters en los aos 60 por su capacidad de reconocer patrones sencillos.

    Es capaz de decidir cundo una entrada presentada a la red pertenece a una de las dos clases que es capaz de reconocer.

  • Ing. Ivan Mejia Cabrera

    EL PERCEPTRON n ENTRADAS

    n

    i

    ii xw1

    )( .

    .

    .

    w1

    w2

    wn

    x1

    x2

    xn

    x

    f (x)

    y = f [ ]-1

    1

  • Ing. Ivan Mejia Cabrera

    EL PERCEPTRON 2 ENTRADAS

    x1

    x2

    BA

    AA

    AB

    BB B

    x1

    x2

    w1

    w2

    x1

    x2

    y = f ( w1 x1 + w2 x2 - ) x

    f (x)

    -1

    1

    La neurona de salida del Perceptron realiza la suma ponderada de las entradas, resta el umbral

    y pasa el resultado a la funcin de transferencia

    de tipo escaln.

    Si la repuesta es +1, el patrn presentado pertenece a la clase A y si la respuesta es -1, el

    patrn pertenece a la clase B.

    X0=1

    W0= -

  • Ing. Ivan Mejia Cabrera

    REGLA DE APRENDIZAJE DEL

    PERCEPTRON

    El algoritmo de aprendizaje es de tipo supervisado.

    En el proceso de entrenamiento, el Perceptron se expone a un conjunto de patrones de entrada, y los pesos de la red son ajustados de forma que al final del entrenamiento se obtenga las salidas esperadas para cada uno de esos patrones de entrada.

    A continuacin el algoritmo de ajuste de pesos para realizar el aprendizaje de un Perceptron ( aprendizaje por correccin de error ).

  • Ing. Ivan Mejia Cabrera

    Inicializacin de los pesos y del umbral

    Inicialmente se asignan valores aleatorios a cada uno de los pesos wi de las conexiones y al umbral ( -w0 = ).

    Presentacin de un nuevo par (Entrada, salida esperada)

    Patrn de entrada Xp = ( x1, x2, x3, , xn), salida esperada d (t).

    Clculo de salida actual

    siendo f la funcin de transferencia escaln.

    Adaptacin de los pesos

    w i (t+1) = w i (t) + [ d(t) y (t) ] xi (t)

    es un factor de ganancia en el rango 0 a 1.

    Volver al paso 2

    y (t) = f [ ]

    n

    i

    ii xw1

    )(

  • Ing. Ivan Mejia Cabrera

    EJEMPLO

    X1 X2 X1X2

    0 0 0

    0 1 1

    1 0 1

    1 1 1

    1. Pesos elegidos aleatoriamente: w1=0.5, w2=1.5, w0 = 1.5,

    2. Tomar uno a uno los cuatro patrones de entrada y se aplica el mtodo explicado.

    Patrn de entrada: 00

    Entradas: x1=0, x2=0, x0=1

    Pesos: w0 = 1.5, w1=0.5, w2=1.5

    Neti: 0(0.5) + 0(1.5) + 1(1.5) = 1.5

    Salida producida por f: 1 ( Neti >=0)

    Salida deseada: 0

    Error: 0 1 = -1

    Pesos modificados: w0(t + 1) = 1.5 + (-1)1 = 0.5

    w1(t + 1) = 0.5 + (-1)0 = 0.5

    w2(t + 1) = 1.5 + (-1)0 = 1.5

    Valores deseados

    de la funcin OR

    Conjunto de patrones

    { 00, 01, 10, 11 }

    = 1

    PRIMERA CORRIDA

  • Ing. Ivan Mejia Cabrera

    PRIMERA CORRIDA

    Patrn de entrada: 01 Entradas: x1=0, x2=1, x0=1 Pesos: w1 = 0.5, w2=1.5,

    w0=0.5

    Neti: 0(0.5) + 1(1.5) + 1(0.5) = 2

    Salida producida por f: 1 ( Neti >=0)

    Salida deseada: 1 Error: 1 1 = 0 Los pesos no se modifican: wi (t + 1) = wi ( t )

    Patrn de entrada: 10 La salida es igual a la deseada,

    por lo que no varan los pesos.

    Patrn de entrada: 11 La salida es igual a la deseada,

    por lo que no varan los pesos.

    Existe un patrn de entrada, 00, para el cual el error cometido no es cero, por lo tanto se repite el proceso a partir de 2 !!

  • Ing. Ivan Mejia Cabrera

    SEGUNDA CORRIDA

    3. Se toman de nuevo los cuatro patrones de entrada.

    Patrn de entrada: 00 Entradas: x1=0, x2=0, x0=1 Pesos: w1 = 0.5, w2=1.5, w0=0.5 Neti: 0(0.5) + 0(1.5) + 1(0.5) = 0.5 Salida producida por f: 1 Salida deseada: 0 Error: 0 1 = -1 Pesos modificados:

    w0(t + 1) = 0.5 + (-1)1 = -0.5 w1(t + 1) = 0.5 + (-1)0 = 0.5 w2(t + 1) = 0.5 + (-1)0 = 1.5

    Patrn de entrada: 01 Entradas: x1=0, x2=1, x0=1 Pesos: w1 = 0.5, w1=1.5, w0= -

    0.5

    Neti: 0(0.5) + 1(1.5) + 1(-0.5) = 1

    Salida producida por f: 1 Salida deseada: 1 Error: 1 1 = 0 Los pesos no se modifican:

    wi (t + 1) = wi ( t )

    Patrn de entrada: 10 La salida es igual a la deseada, por lo

    que no varan los pesos.

    Patrn de entrada: 11 La salida es igual a la deseada, por lo

    que no varan los pesos.

  • Ing. Ivan Mejia Cabrera

    TERCERA CORRIDA

    Se toman de nuevo los cuatro patrones.

    Patrn de entrada: 00 Entradas: x1=0, x2=0, x0=1 Pesos: w1 = 0.5, w2=1.5, w0= -

    0.5

    Neti: 0(0.5) + 0(1.5) + 1(-0.5) = - 0.5

    Salida producida por f: 0 Salida deseada: 0 Error: 0 0 = 0 No varan los pesos

    wi (t + 1) = wi ( t )

    Patrn de entrada: 10 La salida es igual a la deseada,

    por lo que no varan los pesos.

    Patrn de entrada: 11 La salida es igual a la deseada,

    por lo que no varan los pesos.

    Con estos nuevos pesos los patrones de entrada coinciden con las salidas, ya no se comete ningn error y por lo tanto la etapa de aprendizaje concluye !!. FIN

  • i x1 x2 d (t) w1(t) w2(t) w0(t) y error w1(t+1) w2(t+1) w0(t+1)

    1 0 0 0 0.5 1.5 1.5 1 -1 0.5 1.5 0.5

    0 1 1 0.5 1.5 0.5 1 0 0.5 1.5 0.5

    1 0 1 0.5 1.5 0.5 1 0 0.5 1.5 0.5

    1 1 1 0.5 1.5 0.5 1 0 0.5 1.5 0.5

    2 0 0 0 0.5 1.5 0.5 1 -1 0.5 1.5 -0.5

    0 1 1 0.5 1.5 -0.5 1 0 0.5 1.5 -0.5

    1 0 1 0.5 1.5 -0.5 1 0 0.5 1.5 -0.5

    1 1 1 0.5 1.5 -0.5 1 0 0.5 1.5 -0.5

    3 0 0 0 0.5 1.5 -0.5 0 0 0.5 1.5 -0.5

    0 1 1 0.5 1.5 -0.5 1 0 0.5 1.5 -0.5

    1 0 1 0.5 1.5 -0.5 1 0 0.5 1.5 -0.5

    1 1 1 0.5 1.5 -0.5 1 0 0.5 1.5 -0.5

  • INTRODUCCION A LA PROGRAMACIN LOGICA CON PROLOG

    e = nmero de Euler o constante de Napier

    e\, 2,71828 18284 59045 23536 02874 71352 66249 77572 47093 69995...

    Muchos procesos naturales y

    curvas de aprendizaje de

    sistemas complejos muestran

    una progresin temporal desde

    unos niveles bajos al inicio,

    La funcin sigmoide permite

    describir esta evolucin.

  • ARIMETICA EN PROLOG

    X = Y X e Y ocupan el lugar del mismo nmero

    X \= Y X e Y ocupan el lugar de distintos nmeros

    X < Y X es menor que Y

    X > Y X es mayor que Y

    X = Y X es mayor o igual que Y

    X + Y La suma de X e Y

    X Y La resta de X e YX * Y El producto de X e Y

    X / Y El cociente de X dividido por Y

    X mod Y El resto de X dividido por Y