neurocomputación (redes neuronales artificiales)

40
NEUROCOMPUTACIÓN ( ( R R E E D D E E S S N N E E U U R R O O N N A A L L E E S S A A R R T T I I F F I I C C I I A A L L E E S S ) ) I I G G N N A A C C I I O O R R E E Q Q U U E E N N A A R R A A M M O O S S D D p p t t o o . . C C i i e e n n c c i i a a s s d d e e l l a a C C o o m m p p u u t t a a c c i i ó ó n n e e I I . . A A . . E E . . T T . . S S . . I I . . I I n n g g e e n n i i e e r r í í a a I I n n f f o o r r m m á á t t i i c c a a U U n n i i v v e e r r s s i i d d a a d d d d e e G G r r a a n n a a d d a a NC. Tema 1. Introducción a Redes Neuronales I. Requena 1 de 40

Upload: danielgomezm

Post on 28-Dec-2015

52 views

Category:

Documents


9 download

DESCRIPTION

...

TRANSCRIPT

Page 1: Neurocomputación (Redes Neuronales Artificiales)

NEUROCOMPUTACIÓN

((RREEDDEESS NNEEUURROONNAALLEESS AARRTTIIFFIICCIIAALLEESS))

IIGGNNAACCIIOO RREEQQUUEENNAA RRAAMMOOSS

DDppttoo.. CCiieenncciiaass ddee llaa CCoommppuuttaacciióónn ee II.. AA..

EE..TT..SS..II.. IInnggeenniieerrííaa IInnffoorrmmááttiiccaa

UUnniivveerrssiiddaadd ddee GGrraannaaddaa

NC. Tema 1. Introducción a Redes Neuronales I. Requena 1 de 40

Page 2: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 2 de 40

BIBLIOGRAFÍA BÁSICA

1. E. Aarts; J. Korts. Simulated Annealing and Boltzmann

Machines. Wiley & Sons. 1988 2. S.J. Denker. Neural Networks for computing. A.M.I. of

Phisic. 1986. 3. J.A. Freeman; D.M. Skapura. Redes Neuronales

(Algoritmos, Aplicaciones, Programas). Add. WesleyDíaz Santos. 1991.

4. J.R. Hilera; V. Martinez. Redes Neuronales Artificiales. Fundamentos, modelos y aplicaciones. Rama. 1995

5. S. Haykin. Neural networks. A comprehensive foundation. Ptice Hall. NY 1999.

6. T. Kohonen.. Self-Organization and Associative Memory. Springer-Verlag. 1984

7. B. Krose; P. Van der Smagt. An introduction to neural networks. Univ.Amsterdam.1996. Disponible en http://www.robotic.dlr.de/Smagt/books/

8. E. Sanchez-Sinencio; C. Lau. Artificial Neural Networks. Paradigms, applications, hardware and implementations. IEEE Press. 1992

9. K.P. Simpson. Artificial Neural Systems. Foundations, Paradigms, Applications and Implementations. Pergamon Press. 1991

10. P.H. Wasserman. Neural Computing. Theory and Practice. Van Nostrand. 1989

11. P.H. Wasserman. Avanced Methods in Neural Computing. Van Nostrand. 1993

Page 3: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 3 de 40

INTRODUCCIÓN A LAS R.N.A.

Aspectos de la computación en tres caminos.

a) Computación teórica. Autómatas, Funciones Recursivas, ... b) Ordenadores digitales. Nuevas tecnologías, lenguajes, .... c) Intentos de modelizar el cerebro biológico

1.- Redes Neuronales (modelizar el "procesador") 2.- Conjuntos - Lógica Difusa (representar la información)

♦ Un programa y su salida (len máquina) se pueden ver como una sucesión de ceros y unos Un programa = f: N N

♦ Existen muchas funciones para las que no podemos escribir un programa en nuestro LAN, aunque seguro que estamos interesados en resolver el problema asociado a la función.

Entones nos preguntamos cosas como: - ¿Para qué problemas no podemos escribir un programa ? - ¿Podemos resolverlos con otros LP y/o computadores?.

Para los problemas que sí tienen un programa asociado, - ¿Se podrá ejecutar el programa en un tiempo razonable? - ¿ Los ordenadores futuros podrán hacerlo ?

♦ La teoría de la computabilidad puede caracterizarse como la búsqueda de respuestas para las siguientes preguntas: 1) ¿Qué pueden hacer los ordenadores (sin restricciones)? 2) ¿Tienen límites los métodos automáticos de cálculo?. 3) ¿Qué podemos calcular sin hacer programas?.

♦ Uno de los modelos de computación, que no necesita programas, son las Redes Neuronales Artificiales (RNA).

Page 4: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 4 de 40

Redes Neuronales Artificiales

El cerebro humano es una red de neuronas, compleja, desconocida, envidiada (hasta 1011 neuronas), pero al fin, una red de neuronas conectadas de forma que a cada neurona llegan muchas señales de otras (entre 103 y 104 sinapsis) y producen una sola salida (axon).

RNA: Su objetivo último es emular el cerebro biológico con máquinas. Son modelos matemáticos de las (teóricas) actividades mentales-cerebrales. Explotan el procesamiento local en paralelo y la representación distribuida del cerebro.

• McCulloch-Pitts (1943) simularon una neurona binaria. • RNA es una colección de PE (o NA), con varias entradas

(de otras neuronas o externas), y una salida. Cada entrada tiene un peso que puede modificarse para conseguir un objetivo (APRENDIZAJE).

Primero, máquinas para realizar funciones concretas. Después, máquinas que aprendieran, distinguiendo la memoria de los procedimientos complejos de abstracción, predicción y generalización de cosas nunca "vistas". Se basaban en ideas del refuerzo de hechos del pasado.

♦ Las primeras RNA (Perceptron, Madaline) ♦ Duro golpe a RNA (Minsky-Papert 66). ♦ Resurgir tras casi 20 años de abandono (backpropagation). ♦ Redes Recurrentes, Mem. Asoc. ( Memorizar y

Generalizar) ♦ Autoorganización (Apren. No Supervisado). Abstraccion

Page 5: Neurocomputación (Redes Neuronales Artificiales)

♦ RNA como “Aproximadores Universales” (PMC y FBR). ♦ La implementación.

♦ Las primeras aplicaciones: Representar tareas humanas de procesar información (sonido, visión, conocimiento, control-motor). Otras : Compresión de Datos, Modelar Sistemas, Reconocimiento de Patrones, Problemas de Decisión y Optimización (no-lineal), ...

♦ El gran interés por RN: Son modelos que permiten calcular funciones (o problemas) de los que no se conocen su forma ni características, a partir de un conjunto de ejemplos. Es un campo que funciona, con gran potencial y futuro, muchas limitaciones y preguntas sin respuesta.

♦ Futuro: Nuevas tecnologías. RNA más parecidas a la mente. Hibridación.

NC. Tema 1. Introducción a Redes Neuronales I. Requena 5 de 40

Page 6: Neurocomputación (Redes Neuronales Artificiales)

CERBIOL

• El cerebro ha sido fruto de numerosos estudios cien

Su inmensa complejidad hace que nuestros conocimsobre su funcionamiento sea muy rudimentario. Inccomportamiento de una sola neurona es extremadacomplejo

• “Conceptos”elementales se encuentran distribuido• Zonas muy localizadas => Funciones bien definida

visión, el habla, el movimiento, ...) • ¿Qué características son fundamentales en el

extraordinario funcionamiento del cerebro ? • ¿Cuáles son accidentales, impuestas simplemente p

motivos biológicos o de evolución?

NC. Tema 1. Introducción a Redes Neuronales I. Requena 6

