• No se han encontrado resultados

Reducción de Ruido por medio de Redes Neuronales

N/A
N/A
Protected

Academic year: 2021

Share "Reducción de Ruido por medio de Redes Neuronales"

Copied!
6
0
0

Texto completo

(1)

Reducción de Ruido por medio de Redes Neuronales

Donato Hernández, Sergio Ledesma , Miguel Torres, Gabriel Aviña y Gerardo Canedo

Facultad de Ingeniería Mecánica, Eléctrica y Electrónica Universidad de Guanajuato

Carretera Salamanca-Valle de Santiago km 3.5+1.8, Comunidad de Palo Blanco, Gto., México.

{donato, selo, mtorres, avina, canedo}@salamanca.ugto.mx

RESUMEN

Presentamos un método para reducir el ruido en las señales usando redes neuronales auto asociativas. Los experimentos usando señales senoidales, triangulares y de diente de sierra son evaluados para validar nuestros resultados. Este método esta basado en el entrenamien-to de redes neuronales y es capaz de eliminar o reducir el ruido en las señales entrenadas. Como Primer paso, un conjunto de datos de entrenamiento que consiste en valores de la señal sin ruido en diferentes fases. En Se-gundo lugar, son entrenadas tres diferentes redes neu-ronales usando una señal limpia hasta que satisfagan un criterio de error mínimo. Por Tercero y último paso, son aplicadas señales con ruido a la red neuronal para su simulación y se compara la salida de la red neuronal contra la señal limpia para cada caso y se determina el error. Típicamente el proceso de entrenamiento de la red neuronal requiere una cantidad considerable de operaciones de punto flotante, para reducir el tiempo de entrenamiento se pueden implementar mediante el uso de sistemas en hardware usando FPGA (Field Pro-grammable Gate Array Circuits).

Palabras claves:Redes Neuronales Autoasociati-vas, Ruido en Señales.

1.

INTRODUCCIÓN

El ruido es un problema real en las señales de los sistemas, algunos métodos son usados para reducirlo como: filtros analógicos [1,2] o digitales [3]. Sin em-bargo si conocemos el patrón de la forma de onda de la señal, podemos utilizar una red neuronal artificial (ANN) para reducir el ruido en la mayor parte de los casos, señales con formas de onda como Senoidales, Triangular y Diente de Sierra pueden ser usadas pa-ra entrenar una red neuronal y entonces aplicar una señal con ruido como entrada a la red y obtener a la salida una señal limpia o con el ruido reducido.

En este trabajo usamos el programa Neural-Lab, un proyecto independiente de redes neuronales para la implementación de algoritmos, este programa fue de-sarrollado en el lenguaje Visual C++. Se uso como primera parte la creación de los conjuntos de entrena-miento con las señales y sus formas de onda sin ruido para ser usadas en la red neuronal. Entonces en la se-gunda parte se entrenaron las redes neuronales con 1, 2 o 3 capas ocultas, hasta obtener un error cuadrático

medio (mse) especifico por medio de templado simu-lado (SA)[3]. Después se aplicó una señal ruidosa a la red y se obtuvo la señal filtrada en la salida.

Este artículo esta estructurado de la siguiente ma-nera. La sección 2 indica como fue la implementación del algoritmo. La sección 3 revisa algunos resultados y discusiones sobre la aplicación del algoritmo a señales ruidosas y finalmente en la sección 4 se definen las con-tribuciones y el rumbo a seguir para trabajos futuros.

2.

REDUCCIÓN DE RUIDO

Reducción de ruido es la operación de eliminar com-ponentes de frecuencias no deseadas en una señal, si la forma de onda de la señal es conocida, entonces una señal limpia puede ser usada para entrenar una red neuronal mediante la aplicación de un conjunto de en-trenamiento adecuado con los valores de la señal. 2.1. Conjunto de Entrenamiento

El primer paso en la implementación de una red neuronal es el de crear un conjunto de entrenamiento representando los valores de la señal que se usará, para el caso de la onda senoidal en un periodo de (2π); un programa escrito en el lenguaje Visual C++ fue escri-to para este propósiescri-to. El conjunescri-to de entrenamienescri-to completo para la red neuronal incluye la señal senoi-dal con diferentes fases. Esto puede ser observado en la figura 1 para algunos valores. Para propósitos de claridad solo se muestran 10 casos de entrenamiento, el conjunto total se compone de 360casos diferentes, utilizados en una red neuronal con 32 entradas y 32 salidas, esto es, se usó un incremento delta de 1/360 para la onda senoidal. Para representar estos casos se empleó la siguiente ecuación:

