Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Pub 35
Pub 35
FACULTADDEINGENIERA
ApuntesdeInteligencia
Artificial
Laboratorio:
PerceptrnSimple
JORGEAGUILARJARAMILLO
LABORATORIO1:NEURONAYPERCEPTRONSIMPPLE
Objetivos.
BreverevisindelaherramientaMatlab
Reforzar el conocimiento adquirido sobre la neurona artificial y el perceptrn de
Rosemblatt
Implementarelalgoritmovistoenclasedelperceptrn,peroparaneuronaslineales,que
aceptencualquiervalor
RevisarlasfuncionesqueimplementaMatlabparaestecaso:
o newpysim
3.1
LANEURONA.
1. ReviselosdosdemosquetraeMatlab1sobrelaneuronayobservecomoelvalordelos
pesosinfluyeenlapendiente,yelvalordebensuubicacinenelejedelasy.
2. Pruebelasdiferentesfunciones
3. Observeenelsegundodemocomovaralasalidadelaneuronaenfuncindelosvalores
depesosWyb.
3.2
ELPERCEPTRON
Elperceptrnesunaneuronaconunafuncindetransferenciaescalnyunmecanismodeajuste
depesos(aprendizaje)quecomparalasalidareal,ydconlarespuestadesalidadelared,y,para
cualquierentradaoestmulodado.
LosPerceptronessonbiendefinidosparareconocimiento/clasificacindepatrones
Elmecanismodeajustedepesossellamaregladeaprendizajedelperceptrn.
Para ir a los demos, una vez abierto Matlab, en la ventana de comandos, escriba demo. Se
abrir una nueva ventana en la que debe ir al Neural Network que se encuentra en el
toolbox. Aqu encontrar los demos de la neurona (neurons) y del perceptron.
51 JorgeAguilarJ.
Ilustracin1.Esquemadeunperceptrnsimple(matlab,2006)
Matlabtrae6demosparaestetipode
redes:
1. Fronterasdedecisin(Decision
Boundaries)
2. Perceptrnlearningrule
3. Classificationwitha2input
perceptrn
4. Outlierinputvectors
5. Normalizedperceptrnrule
6. Linearlynonseparablevector
Enelsegundoejemplo,seaplicalaregladelperceptrn,enelquesetienelasopcionesdeaplicar
onounbias(umbral):
Laopcinlearnaplicalareglaaunsoloejemplo.
52 JorgeAguilarJ.
LaopcinTrainaplicaelalgoritmohasta5datos,porestaraznnormalmentesenecesita
corrermsdeunavezestaopcinparaencontrarunasolucin.
Losdemosdel3al6,muestranelaprendizajedeestaredparaalgunoscasosparticulares
3.3
EJEMPLODECLASIFICACIN
Consideremosunejemplodeclasificacinde2clases:
Consideremoslos5ejemplosdelafigura:
1
0.8
x1
x2
yd(clase)
0.6
0.2
1(azul)
0.2
0.9
1(azul)
0.3
0.4
0(rojo)
0.1
0.1
0(rojo)
0.5
0.6
0(rojo)
0.6
0.4
0.2
0
-0.2
-0.4
-0.6
-0.8
-0.4
-0.2
0.2
0.4
0.6
0.8
ResolvamosesteproblemaenMatlab,aplicandounalgoritmocomoelrevisadoenclase,para
luegoresolverloconlasfuncionesqueimplementaMatlabparaelperceptrn.
53 JorgeAguilarJ.
plotpc(W,b);
Error
[dW,db]= learnp(P,E);
% Aprendizaje
W=W+dW;
% Modificacin de pesos
b=b+db;
nepoc=nepoc+1;
disp('epochs='),disp(nepoc),
disp(W), disp(b);
plotpv(P,T);
plotpc(W,b);
pause(1);
end
Copieestecdigoenunarchivo.menMatlab(ejemplo,lab01.m)enalgunacarpetadefinida(por
ejemplo(C:\Matlab701\Work\LabIA\)
DefinaestacarpetaenelambientedeMatlab:
1. VayaelmenFileenMatlabalaopcinSetPath;
2. EnlanuevaventanaquesedespliegahagaclicenAddFolderyvayaalacarpetaenlaque
grablosarchivos.
3. SeleccinelayhagaclicenAceptar
4. LanuevacarpetaleaparecerenlaventanaMatlabsearchpath
54 JorgeAguilarJ.
5. EjecutelosbotonesdecontrolSaveyClose
Ahorasipuedeejecutarelprograma,tecleandosunombredelarchivoenelCommandWindow
deMatlab
Vectors to be Classified
Vectors to be Classified
1.5
1.5
0.5
P(2)
P(2)
0.5
-0.5
-0.5
-1
-1
-0.6
-0.4
-0.2
0.2
P(1)
0.4
0.6
0.8
Lospesosdefinidosnosonunasolucinal
problema
-0.6
-0.4
-0.2
0.2
P(1)
0.4
0.6
0.8
Luegode11iteracioneslaredhaencontrado
unasolucinaesteproblema
RESOLUCINDELMISMOEJEMPLODECLASIFICACINUSANDOLASFUNCIONESDE
MATLAB:NEWP
Matlabusalafuncinnewpparacrearunaredperceptrn.Estafuncintienecuatroparmetros
deentradayelresultado(salidadelafuncin)eslaredperceptrn.
red=newp(pr,s,tf,lf)
Donde:
prmatrizdelosvaloresmximosymnimosdelosdatosdeentrada(Nx2),dondeNes
elnmerodevariablesdeentrada
sNmerodeneuronas.
tffuncindetransferencia,pordefecto='hardlim'.
55 JorgeAguilarJ.
lffuncindeaprendizaje,pordefecto='learnp'.
redlaredperceptrn
Porloque,elmismoejemploqueacabamosdever,usandolafuncionquetraeMatlabpara
definirlaredperceptrnsetiene:
56 JorgeAguilarJ.
holdon;
plotpv(P,T);
plotpc(net.IW{1},net.b{1});
holdoff;
Comoseobservaenlafiguralaredclasificaenformacorrectaelnuevodato(graficadodecolor
rojo).
Vectors to be Classified
1.5
P(2)
0.5
-0.5
-1
-0.6
-0.4
-0.2
0.2
P(1)
0.4
0.6
0.8
PREGUNTASARESOLVER.
Pruebedosclasesquenoseanlinealmenteseparables.Quseobserva?Porquocurre
esto?
Resuelveelcasodedosclasesenlasquesetengalosdatosseparados,comosemuestra
enlafigura.Existealgunadiferenciaenelentrenamientoconlosejemplosvistos.Cul
es?
57 JorgeAguilarJ.
2
1.5
1
0.5
0
-0.5
-1
-1.5
-2
-2
-1.5
-1
-0.5
0.5
1.5
58 JorgeAguilarJ.