EL EBRO OGICO

tíficos. ientos

luso el mente

s s ( la

or

de 40

Page 7: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 7 de 40

• FUNCIONES DEL CEREBRO: •• SSEENNSSOORRIIAALL

•• MMOOTTOORRAA

•• TTRRAATTAAMMIIEENNTTOO DDEE LLAA IINNFFOORRMMAACCIIÓÓNN::

-- AAccttiivviiddaadd ddee CCoonnttrrooll:: NNiivveell EEnncceeffáálliiccoo IInnffeerriioorr

((BBuullbboo,, TTáállaammoo,, CCeerreebbeelloo,, ........)) yy MMéédduullaa

-- MMeemmoorriiaa:: NNiivveell EEnncceeffáálliiccoo SSuuppeerriioorr ((CCoorrtteezzaa))

-- PPrroocceessaammiieennttoo:: NNoo eessttáá ccllaarroo ddóónnddee nnii ccoommoo..

-- SSeelleecccciióónn ddee llaa IInnffoorrmmaacciióónn:: SSee ddeesseecchhaa

((iinnccoonnsscciieenntteemmeennttee)) eell 9999 %% ddee IInnffoorrmmaacciióónn

rreecciibbiiddaa,, ppeerroo ssuujjeettaa aa aatteenncciióónn iinnmmeeddiiaattaa..

-- FFiijjaarr ddiirreecccciióónn ddee pprrooppaaggaacciióónn..

-- AAllmmaacceennaarr DDaattooss ((ppoorr eexxcciittaacciióónn rreeppeettiittiivvaa))

-- PPaappeell bbáássiiccoo ddee llaass SSiinnaappssiiss eennttrree nneeuurroonnaass..

Page 8: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 8 de 40

CCEERREEBBRROO VVSS OORRDDEENNAADDOORR

UUNNIIDD.. EE//SS VVee ,, OOíírr,, SSeennttiirr rr

rr rr rr II

II rr rr

rr rr

((

rr (( )) rr

rr

rr

rr

II

TTeeccllaaddoo,,……

HHaabbllaa ,, MMoovvee MMoonniittoo ,, mmpp..

**CCOONNTTRROOLL EEnnccééff.. nnffee iioo UU..CC..

**MMEEMMOORRIIAA CCoorrtteezzaa CCee eebb aall MM..PP..,, MM.. SSeecc..

TTIIPPOO MMEEMM.. DDiissttrr.. AAcccc.. CCoonntteenniiddoo)) DDiirreecccciioonnaabbllee

**PPRROOCCEESSOO PPaa aalleelloo mmaassiivvoo SSee iiee

AAssoocciiaacciióónn LLóóggiiccaa

NNUUMM.. PPRROOCC.. BBiilllloonneess++mmiilleess ccoonneexxii.. 11 -- ppooccooss

TTIIEEMMPPOO PP.. MMiilliisseegguunnddooss?? NNaannoossggss

OOPPEERRAACC.. //SSGG CCiieennttooss MMiilllloonneess

CCOONNTTRROOLL PP.. CCaassii AAnnáárrqquuiiccoo AAuuttáá qquuiiccoo

PPRREE.. AARRIITTMMEE.. EEssccaassaa CCaassii TToottaall

TT.. FFAALLLLOOSS TToollee aannttee NNoo TToolleerraa

RRIIGGIIDDEEZZ AAddaappttaabbllee MMuuyy RRííggiiddoo

PP.. CCOOMMPPLLEEJJOO MMuuyy EEffiiccaazz NNoo eeffiiccaazz

RReeccoonnoocc.. PPaattrroonneess PPoobb ee

AALLGGOORRIITTMMOOSS NNoo nnssttrruucccc.. LLeenngg.. RRííggiiddooss

Page 9: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 9 de 40

C

((

II rr

))

II

CAAPPAACCIIDDAADDEESS DDEELL CCEERREEBBRROO

AAPPRREENNDDEERR DDee EEjjeemmppllooss ((iinndduuccttiivvoo))

PPoorr RRaazzoonnaammiieennttoo ((ddeedduuccttiivvoo)) AALLMMAACCEENNAARR DDAATTOOSS ((sseennttiiddoo aammpplliioo)) AABBSSTTRRAAEERR yy GGEENNEERRAALLIIZZAARR

GGEENNEERRAARR CCOONNOOCCIIMMIIEENNTTOO CCoonncceepp.. DDiiffuussooss))

DDaattooss nnffoo mmaacciióónn CCoonnoocciimmiieennttoo

IINNTTUUIICCIIOONN.. IIMMAAGGIINNAACCIIOONN..

MMOODDEELLOOSS AARRTTIIFFIICCIIAALLEESS