f(t) =sin(ωt+θ),

dondeθes el ángulo de fase con valores desde0o

a 360o

(2π), esto es equivalente a un periodo de la señal. De la misma manera fueron construidos los conjun-tos de entrenamiento para las señales del tipo triangu-lar o diente de sierra, variando la fase de los posibles casos de entrenamiento. Para construir el conjunto de entrenamiento de la señal triangular se utilizó la ecua-ción 2. En la Figura 2 se pueden observar los casos para las señales triangular y diente de sierra.

(2)

-1.5 -1 -0.5 0 0.5 1 1.5 12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32

Figura 1.El conjunto de entrenamiento para la onda

Se-noidal.

Definiendo

Λ(t) =mt, 0< t < T0, (1)

dondemes la pendiente de la linea yT0es el periodo

de la señal.

Entonces, se puede definir la señal diente de sierra como f(t) = ∞ X k=−∞ Λ(t+λ−kT0) (2)

dondeλes la fase con valores uniformemente espa-ciados desde0a8segundos para este ejemplo.

El conjunto total de casos de entrenamiento esta compuesto de256formas de onda triangular o senoidal, mientras que por otro lado la red neuronal usada tiene 32entradas y32salidas. Esto es un incremento de1/64 del periodo de la señal triangular o diente de sierra fue usado. En este caso, la Figura 2 muestra solo8casos de entrenamiento para la señal triangular figura 2(a) y también para la señal diente de sierra figura 2(b). 2.2. Entrenando la red neuronal

El segundo paso es entrenar la red neuronal respec-tiva para cumplir con el criterio de error mse, para este propósito se usó un programa escrito en el lenguaje Vi-sual C++ Neural Lab; dos métodos fueron usados para realizar la optimización de la red neuronal i) Gradiente Conjugado [6,7], y ii) Levenberg Marquardt [6,8].

Para la capa de inicialización se utilizaron los si-guientes métodos:

Algoritmos Géneticos [6,8,9,10]. Templado Simulado [6,8,4,5]. Templado + Regresión [6,11,8].

Algoritmos de regresión únicamente [6,8,10]. Los resultados de la simulación de las señales son revisados y discutidos en la siguiente sección.

(a) Triangular.

(b) Diente de Sierra.

(3)

3.

RESULTADOS

EXPERIMENTALES

En esta sección fue evaluado el rendimiento del al-goritmo propuesto para la reducción del ruido. Una señal limpia, sin ruido, fue utilizada para probar la red entrenada y después una señal ruidosa con niveles del 5 %, 10 % y 20 %, para cada caso fue aplicada, como se puede observar en las figuras 3, 4 y 5, la salida de la red neuronal tiene un nivel de ruido reducido y la forma de onda de la señal de salida sigue el comportamiento de la señal con la que se entreno la red.

También se probaron las señales triangular y dien-te de sierra con los niveles de ruido del (5 %, 10 % y 20 %), y los resultados obtenidos se pueden ver en las figuras 6 y 7. Como se puede observar el error obte-nido en la señal diente de sierra es muy significativo, un10 %en el peor de los casos, debido a que este tipo de señal tiene una transición abrupta de una amplitud máxima a una mínima, y eso lo hace muy difícil de aprender para la red neuronal dado el gran contenido de frecuencias altas. En estos casos es más efectivo uti-lizar la transformada Rápida de Fourier (FFT) en la señal de entrada y con este conjunto de entrenamiento en la frecuencia usarlo en la red, después en la salida se aplica la transformada inversa de Fourier para obtener la señal original, en el dominio del tiempo.

4.

CONCLUSIONES Y TRABAJO

FUTURO

Los factores que determinan la calidad de una señal son: i) El nivel de ruido presente en la señal, y ii) La forma de onda de la señal (descrita como una expresión matemática).

Las principales contribuciones de este artículo son: Un método para reducir el nivel de ruido en las se-ñales mediante el uso de redes neuronales fue im-plementado.

