7 de Enero del 2010
REDES NEURONALES
R edes Adaline ± Filtros Adaptativos Efrén Medina Cubid des, Juan Salazar, Salazar, Jor ge Sigüenci güenciaa Universi Universidad dad Po Politécnica Salesiaana, Ingeniería ina, Henr y Cubi itécnica Salesi eniería Electrónic Electrónicaa, Ciclo 9. Abstract² Este trabajo tiene por objetivo principal describir en forma concreta y precisa el funcionamiento, estructura, algoritmos, aplicaciones de las redes Adaline. Reforzando así los conocimientos previos a la teoría de redes neuronales. Finalizaremos dándole énfasis al estudio de la aplicación ³Filtros Adaptativos´, donde estudiaremos su funcionamiento, estructura y una implementación practica en MATLAB.
Orden de Temas
Introducción, ² I. Introducción,
II Introducción a las redes adaline, III. Filtros adaptativos, IV. Sistemas predictivos usando filtros adaptativos, V Ejercicio práctico.
I. INTRODUCC INTRODUCCIION
C
onocemos de a ntema no la teoría de las redes neuronales y como primer estudio nos enfoca mos en el perceptrón de osemb latt, del cual sacamos muchos R osemb conceptos básicos e importantes, como son: El perceptrón es capaz de clasificar patrones linealmente separ ables, utiliza el aprendizaje supervisado, la función de activación es una har dl dlim (limitador fuerte). Su algoritmo de entrenamiento no es optimizado pues busca una p osible solución y no la mejor res or respuesta a la clasificación.
Las redes adaline son muy parecidas al perceptrón, es decir, solo son capaces de clasificar patrones lineal mente separ ables, la diferencia r ad adica en que su función de activación es lineal, pero su punto fuerte está en su algoritmo de entrenamiento basado en la optimización del error cuadrático medio. Esto hace que busque una respuesta óptima par a las soluciones. Por estos criterios las redes Adaline son muy utilizada s en la aplicación de filtros adaptativos, sistemas predictivos en gener al al.
II. INTRODUCC INTRODUCCIION A LAS REDES ADALIN ADALINE E
A. ¿Que son l as as r edes edes Ad ali ne y sus caract eríst i i cas? cas?
Son R edes muy similares al Perceptrón con la diferencia d e que su función de activación es lineal (purelin). Son de aprendizaje supervisado. De maner a similar al p erceptrón buscan minimizar el error en la salida. Usan la regla de Widrow ± Hoff par a el aprendizaje. Pueden resolver problemas lineal mente separ ables. Su algoritmo LMS (Least Mean Square) es más eficiente que la regla de aprendizaje del perceptrón pues minimiza el error medio cuadrático. Este aprendizaje es del tipo Supervisado. str uct ura B. E str
La estructur a gener al al de la red es la siguiente:
n
P1
a
P2 Fig1. Estructura General Adaline
Como su función de activación es lineal la salida está definida directa mente por la función identidad:
1
7 de Enero del 2010
REDES NEURONALES
C . Alg or it mo LMS
A continuación describimos en resumen el algoritmo gener al LMS utilizado en las redes adaline: 1.
Conocer de antema no el conjunto de patrones de entrena miento, valor esper ado (t), valor de entr ada (p).
2.
Evalua mos los patrones de la red media nte la función identidad:
3.
4.
[ 2]
[ 3]
Calculamos el error medio cuadrático media nte:
[ 4]
Donde k es el número de iter aciones. Se debe imponer el valor de la tasa de aprendizaje (), por ejemplo; = 0.2. 5 .
ID: Arreglo de valores de retar dos, 0 por defecto.
defecto.
[ 1]
S: # de neuronas
LR : Tasa de aprendizaje, 0.01 por
Calcular los nuevos pesos y bias media nte las ecuaciones:
Donde: R , matriz R x2 que contiene valores máximos y mínimos de cada uno de los R elementos de entr ada.
Se debe terminar el aprendizaje si:
[ ] 5
En este caso se debe imponer el valor del (goal).
Implementación ADALIN E con M AT LAB D.
MATLAB nos ofrece la herr amienta toolbox de redes neuronales en el cual nos simplifica y f acilita la implementación de estas redes con su entrena miento LMS a tr avés de la siguiente ma ner a: newlin(PR ,S,ID,LR ): crea una red Adaline
retar dos Net.inputWeights{1,1}.delays : inicial es, nos permite ingresar el numero de retar dos que se desee. S e tiene que tomar en cuenta que los retarnos tienen que ir e or den ascendete ejemplo [0 1 2 3«] etc .
Net.adaptParam.passes: iter aciones.
# de
Net.IW{1,1}: Nos permite inicializar los pesos de los retar dos. Net.B{1}: permite inicializar el peso del bias.
adapt(net,P,T,Pi,Ai): Entrena la red y realiza la adaptación del filtro net: Es la red creada con newlin P es la entr ada de la neurona T son los tar gets de la señal o lo que se quiere eliminar Pi condiciones iniciales del delay Ai condiciones iniciales del layer
observaremos como se Más adelante emplean estos comandos con la aplicación descrita. III. FILTROS ADAPTATIVOS A. Introducción
Las redes Adaline tienen su máxima aplicación en el tr atamiento de señales, en especial el filtr ado. En comunicaciones o tr ansporte señales hay muchas de interferencias que modifican las señales, por esto se han creado diversos tipos de filtros,
2
7 de Enero del 2010
REDES NEURONALES
desde redes pasivas RCL, técnicas de frecuencia, etc. Hasta modernos diseños digitales DSP. El diseño es muy complejo y costoso en muchas ocasiones. Las redes neuronales simplifican estos diseños como veremos más adelante.
p1 k ! y k
y k
p2 k
B. Que son l os Fil tros Ad aptat ivos?
Como sabemos al escuchar música de cualquier tipo de medio audible con sus respectivos altavoces o par lantes, se dividen las frecuencias en bajos, medios, agudos, esto se logr a mediante filtros que separ an estas frecuencias del original. Este es el tr abajo de un filtro separ ar ciertas componentes deseadas o indeseadas de la original, en este caso podría separ ar componentes de ruido indeseadas de una señal.
D
yk 1
p R k yk R 1 ¡
Fig.2. Retardos en línea
W1,1 W1,2
D
n(k)
a(k)
W1,R
C . ¿C ómo se di señan?
Se implementan filtros más eficientes media nte software. La implementación de un filtro media nte re des adaline funciona de la siguiente ma ner a: La red toma valores de la entr ada y salida deseada y se ajusta par a dar una respuesta dada. Si ca mbia n los valores la red puede adaptarse automática mente a estos nuevos valores. D.
E str uct ura
Al combinar la red Adaline con un bloque de retar dos en línea se crea un filtro adaptativo de la siguiente ma ner a:
D
b=1
Fig.3. filtro adaptativo
En este caso la salida q ueda d efinida p or la siguiente expresión:
[6 ]
El esquema en diagr ama de bloques par a su mayor comprensión lo exponemos a continuación: s: señal original v: fuente de ruido m: ruido contaminado por el tr ayecto t : suma de s+m a: salida esper ada del filtro adaptativo e: error.
3
7 de Enero del 2010
REDES NEURONALES Señal R estaur ada
Señal Original s
+
t
e +
+ -
m Camino de contaminación Fuente de Ruido
v
Filtro Adaptativo
a
Fig.4. Diagrama de bloques de un filtro Adaptativo
Par a nuestr a red, la salida d el filtro son los valores de m, en la entr ada tendremos los valores de v respectiva mente. Hay que tomar en cuenta que la señal m que pasa a tr avés de algún tr ayecto (camino de conta minación) por efectos esta se atenúa y se desf asa por retar dos, por tanto esta señal deberá tener la siguiente forma:
Funcionamiento:
No es posib le determinar la forma d e onda de la señal original pues puede ser cualquier onda en cualquier inst ante. El filtro adaptativo se adapta a cualquier tipo de onda. Por esto se debe determinar completa mente la forma de la fuente del ruido. La señal v se introduce y se obtiene la fuente efectiva d el ruido m, por tanto lo que interesa es que la señal a sea lo más parecida a m, par a que así se cancele la parte de ruido efectivo de t = s + m, aproximándose así la señal de error e a la señal s. IV. SISTEMAS PREDICTIVOS USANDO FILTROS ADAPTATIVOS
Los sistemas predictivos se basan en datos estadísticos, como sabemos las redes neuronales son muy ap ropiadas en el ma nejo de los mismos. Por el simple hecho de las cualidades de las redes Adaline y de los
filtros adaptativos creados con estas, vimos que son capaces de adaptarse a diversas señales, esto quiere decir que se pueden estu diar patrones de comportamientos Error estadísticos en cierto tiempo y así entrenar una red que sea capaz de comportarse y predecir valores en ciertos tiempos.
Un ejemplo muy práctico es un estu dio de la predicción del consumo de car ga, se toma n datos del consumo en todo el año y se entrena con estos valores a la red. A lo lar go del año la red entrenada será capaz de pre decir consumos picos o bajos en ciertas fechas del año o días en función de su entrena miento, además si ocurre algo fuer a de lo planead o la red está en la capacidad de adaptarse a nuevos valores y así dar resultados óptimos. V. EJERCICIO PRÁCTICO
El ejercicio implementado es el de un filtro adaptativo en base a lo estu diad o. Nuestr a aplicación se describe: En el ejercicio práctico se uso Matlab con el cual adquirimos una señal de voz de formato wav a una frecuencia d e muestreo fs de 8000 hz la cual es la señal de origen S . Creamos una señal que actúa como la fuente de ruido vk la cual p uede ser adquirida desde el micrófono o gener ada mediante una onda senoidal. La señal que actúa como fuente de ruido teniendo el ruido conta mina nte mk que al sumar a la señal de origen se produce la señal contaminada. Cabe recalcar que tanto la señal entr ante como la del ruido son señal es que dur an 3 segun dos con una frecuencia de muestreo de 8000Hz dado señales de 24000 muestr as en total se realiza d e esta maner a pa r a optimizar el entrena miento y adaptación del filtro.
4
7 de Enero del 2010
REDES NEURONALES
En el aprendizaje el vector de entr adas P es igual al vector vk y la salida deseada es mk .
filtr ado y nos da una idea del potencial que tiene este tipo de neurona. 6. En cuanto a los coma ndo se los estu diaron y se basan exacta mente en lo visto en este informe ya q ue es la ma ner a de entrenar una red ad eline y vemos la sencillez d e la aplicación de los coma ndo.
Par a la implementación se utilizo dos retar dos, tres pesos siná pticos y el bias, inicializándolos con valores aleatorios. Se uso una neurona y con el comando adapt el cual realiza el filtro adaptativo y entrena a la neurona par a eliminar el ruido vk de la señal contaminada
VII. BIBLIOGRAFÍA
Audio 1
[ 1] Tomado el 6 de Enero del 2010 de
0
-1 0
1 00 0
20 0 0
30 0 0
4 00 0
50 0 0
60 0 0
Ruido 1
0
-1 0
500
1 00 0
1 5 00
2 0 00
2 5 00
30 0 0
35 0 0
Señal con ruido
Martin T. Hagan, Howard B. Demounth and Mar k Beale, ³Neural Networ k Desing´, original copyright by PWS Publishing Company 1996 . China Machine Press. 70 0 0
40 0 0
[ 2] Tomado el 6 de Enero del 2010 de
2
0
-2 0
1 00 0
20 0 0
30 0 0
4 00 0
50 0 0
60 0 0
50 0 0
60 0 0
Señal filtrada 1
0
-1 0
1 00 0
20 0 0
30 0 0
4 00 0
VI. CONCLUSIONES
1. Las redes adaline son muy parecidas al perceptrón con la diferencia q ue su función de activación es lineal. 2. La optimización de la red está en su algoritmo LMS descrito minimiza anteriormente que óptimamente el error medio cuadrático. 3. En los filtros adaptativos básicamente se utiliza una estructur a d e retar dos y una red adaline. 4. Se observa la r apidez con la que la red se entrena y la eficacia que posee ya que se probo filtr ando con 2 voces diferentes y filtr a que uno no desea escuchar 5. También se nota una especie de amplificación a la salida de la red neuronal lo cual a mplifica par a el
James A. Freeman, David M. S ka pura, ´Neural Networ ks , Algorithms, Applications and Programming Techniques ´, Addison-Wesley Publishing Company. QA76.87.F74. 1991. 70 0 0
[ 3] Tomado el 6 de Enero del 2010 de 70 0 0
Universidad Tecnologica de Pereira, ³Tutorial de Redes Neuronales´, Copurigth© Universidad Tecnologica de Pereira. 2000. [ 4] Tomado el 6 de Enero del 2010 de
MATLAB 7 , ³Help Neural Networ k Toolbox´.
5