** OORRDDEENNAADDOORREESS ((BBaasseess DDaattooss,, ......

** RR..NN..AA.. ** SS SSTTEEMMAASS EEXXPPEERRTTOOSS

AALLGGOO ddee NNAADDAA ddee

Page 10: Neurocomputación (Redes Neuronales Artificiales)

LA FISIOLOGÍA DE LA NEURONA

o Cuerpo celular : núcleo de la neurona o Dendritas : estructura ramificada (recepción información) o Axón : estructura lineal (transmisión de información) o Neuritas : estructura ramificada (emisión de información)

o Transmisión. Multitud de señales electroquímicas se propagan desde la entrada dendrítica, a través del cuerpo celular, y finalmente por el axón a otras neuronas.

o Sinapsis. Son conexiones desde el axón a otras dendritas Buenas conexiones permiten una buena transmisión Conexiones deficientes propician una transmisión débil Las sinápsis pueden ser excitadoras o inhibidoras

o El cerebro está constituido por muchos elementos (neuronas) más simples conectados entre sí

o Las neuronas se comunican entre sí mediante conexiones de diferente fuerza

o Cada neurona recibe diferentes señales de entrada externas o de otras neuronas, y las utiliza para calcular una salida que se propaga a otras unidades o hacia fuentes externas

o Este proceso se realiza en paralelo

NC. Tema 1. Introducción a Redes Neuronales I. Requena 10 de 40

Page 11: Neurocomputación (Redes Neuronales Artificiales)

Figura 1.1. Una Neurona biológica. Distintos tipos de Neuronas

NC. Tema 1. Introducción a Redes Neuronales I. Requena 11 de 40

Page 12: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena

SSIINNAAPPSSIISS

-- TTrraannssmmiissiióónn ppoorr ppootteenncciiaalleess qquuíímmiiccooss ((ccaassii ttooddooss)) oo eelléécc--

ttrriiccooss ((IIoonneess DDeessppllaazzaaddooss eenn ttuubbuullaarreess))

VVeessííccuullaass EExxcciittaaddoorraass ((hh

NNeeuurroottrraannssmmiissoorreess ((mmááss

EExxcciittaacciióónn ppoorr iioonneess ddee ccaallcciioo

•• FFuueerrzzaa ddee llaass ssiinnaappssiiss ddeeppeennddee ddeell ttiippoo yy

nneeuurroottrraannssmmiissoorreess ddeessppllaazzaaddooss.. EEssttoo ppeerr

aammpplliiffiiccaarr llaa sseeññaall ttrraannssmmiittiiddaa..

•• LLaass VVeess.. EExxcc.. aauummeennttaann oo ddiissmmiinnuuyyeenn ppoo

•• HHaayy ssuussttaanncciiaass yy ssiinnaappssiiss iinnhhiibbiiddoorraass ((eess

•• CCoonnffoorrmmee ssee aapprreennddee ssoobbrree llaass nneeuurroonnaass

nnuueevvooss mmooddeellooss mmaatteemmááttiiccooss ddee llaass mmiissmm

Calcio Sodio-Potasio Magnesio (Estab)

12 de 40

aassttaa 220000..000000))

ddee 4400 ddiiffeerree..))

((110000--1100..000000))

ccaannttiiddaadd ddee

mmiittee rreedduucciirr oo

rr eell uussoo

ttaabbiilliizzaacciióónn))

,, ssee iinntteennttaann

aass..

Page 13: Neurocomputación (Redes Neuronales Artificiales)

Figura 1. 2.- Intercambio Sodio - Potasio y Sinapsis Excitadoras e inhibidoras

Figura 1. 3.- Generación de un tren de pulsos.

NC. Tema 1. Introducción a Redes Neuronales I. Requena 13 de 40

Page 14: Neurocomputación (Redes Neuronales Artificiales)

Neurona = [ Nodo / PE / Unidad Lógica Umbral / Célula / STM (Short Term memory) ]

NC. Tema 1. Introducción a Redes Neuronales I. Requena 14 de 40

Fig. 1.4.- De la Neurona Biológica a la Neurona Artificial

X1

X2

Xn

· · · ·

W1

W2

Wn Y = F(S) =1 si S > U

0 si S < U

S – Nivel de Excitación U – Umbral de Activación

S = Σ Wi Xi

PESO = [ Interconexión / LTM (Long Term Memory) / Fuerza de conexión ]

Page 15: Neurocomputación (Redes Neuronales Artificiales)

1

S U

Umbral Lineal

-1Y= Tgh S

1

S

Y

Y

U S

Y

1

Umbral

1

1 + e - SY=

1

S

Y

Sigmoide Tangente Hiperbólica

S

Y= exp [(x – µ)2/σ]

σ

µ

Y

1 + S2

S2

Y=

1

S

Y

Campana Gauss Razón Cuadrados Aument.

Figura 1.5.- Diversas Funciones de Activación

NC. Tema 1. Introducción a Redes Neuronales I. Requena 15 de 40

Page 16: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 16 de 40

DDEEFFIINNIICCIIOONNEESS ((¿¿QQuuéé eess uunnaa RRNNAA??)) PPrroocceessaaddoorr DDiissttrriibbuuiiddoo yy mmaassiivvaammeennttee ppaarraalleelloo,, ccoonnssttrruuiiddoo aa ppaarrttiirr ddee uunniiddaaddeess ddee pprroocceessaammiieennttoo ssiimmpplleess,, qquuee ttiieennee uunnaa pprrooppeennssiióónn nnaattuurraall ppaarraa aallmmaacceennaarr ccoonnoocciimmiieennttoo eexxppeerriimmeennttaall yy uussaarrlloo.. SSee ppaarreeccee aall cceerreebbrroo eenn ddooss aassppeeccttooss:: aa)) LLaa RRNNAA eexxttrraaee eell ccoonnoocciimmiieennttoo ddeell eennttoorrnnoo ((ccoonnjjuunnttoo ddee eejjeemmppllooss)) aa ttrraavvééss ddee uunn pprroocceessoo ddee aapprreennddiizzaajjee.. bb)) EEll ccoonnoocciimmiieennttoo aaddqquuiirriiddoo ssee aallmmaacceennaa eenn llaass ffuueerrzzaass ddee iinntteerrccoonneexxiióónn ddee llaass nneeuurroonnaass ((eelleemmeennttooss ddee pprroocceessoo))..

GGrraaffoo ddiirriiggiiddoo yy nnoo lliinneeaall ccoonn aarrccooss ppoonnddeerraaddooss,, ccaappaazz ddee aallmmaacceennaarr ppaattrroonneess ccaammbbiiaannddoo llooss ppeessooss ddee llooss aarrccooss,, yy ddee rreeccoorrddaarr ppaattrroonneess aa ppaarrttiirr ddee eennttrraaddaass iinnccoommpplleettaass yy//oo ddeessccoonnoocciiddaass..

SSiisstteemmaa ddee pprroocceessaaddoorreess eelleemmeennttaalleess iinntteerrccoonneeccttaaddooss,, nnoo lliinneeaall nnii eessttaacciioonnaarriioo,, qquuee rreeaalliizzaa aall mmeennooss aallgguunnaa ddee llaass ssiigguuiieenntteess ffuunncciioonneess,, aa ppaarrttiirr ddee eennttrraaddaass oo eejjeemmppllooss:: AApprreennddiizzaajjee,, MMeemmoorriizzaacciióónn,, GGeenneerraalliizzaacciióónn oo AAbbssttrraacccciióónn

AA llaass RRNNAA ssee lleess ddiiccee ttaammbbiiéénn:: SSiisstteemmaass NNeeuurroonnaalleess,, SSiiss--tteemmaass AAddaappttaabblleess //AAddaappttaattiivvooss,, SSiisstteemmaass CCoonneexxiioonniissttaass,, ee iinncclluussoo,, NNeeuurrooccoommppuuttaaddoorreess,, oo PPrroocceessaaddoorreess PPaarraalleellooss DDiissttrriibbuuiiddooss..

Page 17: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 17 de 40

IIddeeaass IInniicciiaalleess ssoobbrree RReeddeess NNeeuurroonnaalleess •• LLaa RReedd mmááss ssiimmppllee ppoossiibbllee.. YY == FF((SS)) == FF ((XX WW)) •• RReedd MMuullttiiccaappaa..

o Capa de entrada : Permite introducir valores a la red. No realiza procesamiento

o Capa(s) oculta(s) : No son visibles desde el exterior o Capa de salida : Su salida es visible desde el exterior -- PPeerrcceeppttrroonn ;; RReettrroopprrooppaaggaacciióónn ;; FFuunncciióónn BBaassee RRaaddiiaall

•• RReedd RReeccuurrrreennttee ((ffeeeeddbbaacckk oo

rreeaalliimmeennttaacciióónn)).. SSoonn SSiisstteemmaass

DDiinnáámmiiccooss.. SStt++11 == ((XXtt++11 ++ YYtt )) WW

EEnn CCaassooss CCoonnttiinnuuooss ssee uussaann

eeccuuaacciioonneess ddiiffeerreenncciiaalleess

-- MMeemmoorriiaass AAssoocciiaattiivvaass ;; MMááqquuiinnaa ddee BBoollttzzmmaannnn

••

RReedd AAuuttoooorrggaanniizzaaddaa::

-- SSOOMM ((KKoohhoonneenn)) ;; AARRTT

Page 18: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 18 de 40

FFuunnddaammeennttooss ddee RReeddeess NNeeuurroonnaalleess AA)) EElleemmeennttooss aa ccoonnssiiddeerraarr eenn eell DDiisseeññoo EEssttrruuccttuurraall

•• NNeeuurroonnaass ((PPrroocceessaaddoorreess eelleemmeennttaalleess)) LLaass NNAA ssoolloo uussaann iinnffoorrmmaacciióónn llooccaall.. VVaalloorr RReeaall//BBiinnaarriioo -- AAggrreeggaacciióónn ddee EEnnttrraaddaass:: SSjj == ΣΣ XXjj WWiijj -- EEnnttrraaddaass ccoonn ppoonnddeerraacciióónn MMeeddiiaa--VVaarriiaannzzaa