La implementación de un algoritmo para entrenar una red neuronal con las formas de onda de las señales.

El estudio de algunas formas de onda comunes co-mo la senoidal, triangular y diente de sierra. Este trabajo no ha terminado aún, algunas ideas a ser aplicadas en el conjunto de datos de entrenamiento son parte del trabajo actual y futuro. Tenemos especial interés en el desarrollo y aplicación de nuevas técnicas para reducir el ruido, usando redes neuronales, con la inclusión de mas niveles de capas escondidas. También puede ser interesante disminuir el número de neuro-nas requeridas. Adicionalmente, la implementación por hardware usando el mínimo de elementos debe ser ex-plorada.

(a) Senoidal con 5 % de ruido.

(b) Señal de salida Senoidal.

(4)

(a) Senoidal con 10 % de ruido.

(b) Señal de salida Senoidal.

Figura 4.La señal senoidal con 10 % de nivel de ruido.

(a) Senoidal con 20 % de ruido.

(b) Señal de salida Senoidal.

(5)

(a) Triangular. (b) Señal de salida.

(c) Triangular con 5 % de ruido.

(d) Señal de salida.

(e) Triangular con 10 % de ruido.

(f) Señal de salida.

(g) Triangular con 20 % de ruido.

(h) Señal de salida.

Figura 6.La señal triangular.

(a) Diente de Sierra. (b) Señal de salida.

(c) Diente de Sierra con 5 % de ruido.

(d) Señal de salida.

(e) Diente de Sierra con 10 % de ruido.

(f) Señal de salida.

(g) Diente de sierra con 20 % de ruido.

(h) Señal de salida.

(6)

Referencias

1. Wobschall, D.: Circuits Design for Electronic Instru-mentation. John Wiley&Sons Inc. (1979)

2. Shanmugam, K.S.: Digital and Analog Communica-tions Systems. John Wiley&Sons Inc. (1979) 3. Kalman, R.E.: A new approach to linear filtering and

prediction problems. In: Journal of Basic Engineering., Journal of Basic Engineering. (1960) 35–46

4. Kirkpatrick, S., Gelatt, C.D., Vecchi, M.P.: Optimi-zation by simulated annealing. In: Science, Vol 220, Number 4598., Science. (1983) 671–680

5. Aarts, E.: Simulated Annealing, Theory and Practice. John Wiley&Sons Inc. (1987)

6. Press, W.H., Teukolsky, S.A., Vetterling, W.T., Flan-nery, B.P.: Numerical Recipes in C++. Cambridge University Press. (2002)

7. Masters, T.: Practical Neural Network Recipes in C++. Academic Press, Inc. (1993)

8. Masters, T.: Advanced Algorithms for Neural Net-works. John Wiley&Sons Inc. (1995)

9. Davis, L.: Handbook of Genetic Algorithms. Van Nos-trand Reinhold. (1991)

10. Masters, T.: Signal and Image Processing With Neural Networks. John Wiley&Sons Inc. (1994)

11. Masters, T.: Neural, Novel and Hybrid Algorithms for Time Series Prediction. John Wiley&Sons Inc. (1995)

Referencias

Documento similar

Cedulario se inicia a mediados del siglo XVIL, por sus propias cédulas puede advertirse que no estaba totalmente conquistada la Nueva Gali- cia, ya que a fines del siglo xvn y en

Where possible, the EU IG and more specifically the data fields and associated business rules present in Chapter 2 –Data elements for the electronic submission of information

The 'On-boarding of users to Substance, Product, Organisation and Referentials (SPOR) data services' document must be considered the reference guidance, as this document includes the

In medicinal products containing more than one manufactured item (e.g., contraceptive having different strengths and fixed dose combination as part of the same medicinal

Products Management Services (PMS) - Implementation of International Organization for Standardization (ISO) standards for the identification of medicinal products (IDMP) in

Products Management Services (PMS) - Implementation of International Organization for Standardization (ISO) standards for the identification of medicinal products (IDMP) in

This section provides guidance with examples on encoding medicinal product packaging information, together with the relationship between Pack Size, Package Item (container)

Package Item (Container) Type : Vial (100000073563) Quantity Operator: equal to (100000000049) Package Item (Container) Quantity : 1 Material : Glass type I (200000003204)