YYjj == gg(( ΣΣ (( ((WWiijj –– XXjj ))22 // VViijj )) ;; gg((xx)) == eexxpp ((--xx22 //22)) -- EEnnttrraaddaass MMaaxx--MMiinn.. PPeessooss mmíínniimmoo yy mmááxxiimmoo ddee llaa

ccllaassee ((¿¿ggrraaddoo ppeerrtteenneenncciiaa?? )).. LLaa ccaannttiiddaadd ffuueerraa ddeell rraannggoo ssiirrvvee ppaarraa aaccttiivvaarr llaa NNAA

-- FFuunncciioonneess ddee AAccttiivvaacciióónn.. DDiiffeerreenntteess ttiippooss yy ffoorrmmaass.. •• CCoonneexxiioonneess.. HHaacciiaa aaddeellaannttee ((ffeeeeddffoorrwwaarrdd)) yy rreettrrooaallii--

mmeennttaacciióónn ((ffeeeeddbbaacckk)) ;; IInntteerrccaappaass ee IInnttrraaccaappaass ;; EExxcciittaa--ddoorraass ee IInnhhiibbiiddoorraass ((ppeessooss >> 00 oo << 00 .. PPeessoo 00 iinnddiiccaa aauusseenncciiaa ddee ccoonneexxiióónn)).. TTeennddeenncciiaa oo bbiiaass ((eennttrraaddaa 11 ffiijjoo))..

•• TTooppoollooggííaa ccoonnccrreettaa ddee llaa RReedd.. RRNNAA hhaacciiaa ddeellaannttee ((ppoorr ccaappaass)) ;; RReeccuurrrreenntteess;; AAuuttoooorrggaanniizzaaddaass..

•• EEnn ddeeffiinniittiivvaa,, ssee ttrraattaa ddee ccoonntteessttaarr aa pprreegguunnttaass ccoommoo:: o ¿ Cómo se conectan las neuronas entre sí ? o ¿ Son simétricas las conexiones ? o ¿ Existen grupos de neuronas con funcionalidad similar? o ¿ Cuál es la función de activación de cada neurona ? o ¿ Son todas las neuronas iguales ?

•• CCoonn vvaarriiaass ccaappaass,, llaa aaccttiivvaacciióónn lliinneeaall NNoo mmeejjoorraa:: Y1= c1 S1 = cXW1; Y2= c2 (c1XW1) W2 ; ….... ; Yh= ch ··· c2 c1 X W1..Wh = k X W

Page 19: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 19 de 40

BB)) PPrroocceessoo ddee EEnnttrreennaammiieennttoo oo AApprreennddiizzaajjee •• PPrreevviioo:: CCoonnjjuunnttooss ddee eejjeemmppllooss ppaarraa EEnnttrreennaammiieennttoo,,

VVeerriiffiiccaacciióónn yy TTeesstt.. •• ¿¿QQuuéé?? :: CCooddiiffiiccaacciióónn ddee llaa IInnffoorrmmaacciióónn eenn llooss PPeessooss •• ¿¿CCóómmoo?? :: DDiiffeerreenntteess MMééttooddooss ddee aaddaappttaarr llooss ppeessooss •• TTiippoo:: SSuuppeerrvviissaaddoo // NNoo SSuuppeerrvviissaaddoo EEnn LLiinneeaa // FFuueerraa LLíínneeaa •• FFiijjaarr:: CCoonnjjuunnttoo ddee EEnnttrreennaammiieennttoo;; TTiippoo EEnnttrreennaammiieennttoo;;

FFoorrmmaa ddee AAjjuussttee ddee PPeessooss;; FFuunncciióónn OObbjjeettiivvoo oo ddee EErrrroorr..

La actualización de los pesos (actividad neuronal) se hace: o Forma Síncrona. Todas las neuronas se actualizan a la vez o Forma Asíncrona. Las neuronas se actualizan una a una,

aleatoriamente (aleatori0) o siguiendo un orden (ordenado) o Síncrono por capas. De forma síncrona, pero capa a capa

CC)) RReeccuuppeerraacciióónn oo UUttiilliizzaacciióónn.. •• ¿¿QQuuéé?? :: UUssoo ((ddaattooss ddiiffeerreenntteess)) ddee rreeddeess yyaa eennttrreennaaddaass..

LLaa rreedd rreessppoonnddee aa eessttíímmuullooss nnoo aapprreennddiiddooss •• ¿¿CCóómmoo?? :: oo RReeccuueerrddoo mmááss cceerrccaannoo:: RReeccuuppeerraa llaa ssaalliiddaa ddeell mmááss

pprróóxxiimmoo ddee llooss eejjeemmppllooss aapprreennddiiddooss;; oo RReeccuueerrddoo IInntteerrppoollaattiivvoo:: IInntteerrppoollaa eennttrree llaass ssaalliiddaass ddee

llaass eennttrraaddaass aapprreennddiiddaass qquuee ““rrooddeeaann”” llaa eennttrraaddaa aaccttuuaall oo MMíínniimmaa EEnneerrggííaa:: OObbttiieennee llaa ssaalliiddaa ccoonn vvaalloorr mmíínniimmoo

ddee llaa FFuunncciióónn ddee EEnneerrggííaa ((rreeddeess rreeccuurrrreenntteess))

Page 20: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 20 de 40

UTILIZACIÓN DE UNA RNA:

Para resolver un Problema con RN, seguiremos los pasos:

a) Decidir el modelo de RN más adecuado al Problema. b) Diseñar la Estructura (topología) y Construir la red.

Entradas y Salidas dependen del problema. El resto casi siempre de forma empírica. La f. de activación de la capa de salida estará en consonancia con los datos de salida.

c) Decidir tipo de aprendizaje (supervisado/no supervisado). Depende de la arquitectura y/o del problema.

d) Selección del Cjto. de entrenamiento apropiado al tipo de aprendizaje (Supervisado o No) y al problema a resolver. También ejemplos para validación y test.

e) Preprocesamiento de los datos iniciales (normalización, ...) para adecuarlos a la estructura de la red (Con funciones de activación aplastadas, indispensable normalizar en [0,1]). Datos aislados, datos incompletos, etc. . Extracción de características, ….

f) Fijación inicial de los pesos (un valor igual a todos, aleatoriamente,..)

g) Entrenamiento de la red, de acuerdo con el Algoritmo de Aprendizaje decidido y el conjunto de entrenamiento seleccionado. Si el algoritmo es iterativo, decidir la condición de parada (nº iteraciones, error total, ….)

h) Validación. Con ejemplos no usados en el Entrenamiento. i) Uso de la RNA ya entrenada para el propósito para la que

fue diseñada.

Page 21: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 21 de 40

AAPPLLIICCAARR uunnaa RRNNAA aa uunn PPRROOBBLLEEMMAA

A) Decidir el modelo de RN más adecuado al Problema.

EEssttuuddiioo yy FFoorrmmuullaacciióónn PPrroobblleemmaa

Diseño Red

Entrena-miento

FIN RNA adecuadas

TEST Adecuada Formula- ción

BIEN

MAL

SI

SI

NO

NO

I

• Ver si el problema se adapta a un tipo de aplicación: o Optimización. Ajustar pesos optimizar una función.

- Adaptar la fun. objetivo a la función de error de la RN - Optimización Combinatoria.

o Identificación Sistemas. Aprendizaje; Generalización. - Directamente de ejemplos. Obtener reglas (difusas). - Ident. Comportamiento decisores. Control Sistemas.

o Clasificación/Memoria. Entradas asociadas a salidas. Auto (memorias) y Hetero (clasificación) asociación. - Clases prestablecidas o no. Autoorganización. - Clasificación versus agrupamiento. Mem Asociativas.

o A veces difícil distinguir cual de los tres es más adecuado • Diseño de Red. Ver la adecuación de los datos disponibles

a RN (información cierta o difusa). Conocemos las salidas que corresponden a los ejemplos de entrada,

• En Problemas Lineales, suele haber Métodos matemáticos directos. En P. No Lineales, no suele haber métodos seguros

RN tienen mucho que decir.

Page 22: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 22 de 40

B) Diseñar la Estructura (topología) y Construir la red. o Entradas y Salidas dependen del problema, aunque a

veces hay que decidir (Plantas IRIS: 1 o 3 salidas) o El resto, numero de neuronas ocultas, tipo de conexiones

y cuantas, casi siempre de forma empírica. o La función de activación de la capa de salida dependerá

del rango de los datos de salida. o También podemos considerar el Software disponible.

C) Decidir tipo de aprendizaje (supervisado/no supervi). o Depende en primer lugar de los datos disponibles

(problema) y menos de la arquitectura a utilizar.

D) Selección del conjunto de entrenamiento o Debe reflejar lo mejor posible el conjunto global

(población) al que pertenecen los datos disponibles. o Se debe tener un número suficiente de ejemplos, para

poder usar algunos en la fase de verificación. o En general, es adecuado 2/3 para entrenar la RN, y 1/3

para verificar.

Page 23: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 23 de 40

E) Preprocesamiento. Selección de Características

• Necesidad de transformar los datos

• Transformaciones de Salidas o Entradas y Salidas

• Valores Desconocidos o Erróneos

• Reducir dimensionalidad. Selección de Características

Preprocesamiento

• Normalización y/o Codificación de Salidas (E / S)

• Escalado Lineal. Transformaciones no lineales. Hacer una

“gráfica” (si se puede) de los datos, puede ayudar.

• Datos Discretos ( Ordinales o Categóricos (Clases) )

• Datos Desconocidos o erróneos

- Reemplazar por Media o por valores de regresión

- Principio de máxima probabilidad

Selección de Características. Implica revisión de la Estructura de la RN.

• Comparar Subcjtos características (Depende Problema)

• Búsqueda: Exhaustiva ; Secuencial ; Branch & Bound

• Análisis de Componentes Principales

• Conocimiento a Priori

Page 24: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 24 de 40

Ejemplos de aplicación. I.- Clasificación de plantas Iris. Tendremos en cuenta:

a) Separación de datos en Conjuntos de Entrenamiento y de Test. A veces conjunto adicional de verificación.

b) Posibilidad de usar una neurona de salida, o usar 3. Asignar a cada clase un valor (o tres) de salida, ya que la RNA solo procesa valores numéricos.

c) Ver si es conveniente o necesario, normalizar los datos d) Decidir sobre el número de capas y de neuronas ocultas II.- Función Continua en el Intervalo [0, 2] * [0, 2]

a) Considerar una función ( por ejemplo y = 3* x**2+ 2* z**2 - raizc( z**2 + x**2) )

b) Obtener (aleatoriamente ) por ejemplo, 100 valores de la función, dando valores a x, z (dos cifras decimales de precisión). Obtener los correspondientes valores de y

c) Obtener otros 50 valores de la misma forma (cuidando que no haya repetidos).

d) Normalizar datos (sobre todo los de salida) al rango de salida de la Red (intervalo [0,1] si activación sigmoide)

e) Usar los valores de b) como conjunto de entrenamiento. f) Usar los valores de c) como conjunto de test. g) Verificar con otros valores diferentes el aprendizaje obtenido

(deshacer normalización efectuada en d) ).

Page 25: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 25 de 40

THE IRIS FLOWER PROBLEM . Training SetENTRADAS SAL ENTRADAS SAL

1. 6.3 3.3 4.7 1.6 VE. 2. 5 3 1.6 0.2 SE.

3. 5.8 4 1.2 0.2 SE. 4. 6.7 3.3 5.7 2.5 VE.

5. 6.7 3.3 5.7 2.1 VE. 6. 5.8 2.8 5.1 2.4 VE.

7. 6.1 2.8 4 1.3 VE. 8. 5.8 2.6 4 1.2 VE.

9. 5 3.4 1.5 0.2 SE. 10. 6 3.4 4.5 1.6 VE.

11. 6.2 2.2 4.5 1.5 VE. 12. 5 3.6 1.4 0.2 SE.

13. 7.2 3.6 6.1 2.5 VE. 14. 5 3.4 1.6 0.4 SE.

15. 4.4 2.9 1.4 0.2 SE. 16. 6.9 3.1 5.4 2.1 VE.

17. 5 3.5 1.3 0.3 SE. 18. 6.8 3.2 5.9 2.3 VE.

19. 5.4 3.4 1.5 0.4 SE. 20. 6.9 3.1 5.1 2.3 VE.

21. 6.3 2.8 5.1 1.5 VE. 22. 5.2 3.4 1.4 0.2 SE.

Data Are: Petal Length : [4.3 -7.9] [4 -8]; Petal wide : [2.2 -2.4] [2 -5] Sepal " [1- 6.9] [0.5 -7.5]; Sepal " [0.1 - 2.5] [0 -3]

Outputs: 1 Values 3 Values: 0.1- SE ; SE: 0.9 ; 0.1 ; 0.1 0.5 -VE; VE: 0.1 ; 0.9 ; 0.1 0.9 - VI VI: 0.1 ; 0.1 ; 0.9

Page 26: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 26 de 40

FUNCIÓN Y = 3X2 – SQRT( X+ Z )

Datos Iniciales Datos Normalizados X Z Y X’ Z’ Y’

1.32 1.46 3.56 0.66 0.73 1.18 1.78 2.46 0.59 0.89 1.20 0.86 2.88 0.60 0.43 1.70 0.96 7.04 0.85 0.48 1.54 0.10 5.83 0.77 0.05 0.72 1.84 -0.04 0.36 0.92 0.86 1.98 0.53 0.43 0.99 0.30 1.34 -1.01 0.15 0.67 1.64 0.32 6.67 0.82 0.16 1.72 1.94 6.96 0.86 0.97 0 0 0.00 0 0 2 2 10.00 1 1 0 2 -1.41 0.007 2 0 10.59 0.999 MIN -1.5 0.0 MAX 10.6

Y’= (y+1.5)/12.1 1

F) Fijar los pesos iniciales o Dar el mismo valor a todos o Fijarlos aleatoriamente en un intervalo pequeño, …,

Page 27: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 27 de 40

G) APRENDIZAJE O ENTRENAMIENTO.

♦ La característica más importante de las RNAs es su capacidad de Aprender, aunque sea aún muy limitada.

♦ RNA se entrenan para que a partir de un conjunto de entradas produzca una respuesta deseada (o consistente). Se ajustan los pesos (con algoritmos prefijados) para ello.

• Objetivo: Construir Modelo Estadístico de Datos

- Encontrar elementos (conexiones y pesos, Fun. Activ.).

♦ El aprendizaje es un cambio en los pesos: A = dW / dt ≠ 0. Puede ser Supervisado o No. En Línea y Fuera de Línea

♦ Muchos Algoritmos Entre. se basan en ley de Hebb (1961) Wij (p+1) = Wij (p) + α Si Sj (correlación de salidas), o en la corrección de errores: ∆Wij = α Xi (Tj -Yj ) .

EEll PPrroocceessoo ddee AApprreennddiizzaajjee oo EEnnttrreennaammiieennttoo::

-- FFiijjaarr mmeeddiiddaa ddeell eerroorr

-- PPrreesseennttaacciióónn ddee llooss eejjeemmppllooss eenn llaa eennttrraaddaa ddee llaa rreedd

-- MMooddiiffiiccaarr llooss ppeessooss ((oobbjjeettiivvoo:: ooppttiimmiizzaarr mmeeddiiddaa ddeell eerrrroorr))

-- CCrriitteerriiooss ddee PPaarraaddaa ddeell AAllggoorriittmmoo ((UUnn nnúúmmeerroo ffiijjoo ddee iitteerraacciioonneess;; EEll eerrrroorr aallccaannzzaa llaass ccoottaass pprreeffiijjaaddaass ;; LLaa ttaassaa ddee mmooddiiffiiccaacciióónn ddeell eerrrroorr eess mmeennoorr qquuee lloo pprreeffiijjaaddoo))

Page 28: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 28 de 40

PPRROOCCEESSOO DDEE EENNTTRREENNAAMMIIEENNTTOO

FFIIJJAARR MMEEDDIIDDAA DDEELL EERRRROORR

•• EErrrroorr eenn AApprreennddiizzaajjee SSuuppeerrvviissaaddoo o Suma Cuadrados de Errores: E = ½ Σi,k || yik – tik||2

Se deduce del principio de máxima probabilidad (distr. normal). Se usa por simplicidad analítica.

o E = [ Σi,k || y – t||2 ] / [ Σi,k || t – t||2 o Error de Minkowski: E = Σi,k || yik – tik||R .

Con ejemplos atípicos es muy determinante si R > 2. o Funciones de Error para Clasificación

- Suma de cuadrados - Entropía cruzada: E = - Σ t ln y - Porcentaje de ejemplos mal clasificados

•• MMeeddiiddaa ddee DDiissttaanncciiaa eenn AA.. NNoo SSuuppeerrvviissaaddoo •• FFuunncciióónn ddee EEnneerrggííaa eenn oottrrooss MMooddeellooss FFIIJJAARR PPEESSOOSS IINNIICCIIAALLEESS

IINNTTRROODDUUCCCCIIOONN ddee EEJJEEMMPPLLOOSS ((eenn eennttrraaddaa))

-- EEvvaalluuaacciióónn yy AAccuummuullaacciióónn ddeell eerrrroorr eenn ssaalliiddaa

MMOODDIIFFIICCAACCAARR PPEESSOOSS ((ppaarraa mmiinniimmiizzaarr eerrrroorr))

-- DDiiffeerreenntteess ffoorrmmaass ddee aaddaappttaarr ppeessooss vviieenneenn ddee mmééttooddooss

ddee ooppttiimmiizzaacciióónn nnoo lliinneeaall ((GGrraaddiieennttee DDeesscceennddeennttee,,

EEnnffrriiaammiieennttoo SSiimmuullaaddoo,, ...... ))

-- AAllggoorriittmmooss ddee EEnnttrreennaammiieennttoo CCoonnvveerrggeenntteess

Page 29: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 29 de 40

♦ Algoritmos. Optimizar Parámetros Entrenamiento

• Usar Superficies de Error y Algoritmos Iterativos • Orden de Convergencia: ε(t+1) ∝ ( ε(t) )L • Controlar la Complejidad del Modelo. Regularización.

• Entrenamiento con Ruido aleatorio (normal) en datos. • Estructura (Comparar redes de diferente complejidad).

• Poda / Crecimiento; Combinar salidas de varias redes.

DIFERENTES FORMAS DE AJUSTE DE LOS PESOS.

• Correlación Hebbiana. Tiene en cuenta la correlación de la activación de las NA conectadas. Puede tener formas especiales, si se restringen los valores posibles de salida de las NA y/o de los pesos.

Wij (p+1) = Wij (p) + α Si Sj

Si e Sj son los niveles de excitación de las neuronas activadas; α es tasa de aprendizaje (depende del contexto). • Hebbiano de señal: Wij (p+1) = Wij (p) + α Yi Yj.

• Hebbiano Diferencial. Es una extensión del aprendizaje hebbiano para obtener los cambios temporales en la secuencia de ejemplos. Suma al peso anterior, la diferencia entre entradas y/o entre las salidas de las NA conectadas, en las iteraciones anteriores.

• Competitivo. Para redes con conexiones recurrentes autoexcitantes, y las otras, excitantes (cooperativo) o inhibitorias (competitivo). En su forma más simple, usa inhibición lateral para activar una sola neurona (el ganador se lo lleva todo).

Page 30: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 30 de 40

• Minimización del Error. Se modifican los pesos para que se reduzca el error (función de la diferencia entre salidas calculadas y esperadas). Suele ser el error cuadrático medio. Para RNA multicapa, se retropropaga el error cometido (en las capas ocultas no hay salida esperada). Esto implica procesamientos especiales.

• Refuerzo. Corrige el error, reforzando pesos con buenos resultados, y penalizándo para resultados malos. Se usa si se dispone de información sobre resultado bueno o malo, pero no sobre valor concreto del error para cada ejemplo: ∆Wij = α eij (r - Uj), (r = valor éxito/fracaso del entorno, Uj = umbral de la NA de salida j, y eij = elegibilidad canónica del peso (i,j) )

• Estocástico. Sea una función que indica una buena realización de la RNA. Se elige un peso aleatoriamente, y se modifica en una pequeña cantidad (aleatoria). Si se mejora el valor de la función, se acepta el cambio y si no, se acepta el cambio según una distribución de probabilidad prefijada.

• Máx-Mín. Los pesos son el máx y mín de una clase de ejemplos. Se cambian, si un ejemplo lo hace necesario.

• Prefijado (hardwired). Los pesos se calculan para cumplir las restricciones del problema, y no se modifican.

• Componentes Principales. Se calcula la matriz de cova-rianza de los ejemplos de entrenamiento, y se obtiene el cjto mínimo de vectores ortogonales (base de un esp. vectorial). La base representa características, y los coeficientes de un vector en la base, la importancia relativa de estas.

Page 31: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 31 de 40

ESTABILIDAD Y CONVERGENCIA La convergencia afecta a todos los algoritmos de aprendizaje. La estabilidad es para los sistemas con realimentación (dinámicos).

Estabilidad Global de la RNA, es la estabilización eventual de todas las NA en un punto (estado) fijo, a partir de una entrada inicial. Existen teoremas generales sobre estabilidad de una amplia gama de RNAs. Pero puede no alcanzarse el punto fijo deseado.

Estos teoremas garantizan de alguna manera, que las RNAs con matrices de pesos simétricas y definidas positivas, y funciones de activación diferenciables y monótonas no-decrecientes son globalmente estables (Cohen-Grossberg (83),Kosko (88)).

Las demostraciones se basan en la obtención de ciertas funciones (de energía) de los pesos, y ver que la modificación de éstos, conlleva la disminución de la función de energía. Entendemos por Convergencia, la minimización del error entre las salidas computadas y las deseadas, y depende del algoritmo de aprendizaje de cada RNA.

Page 32: Neurocomputación (Redes Neuronales Artificiales)

H) VALIDACIÓN. ¿ Por qué validar ?

o Para probar el modelo en toda circunstancia posible. o Pero, suele ser imposible disponer de datos para simular

todas las situaciones posibles. Objetivo: Obtener modelo capaz de generalizar, a partir de los datos disponibles.

o Una deficiente generalización, puede estar motivada por: Conjunto de entrenamiento escaso o no representativo Deficiente representación de los datos Arquitectura de la red inadecuada (nº PE ocultos, …) Aprendizaje erróneo (excesivo, mínimos locales, etc.) Duración no correcta de entrenamiento. ¿Cuando parar?

- Si el error alcanza valor - Si reducción del error es

inferior a un cierto valor - Tras un número prefijado

de “iteraciones”

Las Técnicas de Validación pueden ayudar

a paliar esta situación.

Métodos de validación o Resustitución. Detiene el entrenamiento si el error (en

entrenamiento) cumple una condición. Según esta, evita o produce sobreentrenamiento.

o Bootstrapping. Usa subejemplos (ejemplo aleatorio que se puede reemplar en el conjunto completo de datos) de los datos, y no subconjuntos. No fácil de implementar.

NC. Tema 1. Introducción a Redes Neuronales I. Requena 32 de 40

Page 33: Neurocomputación (Redes Neuronales Artificiales)

o Validación Simple y Cruzada - Simple divide datos en:

Entrenami. (65%), Valida-ción (15 %?), Test (20%?)

- Cruzada, divide datos en S (6-10) grupos iguales. S entrenamientos, (cada vez un cjto para validación). Se calcula error medio de generalización, o Se Entrena la red (último entrenamiento con todos datos; parada prematura según resultados previos)

- Caso especial “dejar uno fuera” - Cruzada superior a la simple con pocos datos. Usa todos los

datos disponibles para entrenar. Precisa S+1 entrenamientos. El entrenamiento final no usa validación directamente

Stacked generalization. Se tiene M redes de nivel-0; sus salidas van a una red de nivel-1: a) Se entrenan las N-0; se ve generalización. B) Se

entrena la R-1.

II)) RREECCUUPPEERRAACCIIOONN,, UUSSOO oo GGEENNEERRAALLIIZZAACCIIÓÓNN

** SSee ppoonnee uunn eejjeemmpplloo eenn eennttrraaddaa.. SSee ccaallccuullaa llaa ssaalliiddaa

NC. Tema 1. Introducción a Redes Neuronales I. Requena 33 de 40

Page 34: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 34 de 40

AALLGGUUNNAASS PPRROOPPIIEEDDAADDEESS DDEE LLAASS RRNN

CCaappaacciiddaadd ddee AApprreennddiizzaajjee,, AAddaappttaacciióónn yy GGeenneerraalliizzaacc.. CCaappaacciiddaadd ddee aallmmaacceennaammiieennttoo yy mmeemmoorriiaa AApprrooxxiimmaacciióónn UUnniivveerrssaall IInnmmuunniiddaadd aall rruuiiddoo;; ttoolleerraanncciiaa aa ffaallllooss ((aallmmaacc.. ddiissttrriibbuuiiddoo)) MMooddeellooss ddee rreepprreesseennttaacciióónn ssuubbssiimmbbóólliiccaa ddeell ccoonnoocciimmii.. NNaattuurraalleezzaa mmaassiivvaammeennttee ppaarraalleellaa:: rraappiiddeezz ddee pprroocceessoo MMooddeellooss ddee ccáállccuulloo

AALLGGUUNNAASS TTAARREEAASS

•• RReeccoonnoocceerr // CCllaassiiffiiccaarr // AAggrruuppaarr PPaattrroonneess •• AApprrooxxiimmaacciióónn ddee FFuunncciioonneess // SSiisstteemmaass •• PPrreeddiicccciióónn •• AAssoocciiaacciióónn ddee ppaattrroonneess •• OOppttiimmiizzaacciióónn •• CCoonnttrrooll

APLICACIONES DE LAS RNA •• PPOOTTEENNCCIIAALL :: EEnn CCaassii ttooddooss llooss CCaammppooss •• RREEAALL:: CCuuaallqquuiieerr pprroobblleemmaa qquuee ssee ppuueeddaa mmooddeellaarr

ccoommoo uunn pprroobblleemmaa ddee OOppttiimmiizzaacciióónn,, CCllaassiiffiiccaacciióónn oo ddee IIddeennttiiffiiccaacciióónn ddee uunn SSiisstteemmaa..

•• AALLGGUUNNOOSS EEJJEEMMPPLLOOSS:: -- PPrrooggrraammaacciióónn LLiinneeaall yy OOppttiimm.. CCoommbbiinnaattoorriiaa -- TTrraattaammiieennttoo SSeeññaalleess ((SSeeppaarraacciióónn,, CCllaassiiffiiccaacciióónn,,....)) -- DDeeccooddiiffiiccaacciióónn yy CCoommpprreessiióónn ddee IInnffoorrmmaacciióónn

Page 35: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 35 de 40

-- CCoommpprreessiióónn yy CCllaassiiffiiccaacciióónn ddee IImmáággeenneess.. -- RReeccoonnoocciimmiieennttoo PPaattrroonneess ((CCaarraacctteerreess,, VVoozz,, ...... )) -- DDiiaaggnnóóssttiiccooss MMééddiiccooss -- PPrreeddiicccciióónn EEssttrruuccttuurraass PPrrootteeiinnaass -- PPrreeddiicccciióónn ddee pprreecciiooss,, ssttoocckkss,, ccaammbbiiooss mmoonneeddaa,, ...... -- PPrroocc.. LLeenngguuaajjee yy VVoozz ((ccoonnvveerrssiióónn tteexxttoo -- vvoozz,, ......)) -- ................

MMOODDEELLOOSS DDEE RRNNAA

•• MMUUCCHHOOSS MMOODDEELLOOSS ((AA mmeeddiiddaa ddeell PPrroobblleemmaa))

-- MMááss ddee 4400 mmooddeellooss ddeessccrriittooss

-- MMuucchhaass vvaarriiaanntteess eenn bbaassttaanntteess ddee eellllooss

•• PPOOCCOOSS ddee aapplliiccaacciióónn ggeenneerraall::

-- PPEERRCCEEPPTTRROONN MMUULLTTIICCAAPPAA -- MMAAQQUUIINNAA BBOOLLTTZZMMAANNNN ((vvaalloorreess bbiinnaarriiooss)) -- MMEEMMOORRIIAASS AASSOOCCIIAATTIIVVAASS ((CCllaassiiffiiccaacciióónn)) -- RREEDD ddee KKOOHHOONNEENN ((CCllaassiiff.. ssiinn ccllaasseess pprreevviiaass)) -- RREEDD FFUUNNCCIIOONN BBAASSEE RRAADDIIAALL ((CCllaassiiffiiccaacciióónn))

•• TTooddooss ttrraattaann ddee OOppttiimmiizzaarr uunnaa FFuunncciióónn ((ddee eerrrroorr oo ddee ““eenneerrggííaa””)),, mmeeddiiaannttee llaa aaddaappttaacciióónn ddee llooss ppeessooss..

• MMuucchhooss nnaacceenn ppaarraa rreessoollvveerr pprroobblleemmaass ccoonnccrreettooss ddee oottrrooss mmooddeellooss ((mmíínniimos locales, saturación, ....)

Page 36: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 36 de 40

LLOOSS PPRROOBBLLEEMMAASS DDEE LLAASS RR..NN..AA..

•• CCAARRÁÁCCTTEERR ddee CCAAJJAA NNEEGGRRAA

•• NNoo ssee ssaabbee ccoommoo hhaaccee llooss ccáállccuullooss

•• SSEELLEECCCCIIÓÓNN ddee MMOODDEELLOO yy TTOOPPOOLLOOGGIIAA

•• NNuumm.. CCaappaass yy NNeeuurroonnaass.. TTiippoo CCoonneexxiioonneess

•• AAllggoorriittmmoo ddee eennttrreennaammiieennttoo,, ppeessooss iinniicciiaalleess,, ffoorrmmaa

ddee aaddaappttaarr ppeessooss ......

•• MMooddeellooss aa mmeeddiiddaa ddeell pprroobblleemmaa

•• SSEELLEECCCCIIÓÓNN ddee EEJJEEMMPPLLOOSS

•• CCoonnjjuunnttoo ddee EEnnttrreennaammiieennttoo

•• CCoonnjjuunnttoo ddee VVaalliiddaacciióónn yy//oo TTeesstt..

•• PPRROOBBLLEEMMAASS DDEE EENNTTRREENNAAMMIIEENNTTOO

•• MMíínniimmooss LLooccaalleess

•• SSoobbrreeaapprreennddiizzaajjee .. SSaattuurraacciióónn

•• EEllaassttiicciiddaadd.. ..........

Page 37: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 37 de 40

RR..NN..AA.. ccoommoo MMOODDEELLOOSS ddee CCAALLCCUULLOO • RNA: Eficaces en muchos problemas, y buen comporta-

miento ante información incompleta o ruidosa. • Veamos que los PE que se usan para construir RNA, son

una generalización de las puertas lógicas usadas en la computación convencional y funcionan comparando su entrada total con un umbra1 (lógica de umbral).

Las unidades de computación • La función evaluada por RN depende de las propiedades de

los procesadores y de la forma en que estos se conectan. • Una RN debe poder modelar una función F: Rn Rm. • El cálculo tarda un tiempo en nodo (entra en t, sale en t+1) • NA conn dos partes: Fun. integración (reduce las n

entradas a uno y una F.A., que produce la salida. • Actividad NA McCulloch-P es un proceso todo-nada (0-1).

La Red tiene arcos dirigidos (sin pesos). Se excitan n>1 (n fijo) sinapsis (umbral) para activarla. Activar un arco inhibidor inactiva la neurona. El retraso sináptico es el único a considerar. La estructura de conexiones es fija.

Síntesis de funciones booleanas • NAM-P solo calcula f. lóg. monótona (Σxi>Σyi f(x)≥f(y)) • Red NAM-P puede sintetizar toda f. lógica. Si vale 1 en N

componentes de x, se necesita 1 NA de N entradas (umbral 1), y N NA con tantas entradas como componentes tenga x, (excitadoras en los 1, inhibidoras en 0; umbral U = Σ xi ).

• Las redes con pesos, solo simplifican la red neuronal. • Hay problemas no resolubles con redes feed-forward (la

adición de dos números binarios de longitud variable), La introducción de bucles en la red lo resolvería.

Page 38: Neurocomputación (Redes Neuronales Artificiales)

Circuitos Neuronales y Computación.

De acuerdo con esto, se pueden definir predicados P(t) que representen la activación de la NA, en el instante t. Como no hay pesos, para activar la neurona se necesita al menos tantas sinapsis (más 1) excitatorias activadas como sea el Umbral. Como ejemplo, las redes siguientes, formadas con NA tipo McCulloch-Pitts, tienen asociada un predicado, y significado:

a) P2(t) = P1(t-1). Sucesión sin cambio de información.

inhibidora

excitadora 1 2

b) P3(t) = P1(t-1) V P2(t-1) 3

2

1

Disyunción

c) P3(t) = P1(t-1) Λ P2(t-1). Conjunción de entradas

32

1

d) P3(t) = P1(t-1) Λ ¬P2(t-1) 3

2

1 Conjunción con negación e) P3(t) = P1(t-1) V [ P2(t-3) Λ ¬P2(t-2) ]

b

a

3

42

1

P4(t) = P2(t-1) Λ P2(t-2 ) f) P3(t) = P2(t-2) Λ¬P1(t-3)] g) P4(t)=P2(t-1) ΛP1(t-1)]V[P3(t-1)ΛP1(t-1)]V[P2(t-1)ΛP3(t-1)]

McCulloch – Pitts demostraron que cualquier red sin realimentación se puede poner como combinación de las 4 expresiones sencillas (a, b, c y d). Para redes recurrentes es algo más complejo, pero también se puede.

NC. Tema 1. Introducción a Redes Neuronales I. Requena 38 de 40

Page 39: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 39 de 40

AUTÓMATAS Y RNA

• HILBERT y el “Entscheidungsproblem”. 1928 o Godel, Church, Kleene, Post, Turing. 1936 o Algoritmos en Lenguaje básico (4 instrucciones) =

Máquina de Turing (Computación Teórica) = Máximo Poder Computacional conocido.

• Problemas No Decidibles o ¿Calculan los algoritmos A y B la misma función? o ¿Calcula el Algoritmo A la función f ?

• M. Turing, Ordenadores y RNA, Modelos de Calculo: o Con la misma potencia de cálculo. o ¿Resuelven las RN el problema de la parada?

• RNA (1943) McCulloch-Pitts. Cálculo lógico en NA. usa expresiones especiales (expresiones regulares).

• Von Neumann (1948): “.. todo lo que se pueda definir de forma lógica, estricta y sin ambigüedad, en un número finito de palabras, puede ser realizado también con una tal Red Neuronal formal”

• Kleene (1951) Equivalencia entre Autómatas Finitos y Expresiones Regulares (NA = AF de dos estados)

• Rabin y Scott (1960) Computador memoria finita (Autó-mata EF). Mismo comportamiento que el de McCulloch.

• Todo autómata finito se puede simular con una red de MacCulloch-Pitts. Esto es la base para hacer un computador de propósito general (aunque estas redes no lo sean).

Page 40: Neurocomputación (Redes Neuronales Artificiales)

NC. Tema 1. Introducción a Redes Neuronales I. Requena 40 de 40

• Anderson y Rosenfeld: “Aunque las neuronas son dispositivos sencillos, se puede obtener una gran potencia de cálculo cuando se interconectan adecuadamente estas neuronas y se imbrican dentro del sistema nervioso”.

• Podemos concluir que las RNA, computacionalmente, se pueden considerar, en la práctica, equivalentes a sistemas clásicos ( Maquinas de Turing o Funciones Recursivas).

• La Neurocomputacion, como disciplina relativa a los sistemas adaptables (no programados) de procesamiento de la información (RNA) capaces de desarrollar asociaciones o transformaciones entre objetos en función de su entorno, tiene ya prototipos disponibles incluso comercialmente, y está avanzando rápidamente. Quizás pronto podamos disponer de auténticos Neurordenadores.

• R.N.A. = APROXIMADORES UNIVERSALES

Hornik- Stichcombe - White (1989). “Toda Función continua sobre un compacto puede ser aproximada con una red neuronal feedforward”. Otras RN Aprox. Universales

•• SSOOFFTT CCOOMMPPUUTTIINNGG == RRNNAA ++ DDiiffuussooss ++ AAGG •• DDooss aapprrooxxiimmaacciioonneess ppaarraa pprroocceessaarr llaa iinnffoorrmmaacciióónn ccoommoo eell

cceerreebbrroo:: aa)) RRNNAA ((aaññooss 4400)).. MMooddeelliizzaa eell ““pprroocceessaaddoorr””.. bb)) CCoonnjjuunnttooss yy LLooggiiccaa DDiiffuussaa.. LLaa ““EEssttrruuccttuurraa DDaattooss””

•• AAllggoorriittmmooss BBiiooiinnssppiirraaddooss:: GGeennééttiiccooss,, CCoolloo.. hhoorrmmiiggaass,, ……..

MMAAQQUUIINNAASS IINNTTEELLIIGGEENNTTEESS.. ¿¿ LLlleeggaarreemmooss ?? PPrroocceessooss PPaarraalleellooss eenn MMááqq.. SSeeccuueenncc..?? ((IImmpp.. hhaarrddwwaarrdd)) DDeennssiiddaadd ccoonneexxiioonneess mmuuyy eelleevvaaddaa ee ((aavvaannccee eelleeccttrróónniiccaa)) LLiimmiittee TTeessiiss CChhuurrcchh--TTuurriinngg ¿¿EEll cceerreebbrroo eess aallggoorrííttmmiiccoo??