129
1 ESCUELA SUPERIOR DE INGENIEROS INGENIEROS TELECOMUNICACIÓN UNIVERSIDAD DE SEVILLA DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES Título del Proyecto: Análisis y diseño de dispositivos de radiocomunicación mediante redes neuronales Autor: José Manuel Anguas Pérez Director: Carlos Crespo Cadenas Miembros del Tribunal Calificador: Presidente: Secretario: Vocal: Calificación:

ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

1

ESCUELA SUPERIOR DE INGENIEROS

INGENIEROS TELECOMUNICACIÓN

UNIVERSIDAD DE SEVILLA

DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA

ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

Título del Proyecto: Análisis y diseño de dispositivos de radiocomunicación mediante redes neuronales Autor: José Manuel Anguas Pérez Director: Carlos Crespo Cadenas Miembros del Tribunal Calificador:

• Presidente: • Secretario: • Vocal:

Calificación:

Page 2: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

2

Page 3: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

3

A mis padres,

Page 4: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

4

Page 5: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

5

ÍNDICE 1.- Objetivos…………………………………………………………………………...11

1.1.- Ajuste de funciones de transferencia de FETs de microondas……………….11

1.2.- Predistorsión de datos antes de introducirlos en un HPA……………………11 2.- Introducción a las redes neuronales………………………………………..……12 2.1.- ¿Qué es una red neuronal? …………………………………………………12 2.2.- Modelos de una neurona…………………………………………………..…14 2.2.1.- Tipos de funciones de activación…………………………………………………..16 2.3.- Arquitecturas de red………………………………………………………….17 2.3.1.- Redes monocapa……………………………………………………………………17 2.3.2.- Redes multicapa…………………………………………………………………….18 2.3.3.- Redes recurrentes…………………………………………………………………...18 2.3.4.- Estructuras Lattice………………………………………………………………….19 2.4.- Representación del conocimiento…………………………………………....19 2.4.1.- Reglas para la representación del conocimiento.…………………………………...21

2.4.2.- Cómo incluir información a priori en el diseño de una red neuronal………………23 2.4.3.- Cómo incluir invarianzas en el diseño de una red neuronal…………..……………23

2.5.- Inteligencia artificial y redes neuronales…………………………………....24 3.- Procesos de aprendizaje…………………..………………………………………26

3.1.- Introducción…………………..……………………………………………........26

Page 6: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

6

3.2.- Algoritmos de aprendizaje…………………………………………………........27 3.2.1.- Aprendizaje por corrección de error………………………………………………..27 3.2.2.- Aprendizaje Hebbiano……………………………………………………………...29 3.2.3.- Aprendizaje Competitivo…………………………………………………………...31 3.2.4.- Aprendizaje de Boltzmann…...……………………………………………………..33 3.3.- Paradigmas de aprendizaje………………………………………………….35 3.3.1.- Aprendizaje supervisado……………………………………………………………35 3.3.2.- Aprendizaje reforzado………………………………………………………………36 3.3.3.- Aprendizaje no supervisado………………………………………………………...37 3.3.4.- Comparativa de los diferentes paradigmas de aprendizaje…………………………38 3.3.4.1.- Aprendizaje supervisado frente a reforzado………………………………………38 3.3.4.2.- Aprendizaje supervisado frente a no supervisado...………………………………39 3.4.- Tareas de aprendizaje………………………………………………….…….39 3.5.- Adaptación y aprendizaje…………..………………………………….……..41 4.- El perceptrón……………………………………………………………………...43 4.1.- Introducción………………………...………………………………….…….43 4.2.- Consideraciones básicas………..………………………………….………...44 4.3.- Teorema de convergencia del perceptrón………..…………………………..45 4.4.1.- Resumen del teorema de convergencia del perceptrón………………………..........51

4.4.- Medida de rendimiento………..………………………………….………….52

5.- El perceptrón multicapa………………………………………………………….53

5.1.- Introducción………………………...………………………………………..53

5.2.- Algoritmo Backpropagation……...…………………………...……………...55

Page 7: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

7

5.2.1.- Las dos pasadas del cálculo………………………………………………………...61

5.2.2.- La no linealidad sigmoidal….………………………………………………………62 5.2.3.- Tasa de aprendizaje…….…………………………………………………………...63

5.2.4.- Modos de entrenamiento……………………………………………………………65

5.2.5.- Criterio de parada…………………………………………………………... ……...66

5.3.- Inicialización……...…………………………...……………………………..67

5.4.- Aproximación de funciones...…………………………...…………………....69

5.4.1.- Teorema de la Aproximación Universal………………………………………........69

5.4.2.- Consideraciones prácticas………………………………..........................................70

6.- Aplicación de las redes neuronales para la aproximación de funciones características de un transistor HEMT…………………………………………….70

6.1.- Introducción………………………...………………………………………..70

6.2.- Aproximación de la curva IDS frente a VGS………………………………….72

6.2.1.- Transistor HEMT modelo foundry ED02AH con W=2*40 y Vds=3V……….……72 6.2.1.1.- Empleando una neurona……………………………………....…………………………….73 6.2.1.2.- Empleando dos neuronas…………………………………....………………………………74 6.2.1.3.- Empleando tres neuronas…………………………………....………………………………76

6.2.2.- Transistor HEMT modelo foundry ED02AH con W=6*50 y Vds=1.4V…….…….77

6.2.2.1.- Empleando una neurona……………………………....…………………………………….78 6.2.2.2.- Empleando dos neuronas…………………………………....………………………………79 6.2.2.3.- Empleando tres neuronas…………………………………....………………………………80

6.3.- Aproximación de la curva GM frente a VGS…………………………………..82

6.3.1.- Transistor HEMT modelo foundry ED02AH con W=2*40 y Vds=3V……….……..82

6.3.1.1.- Empleando una neurona……………………………....…………………………………….83 6.3.1.2.- Empleando dos neuronas…………………………………....……………………...……….84

6.3.1.2.1.- Con función de activación exponencial cuadrática…………………....………...85

6.3.1.2.2.- Con función de activación tangente hiperbólica…………………………....……85

6.3.1.3.- Empleando tres neuronas…………………………....………………………………………87

Page 8: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

8

6.3.1.3.1.- Con función de activación exponencial cuadrática…………………....………...87

6.3.1.3.2.- Con función de activación tangente hiperbólica………………………....………88 6.3.2.- Transistor HEMT modelo foundry ED02AH con W=6*50 y Vds=1.4V….………...90

6.3.2.1.- Empleando una neurona……………………………....…………………………………….90 6.3.2.2.- Empleando dos neuronas…………………………………....………………………………92

6.3.2.2.1.- Con función de activación exponencial cuadrática………………………….......92

6.3.2.2.2.- Con función de activación tangente hiperbólica…………………....……………93 6.3.2.3.- Empleando tres neuronas…………………………………....………………………………94

6.3.2.3.1.- Con función de activación exponencial cuadrática…………………....………...95

6.3.2.3.2.- Con función de activación tangente hiperbólica…………………....……………96

6.4.- Aproximación de la curva IDS frente a VGS, VDS (Modelo GSR1)…………….97

6.4.1.- Transistor HEMT modelo foundry ED02AH con W=2*40.......................................97

6.4.2.- Transistor HEMT modelo foundry ED02AH con W=6*50.....................................101

6.5.- Aproximación de la curva Ids frente a VGS, VDS (Modelo de Angelov)……..104

6.5.1.- Transistor HEMT modelo foundry ED02AH con W=2*40....................................106

6.5.2.- Transistor HEMT modelo foundry ED02AH con W=6*50....................................107

6.6.- Evaluación de los resultados…………………………………………….....109

7.- Aplicación de las redes neuronales para la creación de un predistorsionador con memoria………………………………………………………………………..........110

7.1.- Introducción……………………...………………………………………....110

7.2.- Red neuronal como predistosionador de datos…………………………......112

7.3.- Resultados de las simulaciones…………………………………….…….....113

7.3.1.- Situación de partida………………………………………………………..............113

7.3.2.- Predistorsionador empleado…………………………………………….................115

7.3.3.- Evaluación de los resultados obtenidos………………………………...................116

7.3.3.1.- Constelación y PSD para diferentes potencias de entrada ……………………………….118

7.3.3.1.1.- Resultados para Pin = -10 dBm ………………………………………………..118

7.3.3.1.2.- Resultados para Pin = -10 dBm …………………....…………………………..120

Page 9: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

9

7.3.3.2.- Resultados en el dominio del tiempo…………………....………………………………..122

7.4.- Conclusiones………………….………………………………………….....125

8.- Conclusiones y nuevas líneas de investigación……………………………………126

8.1.- Conclusiones…………………...………………………………………...........126

8.2.- Nuevas líneas de investigación……………………...........................................126

9.- Bibliografía………………………………………………………………………….128

Page 10: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

10

Page 11: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

11

1 Objetivos El presente proyecto gira en torno al estudio de las redes neuronales y sus posibles aplicaciones al campo de la radiocomunicación. De este modo, en este proyecto se pueden observar dos aplicaciones de las redes neuronales completamente diferentes: una basada en ajustar las funciones de transferencia de diferentes dispositivos FET de acuerdo a unos parámetros medidos en el laboratorio y otra consistente en realizar un predistorsionador que elimine el efecto de la distorsión introducida por un amplificador HPA (High Power Amplifier). 1.1 Ajuste de funciones de transferencia de FETs de microoondas En esta aplicación, que desarrollaremos en el capítulo 6 de la memoria, se pretende, para diferentes dispositivos FET, realizar diferentes estructuras de redes neuronales que sean capaces de aproximar la función de transferencia de dicho dispositivo a partir de unos datos obtenidos experimentalmente. Así, entrenando las redes con estos datos, se conseguirá obtener un buen ajuste entre la curva generada por dichos datos experimentales y la curva que se consigue con la red neuronal correspondiente. Asimismo, haremos, para un mismo dispositivo FET (con unos datos experimentales determinados), diferentes estudios variando el número de neuronas de la capa oculta de las redes neuronales o modificando sus funciones de activación, con objeto de comparar resultados y determinar qué configuración de red neuronal es la más adecuada a cada caso. Además, las diferentes redes neuronales, a partir de sus pesos y bias, nos determinarán la expresión analítica de la salida en función de la entrada. Esta expresión analítica será más o menos compleja dependiendo de la complejidad de la estructura de la red neuronal usada. Por último, podemos decir que para cada caso, calcularemos el error cuadrático medio (MSE) con el fin de poder saber cuán bueno ha sido el ajuste de la red a los datos experimentales. Además, este error nos permitirá realizar comparaciones entre diferentes redes para determinar cuál presenta mejor ajuste. 1.2 Predistorsión de datos antes de introducirlos en un HPA En esta aplicación, lo que se pretende conseguir, como mostramos en el capítulo 7 de la memoria, es evitar que se produzca distorsión al hacer pasar una constelación QPSK determinada por un amplificador HPA. Es decir, se pretende que el HPA amplifique los datos que se le introducen, pero sin distorsionarlos. En esta aplicación se pretenderá conseguir, pues, dos objetivos: 1) Que la constelación de la entrada no rote al pasar por el HPA. 2) Que el canal adyacente no interfiera en el principal. Para cumplir el primer objetivo, las constelaciones de entrada y salida han de ser iguales,

Page 12: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

12

mientras que para cumplir el segundo, se ha de producir una caída notable del lóbulo secundario frente al principal en la representación de las densidades de potencia de entrada y salida. Por otro lado, se hará representaciones en el tiempo de las señales principales (entrada, salida sin amplificador y salida con amplificador) así como de sus diagramas de ojo para realizar un estudio de la eficiencia del predistorsionador.

2 Introducción a las redes neuronales 2.1 ¿Qué es una red neuronal? Trabajar con redes neuronales artificiales, comúnmente llamadas ‘redes neuronales’, ha sido motivado desde el principio por la forma diferente de actuación del cerebro frente al computador digital tradicional. A principios del siglo XX, el trabajo del científico Ramón y Cajal supuso un gran avance para entender el comportamiento del cerebro introduciendo las neuronas como constituyentes estructurales del mismo. Aunque normalmente las neuronas son cinco o seis órdenes de magnitud más lentas que las puertas lógicas de silicio, el cerebro compensa esta relativa lenta velocidad de operación de una neurona, teniendo un gran número de ellas con masivas interconexiones entre las mismas; a estas interconexiones se les llama sinapsis. Así, se estima que existen unos 10 billones de neuronas en el cerebro humano estableciendo unas 60 trillones de sinapsis o conexiones entre ellas. El cerebro es un sistema de procesamiento de información altamente complejo, no lineal y paralelo. Éste posee la capacidad de organizar neuronas así como de realizar ciertas operaciones, tales como reconocimiento espacial y temporal de patrones, memoria o visión, que las computadoras digitales no son capaces de llevar a cabo con precisión. Para conseguir esta eficiencia, el cerebro basa su trabajo en las sinapsis, que son las unidades estructurales y funcionales que median las interacciones entre neuronas. La clase más común de sinapsis es una sinapsis química, la cual opera como sigue. Un proceso presináptico libera una sustancia transmisora que se difunde a través de la unión sináptica y luego actúa en un proceso postsináptico. En las tradicionales descripciones de organización neuronal, se asume que una sinapsis es una conexión simple que puede causar excitación o inhibición, pero no ambas cosas, en la neurona receptora. El desarrollo neuronal va íntimamente unido a una característica del cerebro que es la plasticidad, la cual permite el desarrollo del sistema nervioso para adaptarse a su entorno. En un cerebro adulto, la plasticidad puede ser expresada mediante dos mecanismos: la creación de nuevas conexiones sinápticas entre neuronas y la modificación de sinapsis ya existentes. Así, la plasticidad parece ser esencial para el funcionamiento de neuronas como unidades de procesamiento de información en el cerebro humano, constituyendo con sus conexiones las redes neuronales. Podemos, así pues, establecer la siguiente definición de red neuronal:

Una red neuronal es un procesador distribuido, con elevada capacidad de cálculo en paralelo y con una tendencia natural a almacenar conocimiento experimental y hacerlo disponible para su uso. Se asemeja al cerebro en dos cosas:

Page 13: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

13

1. El conocimiento es adquirido por la red a través de un proceso de aprendizaje. 2. La fuerza de la conexión entre neuronas se mide con los pesos sinápticos, que son usados para almacenar el conocimiento.

El procedimiento usado para realizar el proceso de aprendizaje se llama algoritmo de aprendizaje y la función que tiene es la de modificar los pesos sinápticos de la red de acuerdo a llegar a alcanzar un objetivo de diseño deseado.

El poder de cálculo de las redes neuronales se debe, primero, a su estructura distribuida paralela con gran número de neuronas y, segundo, a su habilidad para aprender y luego generalizar; la generalización se refiere a que la red neuronal produce salidas razonables para entradas no sometidas al entrenamiento (fase de aprendizaje). Esas dos capacidades de procesamiento de información le hace posible a las redes neuronales resolver complejos problemas que son frecuentemente inabordables. En la práctica, sin embargo, las redes neuronales no proporcionan la solución trabajando por sí mismas, sino que el problema complejo se descompone en tareas más simples y estas redes son asignadas a subconjuntos de las tareas. El uso de redes neuronales ofrece las siguientes propiedades y capacidades: 1. No linealidad. Una neurona es, básicamente, un dispositivo no lineal, por lo que una red neuronal, constituida por una interconexión de neuronas, es también no lineal. La no linealidad es una propiedad muy importante, sobre todo si el mecanismo físico responsable de la generación de una señal (la señal de voz, por ejemplo) es inherentemente no lineal. 2. Mapeado entrada-salida. Un popular paradigma de aprendizaje llamado aprendizaje supervisado conlleva la modificación de los pesos sinápticos de una red neuronal aplicando un paquete de datos conocido como muestras de entrenamiento. Cada ejemplo consiste en una única señal de entrada y la correspondiente respuesta deseada. Se modifican los pesos de la red neuronal para conseguir minimizar la diferencia entre la respuesta deseada y la real de la red (la obtenida a partir de la señal de entrada tras pasar por la red neuronal). El entrenamiento de la red es repetido con tantos ejemplos como sean necesarios para que ésta alcance un estado estable en el que los pesos sinápticos no se vean modificados seriamente. De este modo, la red aprende de los ejemplos construyendo un mapeado entrada-salida para el problema en cuestión. 3. Adaptabilidad. Las redes neuronales tienen una capacidad intrínseca para adaptar sus pesos sinápticos a cambios en el entorno. En particular, una red neuronal entrenada para operar en un entorno específico puede ser entrenada de nuevo para conseguir que existan menos cambios en las condiciones de operación. Sin embargo, esta adaptabilidad no siempre conduce a una mayor robustez. 4. Respuesta indicativa. En el contexto de patrones de clasificación, una red neuronal puede ser diseñada para

Page 14: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

14

proporcionar información, no sólo sobre qué particular patrón seleccionar, sino también sobre la seguridad en la decisión tomada. Esta información puede ser usada más tarde para rechazar patrones antiguos. 5. Información contextual. El conocimiento está representado por la estructura y estado de activación de una red neuronal. Cada neurona en la red está potencialmente afectada por la actividad global de todas las demás neuronas de la red. En consecuencia, la información contextual es tratada con naturalidad por una red neuronal. 6. Tolerancia a fallos. Una red neuronal, implementada físicamente es tolerante a fallos en el sentido de que, a pesar de que algunas de sus neuronas o interconexiones estén dañadas, el rendimiento total no se ve seriamente afectado. 7. Implementabilidad como VLSI. La naturaleza masivamente paralela de una red neuronal la hace potencialmente rápida para el cálculo de ciertas tareas. Este hecho hace que una red neuronal sea ideal para ser implementada usando tecnología VLSI (very large scale integrated), fundamentalmente como una herramienta para aplicaciones en tiempo real tales como reconocimiento de patrones, procesamiento de señal o control. 8. Uniformidad en el análisis y en el diseño. Esta uniformidad se manifiesta en el uso de la misma notación en todos los ámbitos que impliquen el uso de redes neuronales, lo cual se manifiesta en la compartición de teorías y algoritmos de aprendizaje y en la posibilidad de crear redes modulares a partir de la integración de diversos módulos. 9. Analogía neurobiológica. El diseño de una red neuronal es motivado por analogía con el cerebro humano. De este modo, los neurobiólogos ven a las redes neuronales como herramientas para la interpretación de fenómenos neurobiológicos. 2.2 Modelos de una neurona Una neurona es una unidad de procesamiento de información fundamental para la operación de una red neuronal. En la figura (2.1) mostramos el modelo de una neurona. Podemos identificar tres elementos básicos en el modelo de una neurona, los cuales son descritos aquí: 1. Un conjunto de conexiones sinápticas, cada una de ellas caracterizado por un peso. Estrictamente, una señal xj, en la entrada de la sinapsis j conectada a la neurona k, es multiplicada

Page 15: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

15

por el peso sináptico wkj. Es importante hacer notar la manera en que los subíndices de wkj están escritos. El primer subíndice hace referencia a la neurona en cuestión y el segundo se refiere a la entrada a la sinapsis. El peso wkj es positivo si la sinapsis asociada es excitatoria, y negativo si es inhibidora.

Figura 2.1 Modelo no lineal de una neurona 2. Un sumador para sumar las señales de entrada, pesadas por las respectivas sinapsis de la neurona; las operaciones descritas aquí constituyen un combinador lineal. 3. Una función de activación para limitar la amplitud de la salida de la neurona. En términos matemáticos, podemos describir una neurona k escribiendo el siguiente par de ecuaciones:

uk = �=

p

j 1

wkj - xj (2.1)

y yk = �(uk – �k) (2.2)

donde x1, x2, … , xp son las señales de entrada; wk1, wk2, … , wkp son los pesos sinápticos de la neurona k; uk es la salida del combinador lineal; �k es el umbral (o threshold); �(·) es la función de activación; e yk es la señal de salida de la neurona.

wk1

wk2

wkp

�(·)

x1

x2

xp

Salida yk

Umbral �k

uk

Pesos sinápticos

Señales de entrada

.

.

.

.

.

.

Page 16: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

16

2.2.1 Tipos de funciones de activación

La función de activación, denotada por �(·), define la salida de una neurona en términos de nivel de actividad a su entrada. Podemos identificar tres tipos básicos de funciones de activación:

1. Función threshold. Para esta función tenemos, usando la salida de la neurona k como función threshold, la siguiente expresión:

1 si vk � 0 �(v) = (2.3) 0 si vk � 0 donde vk es el nivel de actividad interno de la neurona k, definido por:

vk = � wkjxj - �k (2.4)

2. Función lineal a trozos. Se define con la expresión siguiente: 1, v � ½

�(v) = v, ½ > v > ½ (2.5) 0, v � -½

Este tipo de función de activación puede ser visto como una aproximación a un

amplificador no lineal. Veamos dos tipos especiales de función lineal a trozos: 1) Un combinador lineal que surge en la zona lineal de operación es mantenido sin

entrar en saturación. 2) La función lineal a trozos se reduce a una función threshold si el factor de

amplificación de la región lineal es muy grande.

3. Función sigmoide. Es la función de activación más usada en la construcción de redes neuronales artificiales. Se define como una función estrictamente creciente que presenta propiedades asintóticas y de suavidad. Un ejemplo de sigmoide es la función logística, determinada por la siguiente expresión:

)exp(11

)(av

v−+

=ϕ (2.6)

Page 17: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

17

donde a es el parámetro de pendiente de la función sigmoide. Variando el parámetro a, obtenemos funciones sigmoides de diferentes pendientes. En el límite, cuando el parámetro de pendiente es infinito, la función sigmoide se convierte en una threshold. Mientras que una función threshold vale 0 ó 1, la sigmoide tiene un rango continuo de valores entre 0 y 1. Además, la sigmoide es una función diferenciable, mientras que la threshold no lo es.

2.3 Arquitecturas de red La manera en la que las neuronas de una red neuronal están estructuradas está íntimamente relacionada con el algoritmo de aprendizaje empleado para entrenar la red. En general, identificamos cuatro clases diferentes de arquitecturas de red, que explicamos a continuación: 2.3.1 Redes monocapa Una red neuronal por capas es una red de neuronas organizadas en capas. En la forma más simple de una red por capas, tenemos una capa de entrada de nodos fuente que se proyecta en una capa de salida. En otras palabras esta estructura es del tipo realimentada (feedforward). En la figura (2.2) se muestra esta estructura para el caso de cuatro nodos en las capas de entrada y salida. Esta red se conoce como red de capa simple, refiriéndose capa simple a la capa de salida de nodos de computación. Es decir, no consideramos la capa de entrada ya que en ella no se produce computación alguna.

Como aplicación de este tipo de red neuronal tenemos, por ejemplo, a la memoria asociativa lineal, en la que la red asocia un patrón de salida a un patrón de entrada (ambos son vectores) y la información se va almacenando por medio de las modificaciones realizadas a los pesos sinápticos de la red.

Figura 2.2 Red monocapa feedforward

Page 18: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

18

2.3.2 Redes multicapa La segunda clase de red neuronal feedforward existente se caracteriza por la presencia de una o más capas ocultas, cuyos nodos de computación se llaman neuronas ocultas. La función de las neuronas ocultas es intervenir entre la entrada externa y la salida de la red. Añadiendo una o más capas ocultas, la red es capaz de extraer estadísticas de orden más alto, lo que es realmente útil cuando el tamaño de la capa de entrada (número de nodos que posee) es grande.

Figura 2.3 Red multicapa feedforward completamente conectada

Los nodos fuente en la capa de entrada de la red suministran los elementos del patrón de activación (vector de entrada), lo que constituye el conjunto de señales de entrada aplicadas a las neuronas (nodos de computación) en la segunda capa (es decir, la primera capa oculta). Las salidas de la segunda capa son usadas como entradas de la tercera, y así para el resto de la red hasta llegar a la capa de salida. Generalmente, por tanto, las neuronas de cada capa de la red tienen como entradas las salidas de la capa anterior. El conjunto de señales de salida de las neuronas de salida (capa final) de la red constituye la respuesta global de la red a las señales suministradas a la capa de entrada. Por último, podemos decir que la red mostrada en la figura (2.3) es una red completamente conectada en el sentido de que cada nodo de cada capa está conectado con todos los nodos de la capa adyacente. Sin embargo, si algunas de las sinapsis se pierden, decimos que la red está parcialmente conectada. 2.3.3 Redes recurrentes Una red neuronal recurrente se distingue de una red neuronal feedforward en que posee, al menos, un lazo realimentado. Así, por ejemplo, puede consistir en una capa simple de neuronas en la que cada neurona realimenta su salida a las entradas de todas las otras neuronas, como se refleja en la figura (2.4). En esta figura no se observan lazos de realimentación de una neurona a sí misma, así como que no existen capas ocultas.

Page 19: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

19

Figura 2.4 Red recurrente sin lazos realimentados a sí mismos ni capas ocultas Los lazos de realimentación conlleva el uso de unidades de retrazo (z-1) que originan un comportamiento dinámico no lineal, el cual juega un papel clave en la función de almacenamiento de información de una red recurrente. 2.3.4 Estructuras Lattice Este tipo de estructura consiste en un array de neuronas de una, dos o más dimensiones, con un correspondiente paquete nodos fuente que proporcionan las señales de entrada al array; la dimensión de esta estructura es la del espacio en el que se dibuja. En la figura (2.5) se muestra un lattice unidimensional de tres neuronas alimentadas desde una capa de tres nodos fuente, mientras que en la figura (2.6) se describe un lattice bidimensional de tres neuronas por capa, alimentadas por tres nodos fuente. En ambas figuras podemos ver que cada nodo fuente está conectado a cada neurona. Así pues, vemos que una red lattice es, en realidad, una red feedforward con las neuronas de salida dispuestas en filas y columnas.

2.4 Representación del conocimiento

Lo primero que vamos a hacer en este apartado es definir lo que es el conocimiento.

Podemos realizar la siguiente definición genérica:

z-1 z-1 z-1 z-1 Unidades de retraso

Page 20: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

20

El conocimiento se refiere a la información almacenada o modelos usados por una persona o máquina para interpretar, predecir y responder adecuadamente al mundo exterior.

Figura 2.5 Estructura Lattice unidimensional

Figura 2.6 Estructura Lattice multidimensional (bidimensional)

Las principales características de la representación del conocimiento son qué información está explícita y cómo la información es codificada físicamente para su posterior uso. En el mundo de las máquinas inteligentes, se puede decir que una buena solución depende de una buena representación del conocimiento. Así es con las redes neuronales, que representan una clase especial de máquinas inteligentes. Sin embargo, generalmente, las posibles formas de representación desde las entradas hasta los parámetros de red internos son muy diversas, lo que tiende a provocar el desarrollo de una solución satisfactoria por medio de un diseño real de una red neuronal.

Capa de

entrada

Capa de

entrada

Page 21: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

21

Una tarea principal para una red neuronal es aprender un modelo del entorno que la rodea y mantenerlo suficientemente consistente para así alcanzar los objetivos específicos de la aplicación de interés. El conocimiento del mundo consta de dos clases de información:

1. Información a priori. La introducimos cuando usamos una determinada arquitectura de red neuronal para una aplicación concreta.

2. Observaciones (medidas). Estas observaciones, inherentemente ruidosas, nos proporcionan los ejemplos necesarios para realizar el entrenamiento de la red neuronal.

Cada ejemplo consta de un par entrada-salida: una señal de entrada y la correspondiente respuesta deseada para la red neuronal. Así, un conjunto de ejemplos representa el conocimiento acerca del entorno de interés. Consideremos, por ejemplo, el problema del reconocimiento de dígitos escritos a mano, en el que la entrada consiste en una imagen de píxeles blancos y negros; en cada imagen se representa uno de los diez dígitos posibles. Es decir, en este caso, la entrada es la imagen y la salida es la identidad del dígito. Dado dicho paquete de ejemplos, el diseño de una red neuronal puede proceder como sigue:

· Primero, se selecciona una arquitectura apropiada para la red neuronal, con una capa de entrada consistente en un número de nodos fuente igual que el número de píxeles de una imagen de entrada y una salida de diez neuronas (una por dígito). Posteriormente se entrena la red con un conjunto de ejemplos por medio de un algoritmo apropiado. Esta fase es la fase de aprendizaje.

· Segundo, para comprobar si el entrenamiento de la red ha sido bueno, se introduce datos que no estaban en el paquete de datos de la fase de entrenamiento. Aquí se presenta una imagen a la red, la cual, por comparación con imágenes introducidas en el entrenamiento, ha de saber de qué dígito se trata. Esta fase se denomina fase de generalización.

En una red neuronal, que posea una arquitectura específica, la representación del conocimiento del entorno circundante queda definida por los valores que toman los parámetros libres de la misma, es decir, por los pesos sinápticos y por los umbrales.

2.4.1 Reglas para la representación del conocimiento Hay cuatro reglas para la representación del conocimiento, que son de sentido común. Estas

cuatro reglas se describen a continuación: a) Regla 1: entradas similares de clases similares deben producir representaciones similares en la red, y deben, por lo tanto, ser clasificadas como pertenecientes a la misma categoría.

Hay muchas medidas para determinar la similitud entre entradas, pero la más

comúnmente usada se basa en el concepto de distancia Euclídea. Así definimos un punto en un espacio N-dimensional llamado espacio Euclídeo (RN) como

Page 22: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

22

xi = [xi1, xi2, ... , xiN]T (2.7) Podemos definir la distancia Euclídea entre dos vectores genéricos xi y xj de la siguiente

forma:

dij = ||xi - xj|| = [�=

N

n 1

(xin - xjn)2]1/2 (2.8)

donde xin y xjn son los enésimos elementos de los vectores de entrada xi y xj respectivamente. Mientras más cercanos estén los vectores xi y xj el uno del otro, menor será la distancia Euclídea dij y aumentará, por lo tanto, la similitud entre ambos vectores.

Otra medida de similitud está basada en la idea del producto interno, que, dados los

vectores xi y xj, se define como:

xiTxj = �=

N

n 1

xinxjn (2.9)

Estas dos medidas de similitud definidas aquí están íntimamente relacionadas, como se

puede ver en la siguiente figura:

Figura 2.7 Relación entre el producto interno y la distancia Euclídea b) Regla 2: elementos que no pertenezcan a la misma clase deben dar diferentes representaciones en la red. c) Regla 3: si una característica particular es importante, debe haber un elevado número de neuronas involucradas en su representación dentro de la red.

d) Regla 4: la información prioritaria y las invarianzas se deben incluir en el diseño de una red neuronal, de forma que la red se simplifica ya que no tiene que aprenderlas. Así, la red se diseña pensando en una determinada aplicación con características conocidas, lo que lleva a una estructura especializada.

xj

xi ||xi-xj||

xiTxj

Page 23: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

23

2.4.2 Cómo incluir información a priori en el diseño de una red neuronal Un importante tema a tratar es cómo desarrollar una estructura especializada para incluir información prioritaria en su diseño. Sin embargo, no existen reglas bien definidas para llevar a cabo esta tarea. No obstante, esta información prioritaria puede ser incluida en el diseño de la red neuronal mediante una combinación de las dos técnicas que se muestran a continuación: 1. Restringir la arquitectura de red por medio del uso de conexiones locales. 2. Forzar la elección de pesos sinápticos por el uso de la compartición de pesos. Naturalmente, la manera en que estas dos técnicas son explotadas en la práctica está fuertemente influenciada por la aplicación de interés. En un contexto más general, el desarrollo de procedimientos bien definidos para el uso de información prioritaria es aún un problema abierto sin resolver.

2.4.3 Cómo incluir invarianzas en el diseño de una red neuronal

Un primer requerimiento para un reconocimiento de patrones es diseñar un clasificador invariante a transformaciones de la señal observada. Por tanto, vemos aquí tres técnicas para describir redes neuronales invariantes a transformaciones:

1. Invarianza por estructura La invarianza puede ser impuesta en una red neuronal estructurando su diseño apropiadamente. Concretamente, las conexiones sinápticas entre las neuronas de la red son creadas de igual forma a como las versiones transformadas de la misma entrada son forzadas a producir la misma salida. Si nos fijamos, por ejemplo, en la clasificación de una imagen, nos interesa que la red neuronal sea invariante a rotaciones. Podemos imponer esta invarianza rotacional forzando determinadas conexiones sinápticas en la red. Si consideramos wji como el peso sináptico de la neurona j conectada al píxel i de una imagen de entrada y forzamos que wji = wjk para todos los píxeles i y k que se encuentren a la misma distancia del centro de la imagen, entonces conseguimos que la red neuronal sea invariante a rotaciones en el espacio.

2. Invarianza por entrenamiento Una red neuronal tiene una habilidad natural para la clasificación de patrones que puede ser explotada directamente para obtener invarianza ante transformaciones como sigue. La red es entrenada presentándole muchos ejemplos diferentes del mismo objeto, correspondiéndose estos ejemplos con distintas transformaciones del objeto. Proporcionando un número de ejemplos suficientemente grande y entrenando la red para discriminar las diferentes transformaciones del objeto, podemos esperar que la red generalice correctamente otras transformaciones que no le han sido mostradas. Sin embargo, desde una perspectiva ingeniera, la invarianza por entrenamiento tiene dos desventajas. Primero, cuando una red neuronal ha sido entrenada para reconocer un objeto de manera invariante, no es obvio que este entrenamiento sea capaz de hacer que la red

Page 24: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

24

reconozca otros objetos de clases diferentes de forma invariante. Y segundo, los requerimientos de cálculo pueden ser demasiado elevados.

3. Invarianza por extracción de características

Este método consiste en extraer características, invariantes a transformaciones de la entrada, que muestren la información esencial contenida en un conjunto de datos de entrada. El uso de un espacio con características invariantes nos proporciona tres ventajas: el número de características aplicadas a la red puede ser reducido a niveles realistas, se relajan los requerimientos impuestos en el diseño de la red y la invarianza para todos los objetos con respecto a las transformaciones conocidas está garantizada. En conclusión, este método es la técnica más adecuada para los clasificadores neuronales.

2.5 Inteligencia artificial y redes neuronales

El objetivo de la inteligencia artificial (IA) es el desarrollo de paradigmas o algoritmos

requeridos por las máquinas para realizar tareas que aparentemente requieren de conocimiento cuando son realizadas por humanos. En la definición anterior hemos hablado de conocimiento y no de inteligencia, ya que entre las tareas abordadas por la IA se encuentran la percepción y el lenguaje, así como la solución de problemas y procesos conscientes e inconscientes. Un sistema IA debe ser capaz de hacer tres cosas: almacenar conocimiento, aplicar el conocimiento almacenado a resolver problemas, y adquirir nuevos conocimientos a través de la experiencia. Todo sistema IA tiene tres componentes fundamentales: 1. Representación.

La característica más distintiva de los sistemas IA es, probablemente, el uso dominante de un lenguaje de estructuras de símbolos para representar tanto el conocimiento general sobre un problema de interés como el conocimiento específico sobre la solución del problema. Los símbolos son formulados, normalmente, en términos familiares, lo que hace que las representaciones simbólicas de los sistemas IA sean fáciles de entender para el ser humano.

El término conocimiento no es más que otro término para datos para los

desarrolladores de sistemas IA. Éste puede ser declarativo o procesal. En una representación declarativa, el conocimiento es representado como una colección estática de hechos, con un pequeño conjunto de procedimientos generales para manipular los hechos. Una característica de este tipo de representaciones es que estos datos tienen significado por sí mismos. En una representación procesal, por el contrario, el conocimiento está incluido en un código ejecutable.

2. Razonamiento

En su forma más básica, el razonamiento es la habilidad para resolver problemas. Un sistema, para que sea capaz de razonar, debe satisfacer ciertas condiciones:

· El sistema debe ser capaz de expresar y solucionar un amplio rango de problemas y tipos de problemas.

Page 25: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

25

· El sistema debe ser capaz de hacer explícita cualquier información implícita conocida por él.

· El sistema de tener un mecanismo de control que determine qué operaciones aplicar a un determinado problema, cuándo se ha obtenido una solución para el problema, o cuándo un trabajo posterior sobre el problema debería ser terminado.

En muchas situaciones dadas en la práctica, el conocimiento disponible es incompleto

o inexacto. En semejantes situaciones, se usan los procedimientos de razonamiento probabilístico, permitiendo a los sistemas IA tener en cuenta lo incierto del problema.

3. Aprendizaje

En un modelo simple de máquina con aprendizaje, el entorno suministra alguna información a un elemento de aprendizaje; esta información es usada luego para realizar mejoras en la base del conocimiento, y, finalmente, el elemento de actuación usa la base del conocimiento para realizar su tarea. Generalmente, la información suministrada por la máquina al entorno es imperfecta, de forma que el elemento de aprendizaje no sabe de antemano cómo rellenar detalles ocultos o ignorar detalles que no son importantes. La máquina opera, por lo tanto, adivinando y recibiendo, más tarde, realimentación por parte del elemento de actuación. El mecanismo de realimentación permite a la máquina evaluar sus hipótesis y revisarlas en caso de que sea necesario.

El aprendizaje puede involucrar dos clases diferentes de procesamiento de información: inductivo y deductivo. En el procesamiento de información inductivo, los patrones y reglas generales se determinan por medio de datos sin procesar y de la experiencia. Por otro lado, en el procesamiento de información deductivo, las reglas generales son usadas para determinar hechos específicos.

Para poder realizar una comparación entres los sistemas IA y las redes neuronales,

tenemos tres niveles o subdivisiones: 1. Nivel de explicación

En un sistema IA clásico, el énfasis está en construir representaciones simbólicas que suelen ser discretas y arbitrarias. Desde el punto de vista del conocimiento, es incuestionable que los sistemas IA asumen la existencia de representaciones mentales y modelan el conocimiento como un procesamiento secuencial de representaciones simbólicas. Sin embargo, en las redes neuronales, el énfasis está en el desarrollo de modelos de procesamiento distribuidos en paralelo; modelos que asumen que el procesamiento de la información tenga lugar a través de la interacción de un elevado número de neuronas, cada una de las cuales envían señales excitatorias e inhibitorias a otras neuronas de la red.

2. Estilo de procesamiento

Mientras que en los sistemas IA el procesamiento es secuencial (como en un programa típico de ordenador), en las redes neuronales el procesamiento es en paralelo, constituyendo una de sus principales características.

Page 26: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

26

3. Estructura e las representaciones Para los sistemas IA clásicos, nos encontramos con que las representaciones simbólicas poseen una estructura cuasi-lingüística. Sin embargo, en el caso de las redes neuronales, en las que la naturaleza y estructura de las representaciones es un problema crucial, las representaciones son distribuidas

Resumiendo, podemos describir a los sistemas IA como una manipulación formal de un lenguaje de algoritmos y representaciones de datos de manera descendente. Por el contrario, podemos describir las redes neuronales como procesadores distribuidos en paralelo con una natural capacidad de aprendizaje, y que, usualmente, operan de manera ascendente.

3 Procesos de aprendizaje 3.1 Introducción

Entre las muchas interesantes propiedades de una red neuronal, quizás la principal sea la habilidad de la red para aprender de su entorno, y mejorar su rendimiento a través del aprendizaje. Una red neuronal aprende de su entorno a través de un proceso iterativo de ajustes aplicados a sus pesos sinápticos y umbrales. Idealmente, la red se hace más capaz de conocer su entorno después de cada iteración del proceso de aprendizaje. Hay demasiadas nociones asociadas al término aprendizaje como para definir el término de una manera precisa. Sin embargo, en el contexto de redes neuronales, proponemos la siguiente definición de aprendizaje:

El aprendizaje es un proceso por el que los parámetros libres de una red neuronal son adaptados mediante un proceso continuo de estimulación llevado a cabo por el entorno en que se encuentra la red. El tipo de aprendizaje se determina por la manera en la que estos parámetros se ajustan.

Esta definición del proceso de aprendizaje implica la siguiente secuencia de eventos: 1. La red neuronal es estimulada por un entorno. 2. La red neuronal lleva a cabo cambios como respuesta a esta estimulación.

3. La red neuronal responde de una nueva forma al entorno debido a los cambios ocurridos en su estructura interna.

Fijándonos en la figura (2.7), podemos ver que vk, conocido como actividad interna de la neurona, depende de la señal de entrada xj a través del peso sináptico wkj. El valor de este peso

Page 27: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

27

sináptico variará con el tiempo de la siguiente forma: wkj(n +1) = wkj(n) + �wkj(n) (3.1) Se llama algoritmo de aprendizaje a un conjunto de reglas bien definidas para la solución de un problema de aprendizaje. Como uno podría esperar, no hay sólo un único algoritmo de aprendizaje para el diseño de redes neuronales, sino que tenemos un paquete de herramientas representado por una variedad de algoritmos de aprendizaje, cada uno de los cuales proporciona sus propias ventajas. Básicamente, estos algoritmos de aprendizaje se diferencian en la forma en la que el ajuste de �wkj al peso sináptico wkj es formulado. Otro factor a ser considerado es la manera en la que una red neuronal se relaciona con su entorno.

Figura 3.1 Actividad interna de la neurona k

3.2 Algoritmos de aprendizaje 3.2.1 Aprendizaje por corrección de error

Denotamos como dk(n) a la respuesta deseada para la neurona k en el instante de tiempo n, y como yk(n) a la respuesta real de esta neurona. La respuesta yk(n) es producida por un estímulo x(n) aplicado a la entrada de la red en la que se incluye la neurona k. El vector de entrada x(n) y la respuesta deseada dk(n) para la neurona k constituyen un ejemplo particular presentado a la red en el instante n. Se asume que este ejemplo y todos los demás ejemplos presentados a la red son generados por un entorno probabilístico por naturaleza, siendo desconocida la distribución de probabilidad. Típicamente, la respuesta real yk(n) de la neurona k es diferente de la respuesta deseada dk(n). Para medir esta diferencia, definimos una señal de error como la diferencia entre la respuesta deseada y la respuesta real:

ek(n) = dk(n) - yk(n) (3.2)

El propósito del aprendizaje por corrección de error es minimizar una función de coste basada en la señal de error ek(n), de modo que la respuesta real de cada neurona de salida de la red

�(vj) �(vk)

vj xj

wkj

yk

Neurona j Neurona k

Page 28: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

28

se aproxime lo más posible a la respuesta objetivo en un sentido estadístico. Una vez que la función de coste es seleccionada, el aprendizaje por corrección de error es estrictamente un problema de optimización, en el que se puede hacer uso de las herramientas habituales. Un criterio comúnmente usado para la función de coste es el criterio del error cuadrático medio (mse: mean-square-error), definido como el valor cuadrático medio de la suma de errores cuadráticos:

J = E [½�ek2(n)] (3.3)

donde E es el operador esperanza estadística, y el sumatorio es para todas las neuronas de la capa de salida de la red. El factor ½ es usado en la ecuación (3.3) para simplificar las derivadas de la minimización de J con respecto a los parámetros libres de la red. Asimismo, en la ecuación (3.3) asumimos que el proceso es estacionario en sentido amplio. La minimización de la función de coste J con respecto a los parámetros de la red es conocida como método del gradiente descendente. Sin embargo, la dificultad de este proceso de optimización es que requiere del conocimiento de las características estadísticas de los procesos subyacentes. Superamos esta dificultad práctica conformándonos con una solución aproximada al problema de optimización. Específicamente, usamos el valor instantáneo de la suma de errores cuadráticos como criterio de interés:

�(n) = ½ �k

ek2(n) (3.4)

Luego, la red es optimizada minimizando �(n) con respecto a los pesos sinápticos de la misma. Así, según la regla de aprendizaje por corrección de error (o regla de la delta, como algunas veces es llamada), el ajuste de �wkj(n) hace que el peso sináptico wkj en el instante n venga dado por: �wkj(n) = �ek(n)xj(n) (3.5) donde � es una constante positiva que determina la tasa de aprendizaje. En otras palabras, el ajuste hace que un peso sináptico sea proporcional al producto de la señal de error (medida con respecto a alguna respuesta deseada en la neurona de salida) y la señal de entrada de la sinapsis que tratamos. Notemos que esta señal de entrada es la misma que la señal de salida de la neurona presináptica que alimenta a la neurona en cuestión. Asimismo, hay que tener cuidado con el valor de la tasa de aprendizaje, que es un parámetro muy importante, ya que nos mide no sólo la velocidad de convergencia, sino la propia convergencia. Así, para asegurar estabilidad en el proceso de aprendizaje, no se debe tomar un valor elevado de �, ya que, aunque se alcanza una velocidad de convergencia elevada, se corre el riesgo de que el proceso diverja y se haga inestable. Una representación de la función de coste J frente a los pesos sinápticos que caracterizan a la red neuronal consiste en una superficie multidimensional conocida como superficie de error. Dependiendo del tipo de unidades de procesamiento usadas para construir la red neuronal, podemos identificar dos situaciones distintas:

1. La red neuronal consta de unidades de procesamiento lineales, con lo que estamos en el caso de una superficie de error que es exactamente una función cuadrática de los pesos de la

Page 29: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

29

red. Esto es, la superficie de error es cóncava con sólo un mínimo (salvo la existencia de una solución degenerada).

2. La red neuronal consta de unidades de procesamiento no lineales, estando en el caso de una superficie de error con un mínimo global así como también local.

En ambos casos, el objetivo del algoritmo de aprendizaje por corrección de error es comenzar desde un punto arbitrario de la superficie de error (determinado por los valores iniciales asignados a los pesos sinápticos) y luego acercarse, paso a paso, a un mínimo global. En el primer caso, el objetivo es ciertamente alcanzable. En el segundo caso, por el contrario, no siempre es alcanzable, ya que es posible que el algoritmo se quede atrapado en un mínimo local de la superficie de error y nunca sea capaz, por tanto, de alcanzar un mínimo global. 3.2.2 Aprendizaje Hebbiano El postulado de aprendizaje de Hebb es el más antiguo y famoso de entre todas las reglas de aprendizaje. Este postulado se puede escribir como una regla compuesta de dos:

1. Si dos neuronas a ambos lados de la sinapsis son conectadas simultáneamente (es decir, síncronamente), entonces la fuerza de esa sinapsis es selectivamente incrementada. 2. Si dos neuronas a ambos lados de la sinapsis son conectadas asíncronamente, entonces la sinapsis es selectivamente debilitada o eliminada.

La sinapsis de la que hemos hablado en la definición se denomina sinapsis Hebbiana. Con mayor precisión, definimos una sinapsis Hebbiana como una sinapsis que usa un mecanismo dependiente del tiempo, altamente local y fuertemente interactivo para incrementar la eficiencia sináptica como una correlación entre las actividades presinápticas y postsinápticas. De esta definición, podemos describir las cuatro propiedades fundamentales que caracterizan a una sinapsis Hebbiana: 1. Mecanismo dependiente del tiempo.

Este mecanismo se refiere al hecho de que las modificaciones llevadas a cabo en la sinapsis Hebbiana dependen del tiempo exacto de ocurrencia de las actividades presinápticas y postsinápticas.

2. Mecanismo local.

Es decir, como ya hemos dicho anteriormente, este mecanismo sólo depende de las actividades presinápticas y postsinápticas.

3. Mecanismo interactivo.

Aquí vemos que la ocurrencia de un cambio en una sinapsis Hebbiana depende de los niveles de actividad a ambos lados de la sinapsis. Es decir, el aprendizaje Hebbiano depende de una verdadera interacción entre las actividades presinápticas y postsinápticas en

Page 30: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

30

el sentido de que no se puede realizar una predicción de cualquiera de esas dos actividades. Además, podemos decir que esta dependencia o interacción puede ser de naturaleza determinista o estadística.

4. Mecanismo conjuncional o correlacional.

Una interpretación del postulado de aprendizaje de Hebb es que la condición necesaria para que se produzca un cambio en la eficiencia sináptica es la conjunción de actividades presinápticas y postsinápticas. De este modo, según esta interpretación, la co-ocurrencia de actividades presinápticas y postsinápticas es suficiente para producir la modificación sináptica. Es por esta razón por la que, a veces, una sinapsis Hebbiana es llamada sinapsis conjuncional. Si hablamos en términos estadísticos, entonces nos encontramos con que la sinapsis Hebbiana es conocida como sinapsis correlacional.

Para formular el postulado de aprendizaje de Hebb en términos matemáticos, consideramos de nuevo la situación descrita en la figura (2.1). Esta figura muestra un peso sináptico wkj con actividades presinápticas y postsinápticas denotadas por xj e yk respectivamente. De acuerdo con el postulado de Hebb, el ajuste aplicado al peso sináptico wkj en el instante de tiempo n se expresa en forma

�wkj(n) = F(yk(n), xj(n)) (3.6) donde F(·,·) es una función de las actividades presinápticas y postsinápticas. Los términos xj(n) e yk(n) son tratados frecuentemente como variables adimensionales. Un caso especial de la ecuación anterior puede ser escrito como

�wkj(n) = � yk(n)xj(n) (3.7) donde n es una constante positiva que determina la tasa de aprendizaje. La ecuación anterior es la regla más simple para un cambio en peso sináptico wkj, expresado como un producto de las señales entrantes y salientes. Esta regla enfatiza claramente la naturaleza correlacional de la sinapsis Hebbiana. A veces, esta regla se conoce como regla del producto de actividad.

Si representásemos �wkj frente a la entrada xj, veríamos que la repetida aplicación de la señal de entrada (actividad presináptica) xj conllevaría un crecimiento exponencial que, finalmente, conduce al peso sináptico wkj a la saturación. Para evitar semejante situación, necesitamos imponer un límite en el crecimiento de los valores de los pesos sinápticos. Un método para hacer esto es introducir un factor no importante dentro de la fórmula de ajuste de �wkj (ecuación (2.6)). Así, redefinimos �wkj como sigue:

�wkj(n) = �yk(n)xj(n) - �yk(n)wkj(n) (3.8) donde � es una nueva constante positiva y wkj(n) es el peso sináptico en el instante n. Equivalentemente, podemos escribir

Page 31: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

31

�wkj(n) = �yk(n)[cxj(n) - wkj(n)] (3.9) donde c es igual a �/�. La ecuación (3.9) es conocida, a veces, como regla del producto de actividad generalizada. Esta ecuación implica que para entradas en las que xj(n) < wkj(n)/c, el peso sináptico modificado wkj(n+1) se decrementará en una cantidad proporcional a la actividad postsináptica yk(n). Por otro lado, cuando xj(n) > wkj(n)/c, el peso sináptico modificado wkj(n+1) se incrementará en proporción a yk(n). Así, vemos que el punto de equilibrio para modificar el peso sináptico en el instante n+1 es variable e igual a wkj/c. El uso de este planteamiento elimina el problema de inestabilidad del peso sináptico. Otro modo de formular el postulado de Hebb es en términos estadísticos, en el sentido de que los cambios producidos en los pesos sinápticos son proporcionales a la covarianza entre las actividades presinápticas y postsinápticas. Así, podemos escribir el cambio en el peso sináptico wkj en el instante n como

�wkj(n) = �cov[yk(n), xj(n)] = �E[(yk(n) - ky )(xj(n) - jx )] (3.10)

donde n es la taza de aprendizaje; E es el operador de esperanza media; y jx es el valor medio de

las actividades presinápticas, así como ky es de las actividades postsinápticas respectivamente. La ecuación (3.9) es conocida como regla de la covarianza de la actividad. Expandiendo los términos de la ecuación (3.10) y reorganizándolos, podemos escribir dicha ecuación como sigue:

�wkj(n) = �{E[yk(n)xj(n)] - jkxy } (3.11) El primer término de la ecuación (3.11) tiene una forma similar a la regla Hebbiana simple. 3.2.3 Aprendizaje competitivo

En el aprendizaje competitivo, como su propio nombre indica, las neuronas de salida de una red neuronal compiten entre ellas mismas por ser la única activa. De esta forma, mientras en una red neuronal basada en el aprendizaje Hebbiano varias neuronas de salida pueden estar activas simultáneamente, en el caso de aprendizaje competitivo sólo una neurona de salida está activa en cualquier instante de tiempo. Es esta característica la que hace que el aprendizaje competitivo sea muy adecuado para descubrir esas características estadísticas sobresalientes que pueden ser usadas para clasificar un conjunto de patrones de entrada. Hay tres elementos básicos en un algoritmo de aprendizaje competitivo:

· Un conjunto de neuronas todas iguales salvo para algunos pesos sinápticos distribuidos aleatoriamente, y que, por tanto, responde de forma diferente a un conjunto de patrones de entrada.

· Un límite impuesto en la fuerza de cada neurona.

Page 32: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

32

· Un mecanismo que permite a las neuronas completarse adecuadamente para responder a un subconjunto de entradas dado, de forma que sólo una neurona de salida, o sólo una neurona por grupo, esté activa al mismo tiempo.

De acuerdo con esto, las neuronas de la red aprenden a especializarse en conjuntos de patrones similares, y se convierten por tanto en detectores de características. En la forma más simple de aprendizaje competitivo, la red neuronal tiene una capa simple de neuronas de salida, cada una de las cuales está completamente conectada a los nodos de la entrada. La red puede incluir conexiones laterales entre las neuronas como se indican en la figura (3.2). En la arquitectura de red descrita aquí, las conexiones laterales llevan a cabo inhibición lateral, con la que cada neurona tiende a inhibir a la neurona la que está conectada lateralmente. El resto de conexiones sinápticas de la red en la figura (3.2) son excitatorias. Si, por ejemplo, la neurona j es la neurona vencedora, su nivel de actividad interno vj para un patrón específico de entrada x debe ser el más grande de entre todas las neuronas de la red. La señal de salida yj de la neurona vencedora j es igual a uno; las señales de salida de todas las neuronas que pierden la competición son iguales a cero. Denotemos por wji al peso sináptico que conecta el nodo de entrada i a la neurona j. A cada neurona se le permite un conjunto fijo de pesos sinápticos (todos los pesos sinápticos son positivos), el cual se distribuye entre sus nodos de entrada; esto es, tenemos

�i

wji = 1 para todo j (3.12)

Una neurona aprende cambiando los pesos sinápticos de sus nodos de entrada de inactivos a activos. Si una neurona no responde a un particular patrón de entrada, el aprendizaje no se realiza en dicha neurona. Si una neurona en particular gana la competición, entonces cada nodo de entrada de la neurona renuncia a alguna proporción de su peso sináptico, y el peso renunciado es luego distribuido equitativamente entre los nodos de entrada activos. Según la regla de aprendizaje competitivo estándar, el cambio �wji aplicado al peso sináptico wji es definido por la siguiente expresión:

�(xi – wji) si la neurona j gana la competición

�wji = (3.13) 0 si la neurona j pierde la competición donde n es el parámetro tasa de aprendizaje. Esta regla tiene el efecto global de mover el vector de pesos sinápticos wj de la neurona vencedora j hacia el patrón de entrada x.

Vemos la esencia del aprendizaje competitivo. Se asume que cada patrón de entrada x tiene

una longitud constante, así que podemos ver cada patrón como un punto en una esfera N-dimensional, donde N es el número de nodos de entrada; además, N representa la dimensión de cada vector de pesos sinápticos wj. Más allá, podemos decir que todas las neuronas de la red están obligadas a tener la misma distancia Euclídea, es decir: �

j

wji2 = 1 para todo j (3.14)

Page 33: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

33

De esta forma, cuando los pesos sinápticos están escalados adecuadamente, forman un conjunto de vectores que corresponden a la misma esfera N-dimensional. En particular, cada una de las neuronas de salida tiene una agrupación de puntos que mueven su vector de pesos sinápticos al centro de gravedad de dicha agrupación.

Figura 3.2 Arquitectura de una red con aprendizaje competitivo

3.2.4 Aprendizaje de Boltzmann La regla del aprendizaje de Boltzmann es un algoritmo de aprendizaje estocástico derivado de información teórica y de consideraciones termodinámicas. En una máquina de Boltzmann, las neuronas constituyen una estructura recurrente, y operan de una manera binaria, es decir, el estado activo se denota con un '1', y el inactivo con un '-1'. La máquina está caracterizada por una función de energía E, cuyo valor está determinado por los estados particulares ocupados por las neuronas individuales de la máquina, como mostramos a continuación:

E = -½ �i�j

wjisjsi (3.15)

i � j

donde si es el estado de la neurona i, y wji es el peso sináptico que conecta la neurona i con la neurona j. El hecho de que i � j simplemente significa que ninguna de las neuronas de la máquina se realimenta a sí misma. La máquina opera eligiendo una neurona aleatoria (la neurona j, por ejemplo) en algún paso del proceso de aprendizaje, y pasando el estado de la neurona j del estado sj al estado -sj (con una temperatura T) con probabilidad

x1

x2

x3

x4

Capa de nodos fuente

Capa única de neuronas de salida

Page 34: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

34

W(sj � -sj) = )exp(1

1Τ/∆Ε−+ j

(3.16)

donde �Ej es el cambio de energía resultante de pasar de un estado a otro. Notemos que T no es una temperatura física, sino que se trata de una peudotemperatura. Si esta regla es aplicada repetidamente, la máquina alcanzará un equilibrio térmico. Las neuronas de una máquina de Boltzmann se dividen en dos grupos: visibles y ocultas. Las visibles proporcionan una interfaz entre la red y el entorno en que trabaja, mientras que las neuronas ocultas operan siempre con libertad. Se pueden considerar dos modos de operación:

· Condición sujeta, en la que las neuronas visibles están sujetas a estados específicos determinados por el entorno.

· Condición de libre operación, en la que las neuronas (visibles y ocultas) pueden operar libremente.

Denotemos por �ji+ a la correlación condicional entre los estados de las neuronas i y j (estamos, por tanto, en la condición sujeta), y denotemos por �ji- a la correlación incondicional entre los estados de las neuronas i y j (es decir, la red neuronal opera en la condición de libre operación). Ambas correlaciones son medidas sobre todos los posibles estados de la máquina cuando ésta se encuentra en equilibrio térmico. Las correlaciones �ji+ y �ji- quedan definidas a continuación: �ji+ = �

α�β

P��+sj|��si|�� (3.17)

�ji- = �

α�β

P��-sj|��si|�� (3.18)

donde si|�� denota el estado de la neurona i, estando las neuronas visibles de la máquina en el estado � y las neuronas ocultas en el estado �. El factor P��+ es la probabilidad condicional de que las neuronas visibles estén en el estado � y las neuronas ocultas estén en el estado �, dada la condición sujeta; y P��- es la probabilidad condicional de que las neuronas visibles estén en el estado � y las neuronas ocultas estén conjuntamente en el estado �, dada la condición de libre operación. Entonces, de acuerdo a la regla de aprendizaje de Boltzmann, el cambio �wji aplicado al peso sináptico wji está definido por

�wji = �(�ji+ - �ji-) (3.19)

donde � es la tasa de aprendizaje. El rango de valores de �ji+ y �ji- comprende de -1 a 1. Una característica distintiva del aprendizaje de Boltzmann es que sólo usa observaciones disponibles localmente bajo dos condiciones de operación: sujeta y de libre operación.

Page 35: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

35

3.3 Paradigmas de aprendizaje 3.3.1 Aprendizaje supervisado Un ingrediente esencial en el aprendizaje activo o supervisado es la disponibilidad de un maestro externo, como se puede apreciar en la figura (3.3).

Figura 3.3 Diagrama de bloques del aprendizaje supervisado

Conceptualmente, podemos pensar que el maestro, como conocedor del entorno que es, está representado por un conjunto de ejemplos entrada-salida. Sin embargo, el entorno es desconocido para la red neuronal de interés. Supongamos ahora que tanto el maestro como la red neuronal son sometidos a un vector de entrenamiento sacado del entorno. El maestro es capaz de proporcionar a la red neuronal la respuesta deseada (o respuesta objetivo) para ese vector de entrenamiento. Además, la respuesta deseada representa la acción óptima a ser realizada por la red neuronal. Los parámetros de la red son ajustados bajo la influencia combinada del vector de entrenamiento y la señal de error; la señal de error se define como la diferencia entre la respuesta actual de la red y la respuesta deseada. Este ajuste es llevado a cabo paso a paso iterativamente con el objetivo de hacer que la red neuronal, eventualmente, emule al maestro; se supone que la emulación es óptima en algún sentido estadístico. En otras palabras, el conocimiento del entorno por parte del maestro es transferido a la red neuronal en la mayor medida posible. Cuando se alcanza esta condición, podemos prescindir del maestro y dejar a la red neuronal tratar con el entorno por sí misma. La forma de aprendizaje supervisado que acabamos de describir es, en realidad, el aprendizaje por corrección de error descrito en la sección (3.2.1). Se trata de un sistema realimentado de bucle cerrado en el que el entorno desconocido no se encuentra en el bucle. Como medida de actuación para este sistema, podemos pensar en términos de error cuadrático medio (es decir, el valor esperado de la suma de los errores cuadráticos) definido como una función de los parámetros libres del sistema. Esta función puede ser visualizada como una superficie de error multidimensional o como una superficie de error simple, con los parámetros libres como

Entorno Maestro

Sistema de aprendizaje �

Respuesta deseada

Respuesta actual

Señal de error

Vector que describe el estado del entorno

Page 36: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

36

coordenadas. La verdadera superficie de error es medida sobre todos los posibles ejemplos entrada-salida. Cualquier operación del sistema bajo la supervisión del maestro es representada como un punto en la superficie de error. La red deberá ir desplazando, con ayuda del maestro, el punto de operación hacia un mínimo global de dicha superficie. Un sistema de aprendizaje supervisado es capaz de hacer esto gracias a la información que posee acerca del gradiente de la superficie de error correspondiente al comportamiento actual del sistema. El gradiente de la superficie de error en cualquier punto es un vector que apunta a la dirección de mayor descenso. De hecho, en el caso de aprendizaje supervisado a partir de ejemplos, el sistema usa un estimador instantáneo del vector gradiente, de forma que dado un adecuado conjunto de ejemplos entrada-salida, y dado un tiempo suficiente de entrenamiento, este algoritmo de aprendizaje es capaz de realizar tareas como clasificación de patrones y aproximación de funciones satisfactoriamente. Ejemplos de algoritmos de aprendizaje supervisado son el algoritmo LMS (least-mean-square algorithm) y su generalización, conocida como algoritmo de propagación hacia atrás ó BP (backpropagation). Este último es mucho más poderoso que el primero, el cual se considera un caso especial del BP. El aprendizaje supervisado puede llevarse a cabo de dos maneras diferentes:

1. Off-line. Se usa aquí una facilidad computacional para diseñar el sistema de aprendizaje supervisado. Una vez conseguido el rendimiento deseado, el diseño es 'congelado', es decir, a partir de aquí, la red neuronal opera de una manera estática.

2. On-line. En este caso, el proceso de aprendizaje es implementado por el sistema en sí mismo, es decir, no requiere una facilidad de cómputo adicional. En otras palabras, el aprendizaje es realizado en tiempo real, con lo que la red neuronal resultante es dinámica.

Una desventaja del aprendizaje supervisado es el hecho de que, sin maestro, una red neuronal no puede aprender nuevas estrategias para situaciones particulares que no estén cubiertas por el conjunto de ejemplos usados para entrenar la red. 3.3.2 Aprendizaje reforzado El aprendizaje reforzado es un aprendizaje en tiempo real consistente en un mapeado entrada-salida a través de un proceso de prueba y error diseñado para maximizar un índice de rendimiento escalar llamado señal de refuerzo. El término de 'aprendizaje reforzado' fue acuñado por Minsky (1961) en sus primeros estudios de inteligencia artificial, y luego en teoría de control por Waltz y Fu (1965). Sin embargo, la idea básica de 'refuerzo' tuvo sus orígenes en estudios experimentales de aprendizaje animal en psicología (Hampson, 1990). En este contexto, es particularmente llamativo hacer referencia a la ley de efecto de Thorndike (1911):

"De varias respuestas obtenidas ante la misma situación, aquellas que son acompañadas o seguidas inmediatamente de una satisfacción para el animal, estarán más conectadas con esta situación, de forma que, si ocurre la misma situación, serán más propensas a darse de nuevo; aquellas que sean acompañadas o seguidas inmediatamente por disconformidad por parte del animal, tendrán debilitadas sus conexiones con esta situación, de forma que, si

Page 37: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

37

ocurre la misma situación, serán menos propensas a ocurrir. A mayor satisfacción o disconformidad, mayo fuerza o debilidad del vínculo."

Aunque no puede decirse que este principio proporcione un modelo completo de comportamiento biológico, su simplicidad y su planteamiento de sentido común hacen que sea una regla de aprendizaje influyente. En realidad, podemos reescribir la ley de efecto de Thorndike para ofrecer la siguiente definición de aprendizaje reforzado:

"Si una acción llevada a cabo por un sistema de aprendizaje es seguida por un estado

satisfactorio, entonces la tendencia del sistema para producir esa acción particular es reforzada. Si estuviéramos en la situación opuesta, la tendencia del sistema a producir esa acción es debilitada."

El paradigma de aprendizaje reforzado puede ser de dos tipos: 1. Aprendizaje reforzado no asociativo.

Aquí, el sistema de aprendizaje tiene la tarea de seleccionar una única acción óptima más que asociar diferentes acciones a diferentes estímulos. En este problema de aprendizaje el refuerzo es la única entrada que recibe el sistema de aprendizaje de su entorno. El aprendizaje reforzado no asociativo ha sido estudiado como una función de optimización bajo la protección de algoritmos genéticos.

2. Aprendizaje reforzado asociativo.

En este caso, el entorno proporciona formas adicionales de información además del reforzamiento. Aquí, se debe aprender un mapeado en la forma de asociación de estímulos con acciones. El aprendizaje reforzado asociativo es el representado mayoritariamente por investigación en redes neuronales. En el contexto de aplicación, está unido a teoría de control óptima.

3.3.3 Aprendizaje no supervisado En el aprendizaje no supervisado o auto-organizado no hay maestro externo para supervisar el proceso de aprendizaje, como podemos ver en la figura (2.3), en la que se representa el diagrama de bloques del aprendizaje no supervisado. En otras palabras, no hay ejemplos específicos de la función que ha de ser aprendida por la red. En su lugar, tenemos una medida independiente de la tarea de la calidad de representación que la red requiere aprender, y los parámetros libres de la red se optimizan respecto a esa medida. Una vez que la red se ha sintonizado a las regularidades estadísticas de los datos de entrada, se desarrolla la habilidad para formar representaciones internas de características codificadas de la entrada y, por tanto, crear nuevas clases automáticamente.

Figura 3.4 Diagrama de bloques del aprendizaje no supervisado

Entorno Sistema de aprendizaje

Vector que describe el estado

del entorno

Page 38: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

38

Para llevar a cabo el aprendizaje supervisado, podemos usar una regla de aprendizaje competitivo. Por ejemplo, podemos usar una red neuronal que conste de dos capas denominadas capa de entrada y capa competitiva. La capa de entrada recibe los datos disponibles. La capa competitiva consta de neuronas que compiten ente sí para tener la oportunidad de responder a características contenidas en los datos de entrada. En su forma más simple, la red opera de acuerdo a una estrategia de 'el vencedor lo consigue todo'. En esta estrategia, la neurona con la entrada más grande gana la competición y se activa; el resto de neuronas se desactivan.

3.3.4 Comparativa de los diferentes paradigmas de aprendizaje 3.3.4.1 Aprendizaje supervisado frente a reforzado La medida de rendimiento usada para un sistema de aprendizaje supervisado se define en términos de un conjunto de objetivos (es decir, respuestas deseadas) por medio de un criterio de error conocido (por ejemplo, el mse). Por lo tanto, un sistema de aprendizaje supervisado puede ser visto como un sistema de realimentación instructivo. En contraste a esto, un sistema de aprendizaje reforzado dirige el problema de mejorar el rendimiento y, por tanto, el aprendizaje, en base de cualquier medida cuyos valores puedan ser suministrados al sistema. De este modo, podemos ver un sistema de aprendizaje reforzado como un sistema de realimentación evaluativo. Para ser más preciso, en un sistema de aprendizaje supervisado el maestro proporciona información directa acerca de cómo el sistema debería cambiar su comportamiento para mejorar el rendimiento. Esta información es de naturaleza local, definida por un estimador instantáneo del gradiente de la superficie de error en el punto de operación actual, y le proporciona al sistema una respuesta razonable acerca de cuál es la dirección a la que debería cambiar sus parámetros libres para alcanzar una mejora en el rendimiento. Por el contrario, en un algoritmo de aprendizaje reforzado, no hay maestro para suministrar la información del gradiente durante el aprendizaje. La única parte de información disponible es representada por el reforzamiento recibido del entorno. Aunque el reforzamiento es un escalar, mientras que el gradiente en el aprendizaje supervisado es un vector, el punto clave a tener en cuenta es que, en el aprendizaje reforzado, la información contenida en el reforzamiento evalúa el comportamiento, pero no indica en sí misma si la mejora es posible o cómo debería cambiar el sistema en caso de que la mejora fuese factible. Para obtener información de naturaleza direccional, un sistema de aprendizaje reforzado prueba el entorno a través del uso combinado de prueba y error y recompensa a posteriori. Esto es, el sistema se encarga de alguna forma de exploración, buscando información direccional en base a propiedades intrínsecas del entorno. Sin embargo, haciendo esto, un sistema de aprendizaje reforzado ralentiza su operación, debido a que un cambio en el comportamiento realizado para obtener información direccional está, generalmente, en conflicto con la forma en la que la información direccional resultante es utilizada para cambiar el comportamiento con el objetivo de mejorar el rendimiento. Este fenómeno es conocido como el conflicto entre la identificación y el control, o el conflicto entre la exploración y la explotación. Dicho de otra forma, siempre hay un conflicto entre los dos factores siguientes:

· El deseo de usar el conocimiento ya disponible acerca de las ventajas relativas de las acciones llevadas a cabo por el sistema. · El deseo de adquirir más conocimiento sobre las consecuencias de acciones tales como hacer mejores selecciones en el futuro.

Page 39: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

39

La mejor decisión realizada vista desde un único factor no siempre es la mejor decisión hecha de acuerdo a los demás. Este tipo de conflicto no aparece en el aprendizaje supervisado, que es el que normalmente usa en la práctica. 3.3.4.2 Aprendizaje supervisado frente a no supervisado

Entre los algoritmos usados para llevar a cabo el aprendizaje supervisado, el algoritmo de propagación hacia atrás (backpropagation) se ha convertido en el más ampliamente usado y el más exitoso para el diseño de redes alimentadas hacia delante (feedforward) multicapa. Hay dos fases distintas en la operación del aprendizaje backpropagation: una hacia adelante y otra hacia atrás. En la fase hacia adelante, las señales de entrada se propagan a través de la red capa a capa, produciendo eventualmente alguna respuesta en la salida de la red. La respuesta real así producida se compara con la deseada (objetivo), generando señales de error que luego son propagadas hacia atrás. En esta fase hacia atrás, los parámetros libres de la red son ajustados para así minimizar la suma de errores cuadráticos. El algoritmo backpropagation ha sido aplicado con éxito para resolver algunos problemas difíciles tales como reconocimiento de texto, reconocimiento de dígitos escritos a mano y control adaptativo. Desafortunadamente, el algoritmo backpropagation y otros algoritmos de aprendizaje supervisados pueden verse limitados por su pobre comportamiento en el ajuste. Una posible solución al problema del ajuste es usar un proceso de aprendizaje no supervisado. El aprendizaje auto-organizado tiene la habilidad de formar representaciones internas que modelen la estructura subyacente de los datos de entrada de una forma explícita. Esta habilidad hace que se espere que la versión transformada de la entrada deba ser, más fácil de interpretar, así que las repuestas actuales podrían ser asociadas con las representaciones internas de la red del entorno más rápidamente. En otras palabras, el uso híbrido de procesos de aprendizaje supervisado y no supervisado puede proporcionar una solución más aceptable que usando sólo el aprendizaje supervisado, particularmente si el tamaño del problema es grande. 3.4 Tareas de aprendizaje La elección de un particular proceso de aprendizaje está muy influida por la tarea de aprendizaje que va a llevar a cabo la red neuronal. En este contexto, podemos identificar las siguientes tareas de aprendizaje, las cuales corresponden al uso de redes neuronales de una u otra forma: 1. Aproximación. Suponemos que tenemos un mapeado entrada-salida descrito por la relación funcional d = g(x) (3.20)

donde el vector x es la entrada y el escalar d es la salida. Se considera que la función g(·) es desconocida. El objetivo es diseñar una red neuronal que aproxime la función no lineal g(·), dado un conjunto de ejemplos denotados por los pares entrada-salida (x1,d1), (x2,d2), ... , (xn,dn). El problema de aproximación descrito aquí es un perfecto candidato para aprendizaje supervisado con xi sirviendo como vector de entrada y di jugando el papel de

Page 40: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

40

respuesta deseada, donde i = 1, 2, ... , N. En realidad, dando un giro, podemos ver el aprendizaje supervisado como un problema de aproximación.

2. Asociación. Esta tarea de aprendizaje puede tener dos formas, denominadas autoasociación y heteroasociación. En la autoasociación, se requiere una red neuronal para almacenar un conjunto de patrones (vector) que son presentados repetidamente a la red. A continuación, la red es presentada en una versión distorsionada o descripción parcial de un patrón original almacenado en ella, y la tarea es recuperar el particular patrón. La heteroasociación se diferencia de la autoasociación en que un conjunto arbitrario de patrones de entrada es emparejado con otro conjunto arbitrario de patrones de salida. La autoasociación involucra el uso de aprendizaje no supervisado, mientras que el tipo de aprendizaje involucrado en la heteroasociación es de naturaleza supervisada. 3. Clasificación de patrones. En esta tarea de aprendizaje hay un número fijo de categorías (clases) en las que los estímulos están para ser clasificados. Para resolver esto, la red neuronal sufre primero una sesión de entrenamiento durante la cual se le presentan repetidamente un conjunto de patrones de entrada hacia delante con la categoría a la cual pertenece cada patrón. Si aparece un nuevo patrón, la tarea de la red es clasificar este nuevo patrón correctamente. Esta clasificación de patrones es un problema de aprendizaje supervisado. La ventaja de usar una red neuronal para realizar la clasificación de patrones es que puede construir regiones de decisión no lineales entre las diferentes clases de un modo no paramétrico, y por tanto ofrecer un método práctico para resolver problemas altamente complejos de clasificación de patrones. Debe hacerse notar que aquí desempeña un papel muy importante el aprendizaje no supervisado, especialmente cuando no hay un conocimiento previo de las categorías en las que los patrones estímulos están para ser clasificados. En una situación posterior, el aprendizaje no supervisado es usado para llevar a cabo el papel de extracción de características para clasificación de patrones.

4. Predicción.

El tema de la predicción es una de las más básicas y dominantes tareas de aprendizaje. Es un problema de procesamiento temporal de una señal en el que nos dan un conjunto de M muestras pasadas u(n-1), u(n-2), ... , u(n-M) que, normalmente, están uniformemente espaciadas en el tiempo, y el objetivo es predecir la muestra actual x(n). La predicción puede ser resuelta usando el aprendizaje por corrección de error de una manera no supervisada en el sentido de que los ejemplos de entrenamiento son sacados directamente de las series de tiempo en sí mismas. El error de predicción lo podemos calcular de la siguiente manera:

e(n) = u(n) - û(n | n-1, ... , n-M) (3.21)

Cuando este proceso es de naturaleza no lineal, el uso de una red neuronal proporciona

un método poderoso para solucionar el problema de la predicción gracias a las unidades de procesamiento no lineal que forman parte de la red. La única excepción en las unidades de procesamiento no lineal es la unidad de salida de la red, que opera en su región lineal.

Page 41: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

41

5. Control. El control de un proceso es otra tarea de aprendizaje que, naturalmente, corresponde a una red neuronal. Esto no debería ser una sorpresa ya que, después de todo, el cerebro humano es una computadora; las salidas del sistema completo son acciones. Realmente, en el contexto de control, el cerebro está viviendo la prueba de que es posible construir un controlador generalizado que tome ventaja respecto a un hardware distribuido en paralelo, que es capaz de manejar muchos miles de actuadores en paralelo (fibras de los músculos), así como las no linealidades y el ruido. Así, surgió el término neurocontrol para hacer referencia a la clase de controladores que involucran el uso de redes neuronales.

6. Beamforming. Se trata de una especie de filtrado espacial, cuyo propósito es localizar una señal objetivo imbuida en un escenario de interferencia aditiva. En entornos de radar y sónar, esta tarea de aprendizaje se complica, usualmente, por dos factores que describimos a continuación:

· La señal objetivo de interés originada desde una dirección desconocida. · No hay información estadística a priori disponible acerca de la interferencia.

Para poder con una situación de este tipo, tenemos que recurrir al uso de de un array de elementos de antena, diseñados para dirigir el lóbulo principal de su patrón espacial (es decir, la amplitud frente al ángulo) automáticamente hacia el objetivo y, además, colocar nulos en las direcciones desconocidas donde se encuentran las señales interferentes para así poder cancelarlas.

3.5 Adaptación y aprendizaje El espacio es una dimensión fundamental del proceso de aprendizaje; el tiempo es la otra. La naturaleza espacio-temporal del aprendizaje se ejemplifica por medio de las tareas de aprendizaje. Más allá, tanto los animales como los humanos tenemos una capacidad inherente para representar la estructura temporal de la experiencia, la cual permite a un animal adaptarse a su entorno. Cuando una red neuronal opera en un entorno estacionario (es decir, las características estadísticas no cambian con el tiempo), las estadísticas esenciales del entorno pueden, en teoría, ser aprendidas por la red bajo la supervisión de un maestro. En particular, los pesos sinápticos de la red pueden ser computados haciendo que la red se someta a una sesión de entrenamiento con un conjunto de datos que sean representativos del entorno. Una vez que el proceso de entrenamiento ha concluido, los pesos sinápticos de la red deberían captar la estructura estadística subyacente; una vez alcanzado esto, se congelarían los valores obtenidos. Por consiguiente, un sistema de aprendizaje se basa en la memoria para recordar y utiliza experiencias pasadas que luego podrá usar si le es necesario. Frecuentemente, no obstante, el entorno de interés es no estacionario, lo que significa que

Page 42: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

42

los parámetros estadísticos de las señales de información portadoras generadas por el entorno varían con el tiempo. En situaciones de este tipo, los métodos tradicionales de aprendizaje supervisado pueden ser inadecuados, ya que la red no está equipada con los medios necesarios para captar las variaciones estadísticas del entorno en que actúa. Para mejorar estos defectos, la red tiene que ser capaz de adaptar contínuamente sus parámetros libres a variaciones en las señales entrantes en tiempo real. Por tanto, un sistema adaptativo responde a cada entrada distinta como uno nuevo. Dada esta capacidad, podemos argumentar que cuando actuamos en un entorno no estacionario, cuanto más adaptativo lo hagamos, siempre de una manera controlada, más probable será que opere mejor. Entonces, ¿cómo puede una red neuronal adaptar su entorno a la estructura temporal de las señales de entrada en su espacio de comportamiento? Esto se puede ver en la siguiente figura, en la que se muestra la disposición estructural de un nivel simple de procesamiento neuronal que puede ser usado para proporcionar esta adaptación. En esta figura, el elemento denominado 'modelo' actúa como un predictor en el sentido de que usa la experiencia obtenida previamente en el curso del tiempo para determinar lo que sucede

Figura 3.5 Diagrama de bloques de un sistema adaptativo

realmente. En particular, el modelo, basado en valores pasados de la señal de entrada determinados por el vector x(n-1) y por los parámetros de la red medidos en el instante n-1, proporciona un estimador (n)x del vector de entrada actual x(n) en el instante n (x(n) suele ser diferente de (n)x ). El comparador de la figura (3.5) mide la diferencia entre estos valores. Esta señal de diferencia, denotada por e(n), se denomina innovación y representa la nueva información contenida en la señal de entrada x(n) en el instante de medida. Si la innovación es cero, no se produce nueva información en el sentido de que el modelo ya conoce lo que iba a ocurrir y, por tanto, no es necesario cambiar. Si, por el contrario, la innovación no es cero, ha ocurrido un evento inesperado y el sistema debería intentar captarlo. La innovación es explotada de dos formas:

1. La innovación e(n) suministra una señal de corrección aplicada al modelo, obligándole

Comparador

Modelo

z-1I

x(n-1) Predicción

(n)

Matriz unidad de

retraso

Señal de entrada x(n)

Señal de salida

Señal de corrección

e(n)

Page 43: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

43

a ajustar sus parámetros libres y, por lo tanto, aprender lo que está ocurriendo en el entorno circundante. El aprendizaje descrito en la figura (3.5) es llevado a cabo por medio de la adaptación realimentada desde el comparador al modelo.

2. La innovación e(n) está disponible como salida para subir al siguiente nivel en el procesamiento neuronal. Repitiendo esta operación pasando de nivel a nivel, la información procesada tiende a ser de una calidad progresivamente más alta, ya que cada nivel neuronal procesa sólo la información que no puede ser procesada por los niveles inferiores.

Así pues, podemos construir una estructura temporal dentro del diseño de una red neuronal

haciendo que la red se someta a un entrenamiento continuo con ejemplos ordenados en el tiempo; según este planteamiento, una red neuronal es vista como un filtro adaptativo no lineal que representa una generalización de los filtros adaptativos lineales. Alternativamente, una estructura temporal puede ser aprendida extendiendo métodos tradicionales de aprendizaje supervisado. 4. El perceptrón 4.1 Introducción El perceptrón es la forma más simple de una red neuronal usada para la clasificación de un tipo especial de patrones, los linealmente separables (es decir, patrones que se encuentran a ambos lados de un hiperplano). Básicamente, consiste de una neurona con pesos sinápticos y umbral ajustables, como se muestra en la figura (4.1). El algoritmo usado para ajustar los parámetros libres de esta red neuronal apareció por primera vez en un procedimiento de aprendizaje desarrollado por Rosenblatt (1958) para su modelo de perceptrón del cerebro. En realidad, Rosenblatt demostró que si los patrones usados para entrenar el perceptrón son sacados de dos clases linealmente separables, entonces el algoritmo del perceptrón converge y toma como superficie de decisión un hiperplano entre estas dos clases. La prueba de convergencia del algoritmo es conocida como el teorema de convergencia del perceptrón.

Figura 4.1 Representación gráfica de un perceptrón de una sola neurona El perceptrón de una capa descrito en la figura (4.1) tiene sólo una neurona. Dicho perceptrón está limitado a realizar clasificación de patrones con sólo dos clases. Expandiendo la capa de salida del perceptrón para incluir más que una neurona, podemos realizar dicha

x1

x2

xp Umbral �

Salida y Entradas

· · ·

Page 44: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

44

clasificación con más de dos clases. Sin embargo, las clases tendrían que ser linealmente separables para que el perceptrón trabaje correctamente. 4.2 Consideraciones básicas

Como ya hemos visto, el modelo de una neurona consiste en un combinador lineal seguido de un limitador. Este modelo se puede ver en la figura (4.2). El nodo suma del mismo mide una combinación lineal de las entradas aplicadas a sus sinapsis y, además, representa un umbral aplicado externamente. La suma resultante es aplicada a un limitador. Así, de acuerdo a esto, la neurona produce una salida igual a +1 si la entrada del limitador es positiva, y -1 si es negativa.

Figura 4.2 Modelo de un perceptrón simple

En la figura anterior, los pesos sinápticos son denotados por w1, w2, ... , wp. Asimismo, las entradas aplicadas al perceptrón son denotadas por x1, x2, ... , xp. El umbral externo es �. Del modelo de la figura (4.2) podemos ver que la salida del combinador lineal (es decir, la entrada del limitador) es la siguiente:

v = �=

p

i 1

wixi – � (4.1)

El propósito del perceptrón es clasificar un conjunto de estímulos aplicados externamente x1, x2, ... , xp en una de dos clases, llamadas �1 o �2: La regla de decisión para la clasificación es asignar el punto representado por las entradas x1, x2, ... , xp a la clase �1 si la salida del perceptrón es +1 y a la clase �2 si es -1. Para adquirir capacidad de penetración en el comportamiento de un clasificador de patrones, es frecuente dibujar un mapa de las regiones de decisión en el espacio de señal p-dimensional abarcado por las p variables de entrada x1, x2, ... , xp. En el caso de un perceptrón

Page 45: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

45

elemental, hay dos regiones de decisión separadas por un hiperplano, el cual está definido por la siguiente ecuación:

�=

p

i 1

wixi - � = 0 (4.2)

Esto se muestra en la figura (4.3) para el caso de dos variables de entrada x1 y x2, para las que la región de decisión toma la forma de una línea recta. Un punto (x1,x2) que se encuentre por encima de la línea divisoria se asigna a la clase �1, y un punto (x1,x2) que se encuentre por debajo de dicha línea se asigna a la clase �2. Notemos, asimismo, que el efecto del umbral � es desplazar la región de decisión del origen.

Figura 4.3 Regiones de decisión de un problema de clasificación de patrones de dos clases

Los pesos sinápticos w1, w2, ... , wp del perceptrón pueden ser fijados o adaptados iteración tras iteración. Para la adaptación, podemos usar una regla de corrección de error conocida como algoritmo de convergencia del perceptrón. 4.3 Teorema de convergencia del perceptrón Para el desarrollo del algoritmo de aprendizaje por corrección de error para un perceptrón de una capa, encontramos más conveniente trabajar con el modelo descrito en la figura (4.4). En este segundo modelo, el umbral �(n) es tratado como un peso sináptico conectado a una entrada fija e igual a -1. Así pues, podemos definir el vector de entrada como x(n) = [-1, x1(n), x2(n), ... , xp(n)]T (4.3)

Page 46: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

46

Figura 4.4 Modelo de un perceptrón simple con una entrada fija

Asimismo, definimos el vector de pesos como w(n) = [�(n), w1(n), w2(n), ... , wp(n)]T (4.4)

De este modo, la salida del combinador lineal puede ser escrita de forma compacta, como se muestra en la siguiente ecuación:

v(n) = wT(n)x(n) (4.5) Dado un n fijado, la ecuación wTx = 0, representada en un espacio p-dimensional de coordenadas x1, x2, ... , xp, define un hiperplano como superficie de decisión entre dos clases diferentes de entradas. Suponemos, entonces, que las variables de entrada del perceptrón de una capa originan dos clases linealmente separables a ambos lados de un hiperplano. Denotamos por X1 al subconjunto de vectores de entrenamiento x1(1), x1(2), ... que pertenecen a la clase �1, y por X2 al subconjunto de de vectores de entrenamiento x2(1), x2(2), ... que pertenecen a la clase �2. La unión de X1 y X2 da el conjunto completo de entrenamiento X. Dados los paquetes de entrenamiento X1 y X2 para entrenar al clasificador, el proceso de entrenamiento involucra el ajuste del vector de pesos w de forma que las dos clases �1 y �2 sean separables. Esas dos clases se dice que son linealmente separables si existe un vector de pesos sinápticos w realizable. A la inversa, si se sabe que las dos clases �1 y �2 son linealmente separables, entonces existe un vector de pesos w tal que cumple con las siguientes expresiones:

Page 47: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

47

wT(n)x(n) � 0 para cada vector de entrada x que pertenezca a la clase �1 y (4.6)

wT(n)x(n) < 0 para cada vector de entrada x que pertenezca a la clase �2

Dados los subconjuntos de entrenamiento X1 y X2, el problema de entrenamiento del

perceptrón elemental (de una sola capa) es, por lo tanto, encontrar un vector de pesos w tal que satisfaga las dos inecuaciones anteriores. El algoritmo para adaptar el vector de pesos del perceptrón elemental puede ser formulado ahora como sigue:

1. Si el enésimo elemento del vector de entrenamiento x(n) es clasificado correctamente por el vector de pesos w(n) calculado en la enésima iteración del algoritmo, no se lleva a cabo ninguna corrección del vector de pesos del perceptrón, como se muestra a continuación:

w(n+1) = w(n) si wT(n)x(n) � 0 y x(n) que pertenezca a la clase �1 y (4.7)

w(n+1) = w(n) si wT(n)x(n) < 0 y x(n) que pertenezca a la clase �2

2. Por otro lado, el vector de pesos del perceptrón se actualiza de acuerdo a la regla siguiente:

w(n+1) = w(n) – �(n)x(n) si wT(n)x(n) � 0 y x(n) que pertenezca a la clase �2 y (4.8)

w(n+1) = w(n) + �(n)x(n) si wT(n)x(n) < 0 y x(n) que pertenezca a la clase �1

donde el parámetro tasa de aprendizaje �(n) controla el ajuste aplicado al vector de pesos en la iteración n.

Si �(n) = � > 0, donde � es una constante independiente del número de iteración n, tenemos una regla de adaptación de incremento fijo para el perceptrón. A continuación, primero probamos la convergencia de una regla de adaptación de incremento fijo en la que � = 1. Claramente, el valor de n no es importante, sino que lo importante es que sea un valor positivo. Un valor de � � 1simplemente escala los vectores de patrones sin afectar a su separabilidad. La prueba se presenta para la condición inicial w(0) = 0. Suponemos que wT(n)x(n) < 0 para n = 1, 2, … y un vector de entrada x(n) que pertenece al subconjunto X1. Esto es, el perceptrón

Page 48: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

48

clasifica incorrectamente a los vectores x(1), x(2), … , desde que la segunda condición de la ecuación (4.6) es violada. Entonces, con la constante �(n) = 1, nosotros podemos usar la segunda línea de la ecuación (4.8) para escribir

w(n+1) = w(n) + x(n) si x(n) pertenece a la clase �1 (4.9)

Dada la condición inicial w(0) = 0, podemos resolver iterativamente esta ecuación para w(n+1), obteniendo el siguiente resultado:

w(n+1) = x(1) + x(2) + … + x(n) (4.10)

Desde que se asume que las clases �1 y �2 son linealmente separables, existe una solución wo para la que wT(n)x(n) > 0 para los vectores x(1), x(2), … , x(n) pertenecientes al subconjunto X1. Para una solución fija wo, podemos definir un número positivo � mediante la relación:

� = min x(n) X1 woT(n)x(n) (4.11)

Así, multiplicando ambos lados de la ecuación (4.10) por el vector fila woT, obtenemos la siguiente expresión: woT w(n+1) = woT x(1) + woT x(2) + … + woT x(n) (4.12)

De acuerdo a esto, y en base a la definición dada en la ecuación (4.11), tenemos la expresión siguiente:

woT w(n+1) � n� (4.13) A continuación podemos hacer uso de una inecuación conocida como inecuación de Cauchy-Schwarz. Dados dos vectores wo y w(n+1), esta inecuación dice que ||wo||2||w(n+1)||2 � [woT w(n+1)]2 (4.14)

donde ||·|| denota la norma Euclídea y woT w(n+1) es un escalar. Notamos que, viendo la ecuación (4.13), [woT w(n+1)]2 puede ser sustituido por n�2, manteniéndose el cumplimiento de la inecuación, y quedando: ||wo||2||w(n+1)||2 � n�2 (4.15) o, equivalentemente,

Page 49: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

49

n�2 ||w(n+1)||2 � (4.16)

||wo||2

Ahora seguimos por otro camino. En particular, rescribimos la ecuación (3.9) de la siguiente forma:

w(k+1) = w(k) +x(k) para k = 1, ... , n y x(k) perteneciente a X1 (4.17) Así, tomando la norma Euclídea a ambos lados de la ecuación (4.17), conseguimos ||w(k+1)||2 = ||w(k)||2 + ||x(k)||2 + 2wT(k)x(k) (4.18) Pero, bajo la suposición de que el perceptrón clasifica incorrectamente un vector de entrada x(k) que pertenece al subconjunto X1, tenemos que wT(k)x(k) < 0. Por tanto, deducimos de la ecuación (4.18) que

||w(k+1)||2 � ||w(k)||2 + ||x(k)||2 (4.19) o, equivalentemente

||w(k+1)||2 - ||w(k)||2 � ||x(k)||2 para k = 1, ... , n (4.20) Añadiendo esas inecuaciones para k = 1, ... , n, y sumando la condición inicial w(0) = 0, obtenemos la siguiente condición:

||w(k+1)||2 � �=

n

k 1

||x(k)||2 � n� (4.21)

donde � es un número positivo definido por � = max x(k) X1 ||x(k)||2 (4.22) La ecuación (4.21) dice que la norma Euclídea cuadrada del vector de pesos w(n+1) crece mucho con el número de iteraciones n. Claramente, el segundo resultado de la ecuación (4.21) está en conflicto con el resultado de

Page 50: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

50

la ecuación (4.16) para valores lo suficientemente grandes de n. En realidad, podemos decir que n no puede ser mayor que un valor nmax para el que las ecuaciones (4.16) y (4.21) se satisfacen con el signo de la igualdad. Esto es, nmax es la solución de la ecuación n2

max�2

nmax � = (4.23)

||wo||2 Resolviendo nmax para un vector solución wo, encontramos que � ||wo||2 nmax = (4.24) �2 Hemos demostrado, por tanto, que para �(n) = 1 y w(0) = 0, y suponiendo que existe una solución wo, la regla para adaptar los pesos sinápticos que conectan las unidades asociativas a la unidad de respuesta del perceptrón debe terminar tras, como mucho, n iteraciones. Notemos que en las ecuaciones (4.11), (4.22) y (4.23) no hay una única solución para wo o nmax. Ahora podemos enunciar el teorema de convergencia de incremento fijo para un perceptrón de una capa como sigue:

Sean los subconjuntos de entrenamiento X1 y X2 linealmente separables. Sean las entradas presentadas al perceptrón las originadas por esos subconjuntos. El perceptrón converge tras no iteraciones, en el sentido de que

w(no) = w(no+1) = w(no+2) = ... (4.25)

es un vector solución para no nmax. Consideramos a continuación el procedimiento de corrección de error para la adaptación de un perceptrón de una sola capa, para el que �(n) es variable. En particular, dejamos que �(n) sea el menor entero para el que

�(n)xT(n)x(n) > |wT(n)x(n)| (4.26) Con este procedimiento vemos que el producto escalar wT(n)x(n) en la iteración n tiene un signo incorrecto, por lo que wT(n+1)x(n) tendría el signo correcto. Esto sugiere que si wT(n)x(n) tiene un signo incorrecto, podemos modificar la secuencia de entrenamiento en la iteración n+1 haciendo x(n+1) = x(n). En otras palabras, cada patrón es presentado repetidamente al perceptrón hasta que el patrón es clasificado correctamente.

Page 51: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

51

Hay que hacer notar también el uso de un valor inicial w(0) diferente de la condición nula simplemente conllevará un aumento o decremento en el número de iteraciones requeridas para alcanzar la convergencia, dependiendo de cómo se relaciona w(0) con wo. 4.3.1 Resumen del algoritmo de convergencia del perceptrón · Variables y parámetros: x(n) = [-1, x1(n), x2(n), ... , xp(n)]T es el vector de entradas w(n) = [�(n), w1(n), w2(n), ... , wp(n)]T es el vector de pesos �(n) es el umbral y(n) es la respuesta actual d(n) es la respuesta deseada n es el parámetro tasa de aprendizaje, una constante positiva menor que la unidad · Paso 1: inicialización

Hacemos w(0) = 0 y se llevan a cabo los siguientes cálculos en los instantes de tiempo n = 1, 2, ...

· Paso 2: activación En el instante de tiempo n, se activa el perceptrón aplicando el vector de entrada x(n) y l la respuesta deseada d(n). · Paso 3: cálculo de la respuesta actual Se calcula la respuesta actual del perceptrón: y(n) = sgn[wT(n)x(n)] (4.27) donde sgn(n) es la función signo (vale +1 si n > 0, y -1 si n < 0). · Paso 4: adaptación del vector de pesos Se actualiza el vector de pesos del perceptrón: w(n+1) = w(n) + n[d(n) - y(n)]x(n) (4.28) donde

+1 si x(n) pertenece a la clase �1

d(n) = (4.29) -1 si x(n) pertenece a la clase �2

Page 52: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

52

· Paso 5: Se incrementa n en una unidad y se vuelve al paso 2.

Como podemos ver, la adaptación del vector de pesos w(n) es realizada en forma de regla de aprendizaje corrección de error, como se muestra en la figura (4.25), en la que � es el parámetro tasa de aprendizaje (parámetro que es positivo y que varía de 0 a 1) y la diferencia d(n) - y(n) juega el papel de señal de error. A la hora de asignar un valor a � dentro de su rango de validez, hay que tener en cuenta dos cosas: - Un promediado de las entradas pasadas para proporcionar estimaciones de pesos estables, las cuales requieren una � pequeña. - Una rápida adaptación con respecto a cambios reales en las distribuciones subyacentes del proceso responsable de la generación del vector de entrada x, la cual requiere una � grande. 4.4 Medida del rendimiento En la sección anterior hemos desarrollado el algoritmo de convergencia del perceptrón sin ninguna referencia a la medida del rendimiento. ¿Cuál es una medida adecuada del rendimiento para un perceptrón de una sola capa? Una elección lógica sería la probabilidad media de clasificación de error, que se define como la probabilidad media de que e perceptrón tome una decisión en favor de una clase particular cuando el vector de entrada es sacado de la otra clase. Desafortunadamente, dicha medida no deriva analíticamente a un algoritmo de aprendizaje. Shynk (1990) propuso el uso de una función de rendimiento que corresponde a la operación de un perceptrón, mostrada como una esperanza matemática

J = -E[e(n)v(n)] (4.30) donde e(n) es la señal de error definida como la diferencia entre la respuesta deseada d(n) y la respuesta actual y(n) del perceptrón, y v(n) es la salida del combinador lineal. Nótese que la señal de error e(n) no es una señal cuantizada, sino que se trata de la diferencia de dos señales cuantizadas. El estimador instantáneo de la función de rendimiento es la función variante con el tiempo siguiente:

(n) = -e(n)v(n) = -[d(n) - y(n)]v(n) (4.31) El vector gradiente instantáneo se define como la derivada del estimador (n) con respecto al vector de pesos w(n), como se muestra aquí:

∇ w (n) = )()(J

nwn

(4.32)

Page 53: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

53

De este modo, reconociendo que la respuesta deseada d(n) es independiente de w(n) y el hecho de que la respuesta actual y(n) tenga un valor constante igual a -1 o a +1, podemos ver que, usando la ecuación (4.31) en la (4.32), obtenemos

∇ w (n) = -[d(n) - y(n)] )()(

nwnv

∂∂

(4.33)

Ya vimos que v(n) = wT(n)x(n), por lo que llegamos a

)()(

nwnv

∂∂

= x(n) (4.34)

Así pues, el uso de la ecuación (4.34) en la (4.33) da como resultado

∇ w (n) = -[d(n) - y(n)]x(n) (4.35) De este modo, de acuerdo a la regla de corrección de error ya descrita, podemos expresar el cambio aplicado al vector de pesos como

�w(n) = -�∇ w (n) = �[d(n) - y(n)]x(n) (4.36) donde n es el parámetro tasa de aprendizaje. Ésta es precisamente la corrección hecha al vector de pesos cuando pasamos de la iteración n a la n+1. De esta forma, acabamos de demostrar que la función de rendimiento instantáneo (n) es, en realidad, la medida de rendimiento correcta para un perceptrón de una sola capa. 5. El perceptrón multicapa 5.1 Introducción Aquí vamos a estudiar las redes multicapa con realimentación hacia atrás. Típicamente, este tipo de redes consisten en un conjunto de nodos fuente que constituyen la capa de entrada, una o más capas ocultas de nodos de computación, y una capa de salida también de nodos de computación. La señal de entrada se propaga hacia adelante a través de la red capa a capa. Estas redes neuronales se conocen habitualmente como perceptrones multicapa (MLPs: Multiplayer Perceptrons), y representan una generalización del perceptrón simple de una sola capa visto en anteriormente. Vemos en la figura (5.1) la representación genérica de un perceptrón multicapa.

Page 54: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

54

Figura 5.1 Perceptrón multicapa completamente conectado

Los perceptrones multicapa han sido aplicados satisfactoriamente para solucionar alguna dificultad y diversos problemas entrenándolos de una manera supervisada con un algoritmo muy popular conocido como algoritmo del error de la propagación hacia atrás. Este algoritmo se basa en la regla de aprendizaje por corrección de error. Básicamente, el algoritmo aquí reseñado consta de dos pasadas a través de las diferentes capas de la red: una pasada hacia adelante y otra hacia atrás. En la pasada hacia adelante, se aplica un vector de entrada a los nodos fuente de la red, y su efecto se propaga a través de la red, capa a capa. Finalmente, aparece un conjunto de salidas que constituyen la respuesta actual de la red. Durante la pasada hacia adelante, se fijan todos los pesos sinápticos de la red. Por otro lado, durante la pasada hacia atrás, los pesos sinápticos se ajustan de acuerdo a la regla de aprendizaje por corrección de error. De este modo, para conseguir la señal de error se resta la respuesta actual de la red a la deseada. Esta señal de error se propaga luego hacia atrás por la red, en dirección opuesta a la de las conexiones sinápticas. Los pesos sinápticos se ajustan, de esta forma, para así conseguir acercar lo más posible la respuesta actual de la red a la respuesta deseada. Un perceptrón multicapa tiene tres características distintivas:

1. El modelo de cada neurona de la red incluye una no linealidad en la salida final. El punto importante a enfatizar aquí es que la no linealidad es suave (es decir, diferenciable). Una forma comúnmente usada de que la no linealidad satisfaga este requerimiento es el uso de una no linealidad sigmoidal definida por la siguiente función:

yj = )exp(1

1jv−+

(5.1)

donde yj es la salida de la neurona, y vj es el nivel de actividad interno de la neurona j. La presencia de no linealidades es importante porque, de otro modo, la relación entrada-salida

Capa de entrada

Primera capa oculta

Segunda capa oculta

Capa de salida

Page 55: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

55

de la red podría reducirse a la de un perceptrón de una sola capa. Además, el uso de la función descrita en (5.1) tiene motivaciones biológicas.

2. La red contiene una o más capas ocultas que no forman parte de la entrada o salida de la red. Estas capas ocultas activan la red para que aprenda tareas complejas extrayendo más características significativas de los patrones de entrada.

3. La red exhibe un alto grado de conectividad, determinada por las sinapsis de la red. Un cambio en la conectividad de la red requiere un cambio en las conexiones sinápticas o en sus pesos.

De hecho, es la combinación de estas características con la habilidad de la red para aprender de la experiencia a través del entrenamiento lo que hace que el perceptrón multicapa posea tanto poder de cálculo. Estas mismas características, sin embargo, son también responsables de las deficiencias en nuestro actual conocimiento del comportamiento de la red. En primer lugar, la presencia de una forma distribuida de no linealidad y la alta conectividad de la red hace que el análisis teórico del perceptrón sea muy difícil de entender. Y en segundo lugar, el uso de capas ocultas hace que el proceso de aprendizaje sea complejo de visualizar. Implícitamente, el proceso de aprendizaje debe decidir qué características del patrón de entrada deben ser representadas por las neuronas ocultas. El proceso de aprendizaje es, por lo tanto, más difícil de realizar debido a que la búsqueda ha de dirigirse a un espacio mucho más grande de posibles funciones, y ha de tomar una decisión entre las alternativas representaciones del patrón de entrada. 5.2 Algoritmo Backpropagation La señal de error de la neurona j en el instante n se define por

ej(n) = dj(n) - yj(n), siendo la neurona j el nodo de salida (5.2)

Definimos el valor instantáneo del error cuadrático para la neurona j como ½ ej2(n). De esta forma, el valor instantáneo �(n) de la suma de errores cuadráticos es obtenido sumando ½ ej2(n) para todas las neuronas de la capa de salida; éstas son las únicas neuronas para las que las señales de error pueden ser calculadas. La suma instantánea de errores cuadráticos de la red es escrita, por tanto, como

�(n) = ½�∈Cj

ej2(n) (5.3)

donde el conjunto C incluye a todas las neuronas de la capa de salida de la red. Denotamos por N al número total de patrones (ejemplos) contenidos en el paquete de entrenamiento. El error cuadrático medio se obtiene sumando �(n) para todo n y luego normalizando con respecto al paquete de tamaño N, como mostramos a continuación:

Page 56: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

56

�av(n) = N1�=

N

n 1

�(n) (5.4)

La suma instantánea de errores cuadráticos �(n) y, por lo tanto, el error cuadrático medio �av, es una función de todos los parámetros libres (es decir, pesos sinápticos y umbrales) de la red. Para un conjunto de entrenamiento dado, �av representa la función de coste como medida del rendimiento del aprendizaje para el paquete de entrenamiento. El objetivo del proceso de aprendizaje es ajustar los parámetros libres e la red para así poder minimizar av. Para llevar a cabo esta minimización, consideramos un método sencillo de entrenamiento en el que los pesos son ajustados patrón a patrón. Los ajustes de los pesos se realizan según los respectivos errores calculados para cada patrón presentado a la red. La media aritmética de estos cambios ocurridos en los pesos es, por lo tanto, una estimación del verdadero cambio que podría resultar de modificar los pesos basándonos en la minimización de la función de coste �av sobre el paquete de entrenamiento completo. Consideramos la figura (5.2), la cual describe a la neurona j siendo alimentada por un conjunto de señales producidas por una capa de neuronas situada a su izquierda. El nivel de actividad interno vj(n) producido en la entrada de la no linealidad asociada con la neurona j es, por lo tanto, el siguiente:

vj(n) = �=

p

i 0

wji(n)yi(n) (5.5)

donde p es el número total de entradas (excluyendo el umbral) aplicadas a la neurona j. El peso sináptico wjo (correspondiente a la entrada fija yo = -1) equivale al umbral �j aplicado a la neurona j. De aquí que la señal yj(n) que aparece en la salida de la neurona j en la iteración n sea

yj(n) = �j(vj(n)) (5.6) El algoritmo backpropagation aplica una corrección �wji(n) al peso sináptico wji(n) que es proporcional al gradiente instantáneo. Según la regla de la cadena, podemos expresar este gradiente como sigue:

)(

)(nw

n�ji

= )(

(n)ne

j )()(

nyne

j

j

∂∂

)()(

nvny

j

j

∂∂

)()(

nwnv

ji

j

∂∂

(5.7)

El gradiente �/�wji(n) representa un factor que determina la dirección de búsqueda en el espacio de pesos para el peso sináptico wji. Derivando ambos lados de la ecuación (5.3) respecto a ej(n), obtenemos

)(

(n)ne

j= ej(n) (5.8)

Page 57: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

57

Derivando ahora a ambos lados de (5.2) respecto a yj(n), obtenemos

)()(

nyne

j

j

∂∂

= -1 (5.9)

Ahora, derivando la ecuación (5.6) respecto a vj(n), obtenemos

)()(

nvny

j

j

∂∂

= �j’(vj(n)) (5.10)

donde el uso de prima (‘) significa diferenciación respecto al argumento que está entre paréntesis. Finalmente, derivando la (5.5) respecto a wji(n), queda

)()(

nwnv

ji

j

∂∂

= yi(n) (5.11)

De este modo, usando las ecuaciones que van de la (5.8) a (5.11) en (5.7), obtenemos la siguiente expresión:

)(

)(nw

n�ji

= -ej(n)�j’(vj(n))yi(n) (5.12)

La corrección wji(n) aplicada a wji(n) está definida por la regla de la delta como sigue:

�wji(n) = -�)(

)(nw

n�ji

(5.13)

donde � es una constante que determina la tasa de aprendizaje; es llamada parámetro de tasa de aprendizaje del algoritmo backpropagation. El uso del signo menos en la ecuación (5.13) representa al gradiente descendente en el espacio de pesos. Por tanto, usando la ecuación (5.12) en la (5.13) se obtiene

�wji(n) = ��j(n)yi(n) (5.14) donde el gradiente local �j(n) se define como

�j(n) = -)(

(n)ne

j )()(

nyne

j

j

∂∂

)()(

nvny

j

j

∂∂

= ej(n)�j’(vj(n)) (5.15)

Page 58: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

58

Los puntos del gradiente local requieren cambios en los pesos sinápticos. De acuerdo a la ecuación (5.15), el gradiente local �j(n) para la neurona de salida j es igual al producto de la correspondiente señal de error ej(n) y la derivada de la función de activación asociada (�j’(vj(n)). En las ecuaciones (5.13) y (5.14) vemos que un factor clave en el cálculo del ajuste de peso �wji(n) es la señal de error ej(n) en la salida de la neurona j. En este contexto, podemos identificar dos casos distintos dependiendo de dónde esté localizada la neurona j. · Caso 1: la neurona j es un nodo de salida

Cuando la neurona j se encuentra en la capa de salida de la red, se le debería suministrar una respuesta deseada. Aquí podemos usar la ecuación (5.2) para calcular la señal de error ej(n) asociada con esta neurona. Una vez determinada ej(n), tenemos sólo un problema de cálculo del gradiente local �j(n) (usando la ecuación (5.15)). · Caso 2: la neurona j es un nodo oculto Cuando la neurona j se encuentra en una capa oculta de la red, no se especifica respuesta deseada para esta neurona. De este modo, la señal de error para una neurona oculta tendría que ser determinada recursivamente en términos de las señales de error de todas las neuronas a las que esa neurona oculta está directamente conectada; aquí es donde se complica el desarrollo del algoritmo backpropagation. Consideramos la situación descrita en la figura (5.2), que muestra la neurona j como un nodo oculto de la red. De acuerdo a la ecuación (5.15), podemos redefinir el gradiente local �j(n) para la neurona j como

�j(n) = -)(

(n)ny

j )()(

nvny

j

j= -

)(y(n)n

j �’(vj(n)) (5.16)

donde hemos hecho uso de la ecuación (5.10). Para calcular la derivada parcial �/�yi(n), podemos proceder como sigue. En la figura (5.2) siguiente vemos que

(n) = ½ � Ck

ek2(n) (5.17)

que es la ecuación (5.3) escrita de nuevo salvo por el uso del índice k en lugar del índice j (así se evita confusión a la hora de usar el índice j, el cual se refiere a la neurona oculta). En cualquier caso, derivando la ecuación (5.17) con respecto a yj(n), obtenemos

)(

(n)ny

j =

k

ek(n))()(

nyne

j

k (5.18)

A continuación, usamos la regla de la cadena para la derivada parcial �/�yi(n), y así podemos escribir la ecuación (5.18) de forma equivalente como

Page 59: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

59

)(

(n)ny

j =

k

ek(n))()(

nvne

k

k

)()(

nynv

j

k (5.19)

No obstante, de la figura (5.2), notamos que

ek(n) = dk(n) – yk(n) = dk(n) - �k(vk(n)) siendo la neurona k un nodo de salida (5.20)

Figura 5.2 Gráfica donde se muestra la neurona de salida k conectada a la neurona oculta j

De aquí,

)()(

nvne

k

k= -�k’(vk(n)) (5.21)

También podemos apreciar en la figura (5.2) que, para la neurona k, el nivel de actividad interno de la red es

vk(n) =0=

q

j

wkj(n)yj(n) (5.22)

dk(n)

ek(n) yk(n) vk(n) vj(n) yj(n)

�(·) -1 �(·)

wkj(n) wji(n) yi(n)

y0=-1

wj0(n) = �j(n)

Neurona j Neurona k

Page 60: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

60

donde q es el número total de entradas (excluyendo el umbral) aplicadas a la neurona k. Aquí, de nuevo, el peso sináptico wko(n) es igual al umbral aplicado a la neurona k, y la correspondiente entrada yo está fijada al valor -1. En cualquier caso, derivando la ecuación (5.22) con respecto a yj(n) queda

)()(

nynv

j

k= wkj(n) (5.23)

Así pues, usando las ecuaciones (5.21) y (5.23) en (5.19), obtenemos la derivada parcial deseada:

)(

(n)ny

j = -

k

ek(n)�k’(vk(n))wkj(n) = -k

�k(n)wkj(n) (5.24)

donde hemos usado la definición de gradiente local dada en la ecuación (5.15).

Finalmente, usando la ecuación (5.24) en la (5.14), obtenemos el gradiente local �j(n) para la neurona oculta j como sigue:

�j(n) = �j’(vj(n)) k

�k(n)wkj(n) donde la neurona j es oculta (5.25)

El factor �j’(vj(n)) envuelto en el cálculo del gradiente local �j(n) en la ecuación (5.25) depende únicamente de la función de activación asociada a la neurona j. El factor restante involucrado en este cálculo depende de dos conjuntos de términos. El primer conjunto de ellos, el �j(n), requiere conocimiento de las señales de error ek(n) para todas las neuronas que se encuentran en la capa situada inmediatamente a la derecha de la capa de la neurona oculta j, y que están conectadas directamente a la neurona j. El segundo conjunto de términos, el wkj(n), contiene los pesos sinápticos asociados con todas esas conexiones. Podemos ahora resumir las relaciones que hemos obtenido del algoritmo backpropagation.

En primer lugar, la corrección �wji(n) aplicada a los pesos sinápticos que conectan la neurona i con la j se define por medio de la regla de la delta:

Page 61: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

61

En segundo lugar, el gradiente local �j(n) depende de si la neurona j en un nodo de salida o un nodo oculto:

1. Si la neurona j es un nodo oculto, �j(n) equivale al producto de la derivada �j’(vj(n)) y la señal de error ej(n).

2. Si la neurona j es un nodo oculto, �j(n) equivale al producto de la derivada �j’(vj(n)) y la suma pesada de los �’s calculados para las neuronas de la siguiente capa oculta o de la capa de salida que está conectada a la neurona j.

5.2.1 Las dos pasadas del cálculo Al aplicar el algoritmo backpropagation, se pueden distinguir dos pasadas de cálculo. La

primera pasada se conoce como pasada hacia delante y la segunda como pasada hacia atrás. En la pasada hacia delante, los pesos sinápticos se mantienen inalterados a través de la red,

y las señales funcionales de la red son calculadas neurona a neurona. De este modo, la señal funcional que aparece en la salida de la neurona j es calculada como

yj(n) = �j(vj(n)) (5.27) donde vj(n) es el nivel de actividad interno de la red, definido por

vj(n) = 0=

p

i

wji(n)yj(n) (5.28)

donde p es el número total de entradas (incluyendo el umbral) aplicadas a la neurona j, yi(n) es la señal de entrada a la neurona j o, equivalentemente, la señal funcional que aparece en la salida de la neurona i, y wji(n) es el peso sináptico que conecta la neurona i a la neurona j. Si la neurona j está en la primera capa oculta de la red, entonces el índice i se refiere a la i-ésima entrada de la red, para la que podemos escribir lo siguiente:

yi(n) = xi(n) (5.29) donde xi(n) es el i-ésimo elemento del vector de entrada. Si, por el contrario, la neurona j está en la capa de salida de la red, el índice j se refiere al j-ésimo término de salida de la red, para el que podemos escribir que

yj(n) = oj(n) (5.30)

Page 62: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

62

donde oj(n) es el j-ésimo elemento del vector de salida. Esta salida se compara con la respuesta deseada dj(n), obteniendo la señal de error ej(n) para la neurona de salida j-ésima. Así pues, la pasada hacia delante comienza en la primera capa oculta presentando al vector de entrada, y termina en la capa de salida calculando la señal de error para cada neurona de esta capa. La pasada hacia atrás, sin embargo, empieza en la capa de salida pasando la señal de error hacia la izquierda a través de la red, capa a capa, y calcula recursivamente el gradiente local � para cada neurona. Este proceso recursivo permite a los pesos sinápticos de la red cambia de acuerdo a la regla de la delta. Para una neurona localizada en la capa de salida, el gradiente local � es simplemente igual a la señal de error de la neurona multiplicada por la primera derivada de su no linealidad. Dados los �’s de las neuronas de la capa de salida, podemos calcular los �’s de todas las neuronas de la penúltima capa, y así, calcular los cambios de los pesos de todas las conexiones que alimentan a dicha capa. El cálculo recursivo continúa, capa a capa, propagando los cambios de todos los pesos sinápticos realizados.

De este modo, vemos que para la presentación de cada ejemplo de entrenamiento, el patrón de entrada es fijado por medio de un proceso de ida y vuelta, que abarca la pasada hacia delante seguida de la pasada hacia atrás. 5.2.2 La no linealidad sigmoidal

El cálculo del � para cada neurona del perceptrón multicapa requiere del conocimiento de la derivada de la función de activación �(·) asociada con esa neurona. El único requerimiento que debería de satisfacer esta función de activación es que sea continuamente diferenciable. Un ejemplo de una función de activación no lineal continuamente diferenciable comúnmente usada en un perceptrón multicapa es la no linealidad sigmoidal, que es una forma particular de la función logística:

yj(n) = )exp(1

1jv−+

(5.31)

Según esta no linealidad, la amplitud de la salida se encuentra en el rango 0 � yj � 1. Otro tipo de no linealidad sigmoidal es la tangente hiperbólica, la cual es antisimétrica respecto al origen y para la cual el rango de amplitud de la salida es -1 � yj � +1. Centrándonos en la función logística y derivando a ambos lados de la ecuación (5.31) respecto a vj(n), tenemos

)()(

nvny

j

j = �j’(vj(n)) = 2))](exp(- +[1

1nvj

exp(-vj(n)) (5.32)

Usando al ecuación (5.31) para eliminar la exponencial e-vj(n) de la ecuación (5.32), podemos expresar la derivada �j’(vj(n)) como

Page 63: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

63

�j’(vj(n)) = yj(n)[1 - yj(n)] (5.33)

Para una neurona j localizada en la capa de salida, notamos que yj(n) = oj(n). De aquí, podemos expresar el gradiente local para la neurona j como �j(n) = ej(n)�j’(vj(n)) = [dj(n)- oj(n)] oj(n)[1- oj(n)], siendo la neurona j un nodo de salida (5.34) donde oj(n) es la señal funcional de la salida de la neurona j, y dj(n) es la respuesta deseada de la misma. Por otro lado, para una neurona oculta arbitraria j, podemos expresar el gradiente local como sigue:

�j(n) = �j’(vj(n))k

�k(n)wkj(n) = yj(n)[1 - yj(n)]k

�k(n)wkj(n) (5.35)

De la ecuación (5.33) podemos ver que la derivada �j’(vj(n)) tiene un máximo en yj(n) = 0.5 y un mínimo en yj(n) = 0, o yj(n) = 1.0. Como la cantidad de cambio en un peso sináptico de la red es proporcional a la derivada �j’(vj(n)), se sigue que para una función de activación sigmoidal los pesos sinápticos son más cambiados para las neuronas de la red para las que las señales funcionales están en la mitad de su rango. Ésta es la característica del algoritmo backpropagation que contribuye a su estabilidad como algoritmo de aprendizaje. 5.2.3 Tasa de aprendizaje

El algoritmo backpropagation proporciona una aproximación a la trayectoria del espacio de pesos calculada por el método del mayor descenso. Cuanto más pequeño hagamos el parámetro tasa de aprendizaje �, menores serán los cambios en los pesos sinápticos de la red y más suave será la trayectoria en el espacio de pesos. Esta mejora, sin embargo, es obtenida a costa de una tasa de aprendizaje más lenta. Si, por el contrario, hacemos el parámetro tasa de aprendizaje tan grande como para acelerar la tasa de aprendizaje, los grandes cambios resultantes en los pesos sinápticos pueden provocar que la red se haga inestable (es decir, oscilante). Un método sencillo de incrementar la tasa de aprendizaje evitando el peligro de inestabilidad es modificar la regla de la delta de la ecuación (5.14) incluyendo un término, llamado momento, quedando la siguiente expresión:

�wji(n) = ��wji(n-1) + ��j(n)yi(n) (5.36)

donde � es, generalmente, un número positivo llamado constante de momento. Esta constante controla la actuación del lazo de realimentación alrededor de �wji(n), como vemos en la figura (5.3):

Con objeto de ver el efecto de la secuencia de presentaciones de patrones en los pesos sinápticos debido a la constante de momento �, rescribimos la ecuación (5.36) como una serie

Page 64: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

64

temporal de índice t. Así, esta ecuación puede ser vista como una ecuación diferencial de primer orden en la corrección de pesos �wji(n). De aquí que, resolviendo esta ecuación para �wji(n), obtengamos

�wji(n) = �0=

n

t

�n-t �j(t)yi(t) (5.37)

que representa una serie de tiempos de longitud n+1. Si vemos que �j(n)yi(n) = -�(n)/�wji(n) (de las ecuaciones (5.12) y (5.15)), podemos escribir la ecuación anterior (5.37) como

�wji(n) = -�0=

n

t

�n-t

)()(tw

t�ji

(5.38)

Basándonos en esta relación, podemos hacer las siguientes observaciones:

Figura 5.3 Gráfica donde se muestra el efecto de la constante de momento �

1) El ajuste �wji(n) representa la suma de una serie de tiempos pesada exponencialmente. Para que estas series de tiempo sean convergentes, la constante de momento debe estar restringida al rango 0 � |�| < 1. Cuando � es cero, el algoritmo backpropagation opera sin momento. Además, podemos ver que la constante de momento puede ser positiva o negativa, aunque es improbable que se use un � negativo en la práctica.

2) Cuando la derivada parcial �(t)/�wji(t) tiene el mismo signo en iteraciones consecutivas, la suma pesada exponencialmente �wji(n) crece en magnitud, y así el peso wji(n) es ajustado en un grado mayor. Aquí, la inclusión de � hace que el algoritmo se acelere. 3) Cuando la derivada parcial �(t)/�wji(t) tiene signos opuestos en iteraciones consecutivas,

z-1

wji(n-1) wji(n)

�j(n)yj(n)

Page 65: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

65

la suma pesada exponencialmente �wji(n) decrece en magnitud, y así el peso wji(n) es ajustado en un grado menor. Aquí, la inclusión de � hace que el algoritmo tenga un efecto de estabilización en las direcciones en las que oscila el signo.

Por tanto, la incorporación del momento al algoritmo backpropagation representa una

modificación menor en la actualización del peso y, además, puede tener efectos altamente beneficiosos en el comportamiento del algoritmo de aprendizaje. El término momento puede también tener el beneficio de prevenir que el proceso de aprendizaje termine en un mínimo local de la superficie de error.

5.2.4 Modos de entrenamiento

En una aplicación práctica del algoritmo backpropagation, el aprendizaje surge como resultado de muchas presentaciones de un conjunto de ejemplos de entrenamiento al perceptrón multicapa. A una completa presentación de un conjunto de entrenamiento determinado durante el proceso de aprendizaje se le llama época. El proceso de aprendizaje es soportado época a época hasta que los pesos sinápticos y los niveles de umbral de la red se estabilizan y el error cuadrático medio del conjunto de entrenamiento global converge a un mínimo. Resulta aconsejable aleatorizar el orden de presentación de los ejemplos de entrenamiento de una época a la siguiente. Esta aleatorización tiende a hacer que la búsqueda en el espacio de pesos se haga de manera estocástica por ciclos de aprendizaje, evitando así la posibilidad de ciclos en la evolución de los vectores de pesos sinápticos.

Para un conjunto de entrenamiento dado, el aprendizaje backpropagation puede proceder de

una de las dos formas básicas siguientes: 1. Modo patrón.

En el modo patrón del aprendizaje backpropagation, la actualización de los pesos es llevada a cabo después de la presentación de cada ejemplo de entrenamiento; éste es, en realidad, el modo para el cual se ha obtenido este algoritmo. Para ser más específico, consideramos una época que contiene N patrones de entrenamiento mostrados en el orden [x(1),d(1)], … ,[x(N),d(N)]. El primer ejemplo [x(1),d(1)] es presentado a la red, y se realiza la secuencia de cálculos hacia delante y hacia atrás previamente descrita, resultando ciertos ajustes en los pesos sinápticos y umbrales de la red. Luego, se presenta el segundo ejemplo [x(2,d(2)] a la red, y la secuencia de cálculos hacia delante y hacia atrás es repetida, resultando nuevos ajustes en pesos sinápticos y umbrales. Este proceso continúa hasta que el último ejemplo [x(N),d(N)] de la época es presentado. Denotemos por �wji(n) el cambio aplicado al peso sináptico wji(n) después de la presentación del patrón n. Entonces el cambio medio del peso de la red ��ji(n) medido sobre todo el conjunto completo de entrenamiento de N patrones, es dado por

��ji(n) = 1=

1 N

nN�wji(n) = -

N�

1=

N

n )()(

nwn�

ji = -

N�

1=

N

n )()(

)(nwne

neji

jj (5.39)

donde en la segunda y tercera igualdades hemos hecho uso de las ecuaciones (5.11) y (5.3) respectivamente.

Page 66: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

66

2. Modo batch. En español equivaldría a modo por lotes. En este modo de aprendizaje backpropagation,

la actualización de pesos es llevada a cabo después de la presentación de todos los ejemplos de entrenamiento que constituyen una época. Para una época particular, definimos la función de coste como

av = 1= �

2 )(21 N

n Cj

j neN

(5.40)

donde la señal de error ej(n) pertenece a la neurona de salida j para el ejemplo de entrenamiento n. El error ej(n) equivale a la diferencia entre dj(n) e yj(n), que representan el j-ésimo elemento del vector de respuesta deseada d(n) y el correspondiente valor de salida de la red, respectivamente. En la ecuación (5.40) el sumatorio de entrada con respecto a j es llevado a cabo por todas las neuronas de la capa de salida de la red, mientras que el sumatorio de salida con respecto a n es llevado a cabo por el conjunto completo de entrenamiento en la época que tratemos. Para un parámetro tasa de aprendizaje �, el ajuste aplicado al peso sináptico wji, que conecta la neurona i con la j, se define por medio de la regla de la delta como sigue:

�wji(n) = -� ji

av

w�

= -N�

1=

N

n )()(

)(nwne

neji

jj (5.41)

De acuerdo a la ecuación anterior (5.41), en el modo batch, el ajuste de pesos �wji(n) se hace sólo después de que el conjunto completo de entrenamiento haya sido presentado a la red.

Comparando los dos modos explicados, vemos claramente que el ajuste de pesos promedio ��ji(n) realizado en el modo patrón es diferente del correspondiente valor de �wji(n) obtenido en el modo batch, presumiblemente por la reducción en el error cuadrático medio �av que resulta de la presentación del conjunto de entrenamiento completo. En realidad, ��ji(n) para el modo patrón representa una estimación de �wji(n) para el modo batch. Desde un punto de vista operacional, el modo patrón es preferido sobre el modo batch, ya que requiere menos almacenamiento local para cada conexión sináptica. Además, dado que los patrones son presentados a la red de una manera aleatoria, el uso de la actualización de pesos patrón a patrón hace que la búsqueda en el espacio de pesos sea de manera estocástica, lo que hace que sea más probable que el algoritmo backpropagation alcance un mínimo local. Por el contrario, el uso del modo batch proporciona una estimación más adecuada del vector gradiente. En el análisis final, sin embargo, podemos decir que la efectividad de ambos métodos dependerá de la aplicación en uso. 5.2.5 Criterio de parada

En general, no se puede demostrar que el algoritmo backpropagation converja, así como no hay un criterio bien definido para parar su funcionamiento. Sin embargo, sí existen unos criterios

Page 67: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

67

razonables que pueden ser usados para terminar el ajuste de los pesos. Para formular un criterio de este tipo, lo lógico es pensar en términos de propiedades únicas de un mínimo local o global de la superficie de error. Sea el vector de pesos w* un mínimo, local o global. Una condición necesaria para que w* sea un mínimo es que el vector gradiente g(w) de la superficie de error respecto al vector de pesos w sea cero cuando w = w*. De este modo, podemos formular un criterio de convergencia para el aprendizaje backpropagation como sigue:

El algoritmo backpropagation converge si la norma Euclídea del vector gradiente alcanza un gradiente umbral suficientemente pequeño. El inconveniente de este criterio de convergencia es que, para pruebas exitosas, el tiempo de

aprendizaje puede ser elevado. Además, requiere el cálculo del vector gradiente g(w). Otra propiedad única de un mínimo es que podemos usar que la función de coste o medida de error �av(w) es estacionaria en el punto w = w*. Podemos, por lo tanto, sugerir un criterio de convergencia diferente:

El algoritmo backpropagation converge cuando la tasa absoluta de cambio en el error cuadrático medio por época es suficientemente pequeña. Típicamente, se considera que la tasa de cambio del error cuadrático medio es lo

suficientemente pequeña si pertenece al rango que va de 0.1% a 1% por época; algunas veces, se usa un valor tan pequeño como 0.01%. Una variación de este segundo criterio de convergencia del algoritmo aparece para exigir que el máximo valor del error cuadrático medio �av(w) sea menor o igual que un valor umbral suficientemente pequeño. Así, aquí enunciamos el criterio de convergencia de Kramer y Sangiovanni-Vincentelli (1989):

El algoritmo backpropagation se termina en el vector de pesos wfinal cuando ||g(wfinal)|| , donde es un gradiente umbral suficientemente pequeño, o cuando �av(w) �, donde � es un umbral de energía de error suficientemente pequeño.

Otro criterio de convergencia útil es el que sigue. Después de cada iteración en el aprendizaje, la red comprueba su grado de generalización. El proceso de aprendizaje se para cuando el grado de generalización sea adecuado, o cuando parezca que la generalización alcanza su valor máximo. 5.3 Inicialización

El primer paso en el aprendizaje backpropagation es, por supuesto, inicializar la red. Una buena elección para los valores iniciales de los parámetros libres (es decir, pesos sinápticos y umbrales) de la red puede ser de gran ayuda para realizar un diseño de la red satisfactorio. En los casos en los que la información a priori está disponible, puede ser bueno usar esta información a

Page 68: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

68

priori para adivinar los valores iniciales de los parámetros libres. Pero, ¿cómo inicializamos la red si la información a priori no está disponible? En la práctica, damos a todos los parámetros libres de la red números aleatorios que se encuentran uniformemente distribuidos dentro de un pequeño rango de valores.

Una elección errónea de los pesos iniciales puede conducir a un fenómeno conocido como saturación prematura. Este fenómeno se refiere a una situación en la que la suma instantánea de los errores cuadráticos �(n) se mantiene prácticamente constante para un determinado tiempo durante el proceso de aprendizaje. Un fenómeno de esta clase no puede ser considerado como un mínimo local, ya que el error cuadrático continúa disminuyendo una vez que este periodo ha finalizado. Cuando se aplica un patrón de entrenamiento a la capa de entrada de un perceptrón multicapa, los valores de salida de la red son calculados a través de una secuencia cálculos hacia delante que involucran productos internos y transformaciones sigmoidales. Esto es seguido de una secuencia de cálculos hacia atrás que involucran el cálculo de señales de error y de la pendiente correspondiente de la función de activación sigmoidal, y culmina en los ajustes de los pesos sinápticos. Supuesto lo anterior, para un patrón de entrenamiento particular, el nivel de actividad interna de la red de una neurona de salida alcanza un valor elevado. Entonces, asumiendo que la función de activación sigmoidal de la neurona tiene como valores límites -1 y +1, encontramos que la pendiente correspondiente de la función de activación para esa neurona será muy pequeña, y el valor de salida para la neurona estará cercano a -1 o +1. En tal situación, decimos que la neurona se encuentra en ‘saturación’. Si el valor de salida está cercano a +1 cuando el valor objetivo (respuesta deseada) es -1, o viceversa, decimos que la neurona está ‘incorrectamente saturada’. Cuando esto ocurre, el ajuste aplicado a los pesos sinápticos de la neurona será pequeño (incluso aunque la magnitud de la señal de error asociada sea grande), y la red puede tardar mucho tiempo en salir de ahí. En la fase inicial del aprendizaje backpropagation, dependiendo de las condiciones existentes, tanto las neuronas no saturadas como las neuronas saturadas incorrectamente pueden existir en la capa de salida de la red. Mientras que el proceso de aprendizaje continúa, los pesos sinápticos asociados con las neuronas de salida no saturadas cambian rápidamente, ya que las correspondientes señales de error y gradientes tienen magnitudes relativamente elevadas, lo que ocasiona una reducción en la suma instantánea de errores cuadráticos �(n). Sin embargo, si, en este punto, las neuronas incorrectamente saturadas permanecen saturadas para algunos patrones de entrenamiento determinados, entonces puede surgir el fenómeno de saturación prematura, con �(n) permaneciendo prácticamente constante. Para el modo batch de entrenamiento se ha obtenido una fórmula de probabilidad de que ocurra saturación prematura, la cual ha sido verificada por medio de simulaciones con ordenador. La esencia de esta fórmula puede ser resumida como sigue:

1. La saturación incorrecta se evita escogiendo como valores iniciales de los pesos sinápticos y umbrales de la red unos valores aleatorios uniformemente distribuidos en un pequeño rango.

2. La saturación incorrecta es menos probable que ocurra cuando el número de neuronas ocultas se mantiene pequeño, consistente con un funcionamiento satisfactorio de la red.

3. La saturación incorrecta raramente ocurre cuando las neuronas de la red operan en sus regiones lineales.

Page 69: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

69

Para el modo patrón, los resultados de las simulaciones por ordenador, muestran tendencias similares que para el modo batch visto aquí. 5.4 Aproximación de funciones Un perceptrón multicapa entrenado con el algoritmo backpropagation puede ser visto como un vehículo práctico para llevar a cabo un mapeado no lineal entrada-salida de naturaleza genérica. Para ser específico, denotemos por p al número de nodos de entrada de un perceptrón multicapa y denotemos por q el número de neuronas de la capa de salida de la red. La relación entre la entrada y la salida de la red define un mapeado de un espacio de entrada p-dimensional Euclídeo a un espacio de salida q-dimensional Euclídeo, que es contínuamente diferenciable. Evaluando la capacidad del perceptrón multicapa desde el punto de vista del mapeado entrada-salida, la pregunta fundamental que nos hacemos es ¿cuál es el mínimo número de capas ocultas en un perceptrón multicapa con un mapeado entrada-salida que proporciona una realización aproximada de cualquier mapeado? Trataremos de responder a esta cuestión en el desarrollo de este apartado. 5.4.1 Teorema de la Aproximación Universal

Numerosos estudios muestran que una red feedforward con una sola capa oculta puede

proporcionar una aproximación de cualquier función continua. Sea �(·) una función no constante, limitada, continua y monótona creciente. Sea Ip el

hipercubo unidad p-dimensional [0,1]p. El espacio de funciones continuas en Ip se denota por C(Ip). Entonces, dada cualquier función f perteneciente a C(Ip) y � > 0, existe un entero M y conjuntos de constantes reales �i, �i, y wij, donde i = 1, … , M y j = 1, … , p tales que podemos definir

F(x1, … , xp) = 1=

M

i

�i�1=

p

j

(wijxj - �j) (5.42)

como una realización aproximada de la función f(·); esto es,

|F(x1, … , xp) – f(x1, …, xp)| < � para todo {x1, … , xp} Ip (5.43)

Este teorema es directamente aplicable a perceptrones multicapa. Hagamos notar en primer lugar que la función logística 1/[1+exp(-v)] usada como no linealidad en un modelo de neurona para la construcción de un perceptrón multicapa es, en realidad, una función no constante, limitada y monótona creciente; satisface, por lo tanto, la condición impuesta a �(·). A continuación, mostramos que la ecuación (5.42) representa la salida de un perceptrón multicapa como sigue:

1. La red tiene p nodos de entrada y una sola capa oculta que contiene M neuronas; las entradas son denotadas por x1, … , xp.

2. La neurona oculta i tiene como pesos sinápticos a wi1, … , wip y como umbral a �i.

3. La salida de la red es una combinación lineal de las salidas de las neuronas ocultas, con �1, … ,�M como coeficientes de esta combinación lineal.

El teorema de la aproximación universal es un teorema de existencia en el sentido de que

Page 70: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

70

proporciona la justificación matemática para la aproximación de una función continua arbitraria. En efecto, el teorema dice que una única capa oculta es suficiente para un perceptrón multicapa para calcular una aproximación uniforme a un conjunto de entrenamiento dado representado por el paquete de entradas x1, … , xp y una salida deseada f(x1, … , xp). Sin embargo, el teorema no dice que una única capa oculta sea lo óptimo en el sentido de tiempo de aprendizaje o facilidad de implementación. 5.4.2 Consideraciones prácticas

El teorema de la aproximación universal es importante desde un punto de vista teórico, ya que proporciona la herramienta matemática necesaria para la viabilidad de las redes feedforward con una sola capa oculta como una clase de soluciones de aproximación. Sin este teorema, podríamos estar buscando una solución que no existe. Sin embargo, el teorema es sólo una prueba de existencia; no nos dice cómo construir el perceptrón multicapa para hacer la aproximación.

No obstante, este teorema tiene un limitado valor práctico. El teorema de la aproximación

universal asume que la función continua a aproximar es dada y que disponemos para la aproximación de una capa oculta de tamaño ilimitado. Estas dos suposiciones no son ciertas en la mayoría de aplicaciones prácticas de perceptrones multicapa.

El problema de que los perceptrones multicapa usen una sola capa oculta es que las

neuronas de esta capa tienden a interactuar unas con otras globalmente. En situaciones complejas, esta interacción hace difícil mejorar la aproximación en un punto sin empeorarla en otro. Por el contrario, con dos capas ocultas, el proceso de aproximación se hace más manejable. En particular, podemos proceder como sigue:

1. Características locales son extraídas de la primera capa oculta. Específicamente, algunas neuronas de la primera capa oculta son usadas para dividir el espacio de entrada en regiones, y otras neuronas de esa capa aprenden las características locales de esas regiones. 2. Características globales son extraídas de la segunda capa oculta. Específicamente, una neurona de la segunda capa oculta combina las salidas de neuronas de la primera capa oculta operando en una región particular del espacio de entrada, y por tanto aprende las características globales para esa región.

En este proceso de aproximación en dos fases, los efectos de las neuronas están aislados y las aproximaciones en regiones diferentes del espacio de entrada pueden ser ajustadas individualmente.

6 Aplicación de las redes neuronales para la aproximación de funciones características de un transistor HEMT

6.1 Introducción Los HEMT (High Electrón Mobility Transistor) son transistores de efecto de campo

Page 71: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

71

fabricados en un material de heterounión. Existen varias maneras de realizar los HEMT. En la siguiente figura mostramos una de las posibles estructuras que los forman:

Figura 6.1 Una de las posibles estructuras de un HEMT.

La parte central de este dispositivo es la interfaz longitudinal entre una capa de GaAs no dopado y una capa de AlGaAs dopado con silicio. Estas capas son muy delgadas; la capa espaciadora entre ambas es apenas de 50 Armstrongs y deben ser fabricadas con técnicas epitaxiales como MBE o MOCVD.

El HEMT opera de un modo semejante al MOSFET. El canal es creado en la interfaz donde

el material de AlGaAs entrega electrones a la capa de GaAs. Estos electrones son mantenidos en una delgada capa cerca de la superficie. La densidad de electrones en esta delgada capa, conocida como gas de electrones bidimensional, es controlada por el voltaje aplicado a la puerta; haciendo la tensión de puerta más positiva, se incrementa la densidad de electrones y, por tanto, la corriente del canal también aumenta.

Debido a que no hay iones de impurezas en el GaAs que pudieran dispersar a los electrones,

estos se mueven a una alta velocidad a través del material. Como consecuencia de esto, la velocidad de saturación de los electrones y su movilidad son mucho mayores en el HEMT que en el MESFET: la movilidad da campo eléctrico débil y a temperatura ambiente en el HEMT es de 8000 mientras que en el MESFET es de 5000. Además de esto, al reducirse la temperatura, la movilidad de los electrones decrece significativamente. Por esta razón, los HEMT son operados, a veces, a bajas temperaturas, reduciéndose con esto la figura de ruido del dispositivo.

En electrónica resulta muchas veces complicado hallar una expresión matemática que

modele el comportamiento de un determinado dispositivo a partir de mediciones realizadas sobre el mismo. Generalmente, se emplean modelos muy complicados basados en estudios profundos acerca del comportamiento de los semiconductores. Como ya hemos visto en capítulos precedentes, una de las utilidades de las redes neuronales es la aproximación de funciones. Para el objetivo de modelar un dispositivo, las redes neuronales nos van a servir de gran utilidad, ya que nos permitirán

Sustrato de GaAs semi-aislante

Fuente

Puerta

Drenador

2DEG

n+ AlGaAs

n+ GaAs

GaAs sin dopar

AlGaAs sin dopar

Page 72: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

72

encontrar una expresión matemática que aproxime el comportamiento de éste sin necesidad de estudio teórico, simplemente a partir de los datos obtenidos de mediciones.

En este capítulo, por tanto, vamos a emplear redes neuronales para, a partir de los datos

experimentales obtenidos mediante mediciones de tensiones, intensidades y transconductancias de un par de transistores, obtener una expresión matemática que aproxime las curvas características del comportamiento de dichos transistores. Para ello emplearemos dos transistores, cada uno de ellos con un tamaño diferente. También existen en literatura diversos modelos matemáticos que intentan modelar el comportamiento de estos transistores. Nosotros emplearemos las redes neuronales para determinar los parámetros que definen dichos modelos. 6.2 Aproximación de la curva Ids frente a Vgs En este apartado vamos a intentar modelar la intensidad de drenador (Ids) frente a la tensión de puerta (Vgs) aplicada, a partir de datos obtenidos experimentalmente. Esto lo haremos por medio de una red neuronal, la cual nos proporcionará una expresión matemática sencilla. En el modelo neuronal, emplearemos redes de tipo feedforward en las que usaremos el algoritmo de aprendizaje backpropagation. Este estudio se realizará con una sola capa oculta que tendrá una, dos y tres neuronas en los diferentes análisis. Evidentemente, a mayor número de neuronas en la capa oculta, los resultados obtenidos serán mejores, pero también conseguiremos una expresión matemática más compleja. 6.2.1 Transistor HEMT modelo foundry ED02AH con W=2*40 y Vds=3V A continuación mostramos una tabla en la que se reflejan los diferentes valores de Ids obtenidos experimentalmente tras aplicarle al transistor los correspondientes valores de Vgs. Los valores contenidos en la tabla (6.1) nos servirán para entrenar la red neuronal:

Vgs Ids Vgs Ids -2.2 0 -0.8 0.7597 -2.1 0 -0.7 1.5531 -2 0 -0.6 2.8469

-1.9 0.0001 -0.5 4.7377 -1.8 0.0002 -0.4 8.243 -1.7 0.0005 -0.3 12.94 -1.6 0.0011 -0.2 18.1968 -1.5 0.0025 -0.1 23.5825 -1.4 0.0057 0 28.7336 -1.3 0.013 0.1 33.3579 -1.2 0.0299 0.2 37.2825 -1.1 0.0684 0.3 40.4852 -1 0.1557 0.4 42.8287

-0.9 0.3492 0.5 43.2638

Tabla 6.1 Valores de Ids medidos experimentalmente tras aplicar las correspondientes Vgs al HEMT modelo foundry con W=2*40 y Vds=3V

Page 73: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

73

Al representar gráficamente los datos obtenidos experimentalmente, podemos ver que la gráfica tiene mucha semejanza con una tangente hiperbólica, por lo que usaremos esta función para las diferentes redes neuronales. A continuación, se muestran los diferentes casos estudiados para este tipo de transistor. 6.2.1.1 Empleando una neurona Para representar las redes neuronales usaremos grafos en los que las neuronas vendrán representadas por un círculo en blanco y estarán conectadas mediante flechas en las que pondremos los pesos sinápticos. A cada neurona, por otro lado, le llegará una flecha procedente de su bias (sesgo) correspondiente. En nuestro caso, la red neuronal tendrá el siguiente esquema:

Figura 6.2 Modelo de una neurona en la capa oculta para modelo foundry ED02AH con W=2*40 y Vds=3V Esta red neuronal consta de una neurona de entrada, una neurona de salida, que será una suma ponderada y, entre ambos, una etapa intermedia con una neurona, cuya función de transferencia es una tangente hiperbólica, ya que al representar Ids frente a Vgs para este transistor obtenemos una forma muy parecida a dicha tangente hiperbólica. Con esta red neuronal se obtienen unos buenos resultados, los cuales se muestran en la siguiente tabla (en la que se ve el error cuadrático medio y los parámetros indicados en el esquema anterior).

w1 b1 w2 b2 mse 2.5830 0.2962 22.6220 22.4988 0.0977493

Tabla 6.2 Valores de los parámetros de la red neuronal de la figura (6.2) y del

error cuadrático medio (mse)

La expresión matemática resultante de esta red neuronal es, por lo tanto, la siguiente:

Ids = 22.4988 + 22.6220·tanh(2.5830·Vgs + 0.2962) (6.1)

En la siguiente gráfica mostramos tanto los datos utilizados para entrenar la red (cruces verdes) como la salida de la red neuronal tras realizar la simulación (línea continua azul):

b1 b2

w1 w2

Vgs Ids

Page 74: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

74

Figura 6.3 Ids frente a Vgs del HEMT modelo foundry ED02AH con W=2*40 y Vds=3V empleando una neurona En esta gráfica se puede ver como, con tan solo una neurona, la red neuronal es capaz de aproximar bastante bien la función de transferencia del transistor. 6.2.1.2 Empleando dos neuronas Para el caso de dos neuronas en la capa oculta, como se muestra en la figura (6.4), en la capa intermedia, las cuales presentan una función de transferencia tangente hiperbólica. Además de estas neuronas, la neurona de salida presenta como función de transferencia una suma ponderada de las salidas de las dos neuronas de la capa oculta ya nombrada. Tras la simulación de esta red, se obtuvieron los parámetros mostrados en la tabla (6.3), en la que se puede observar que el error cuadrático medio es el mismo que el que se obtuvo para el caso de una sola neurona en la capa intermedia. Mostramos a continuación los resultados obtenidos tras la simulación (siendo la figura (6.4) el esquema usado) y la expresión matemática a la que llegamos:

w1 b1 w2 b2 76.0906 -96.6681 -2.5830 -0.2962

w3 b3 w4 mse

-2.5717 19.9270 -22.6220 0.0977493

Tabla 6.3 Valores de los parámetros de la red neuronal de la figura (6.4) y del error cuadrático medio (mse)

Ids = 19.9270 – 2.5717·tanh(76.0906·Vgs – 96.6681) – 22.6620·tanh(-2.5830·Vgs – 0.2962) (6.2)

Page 75: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

75

Figura 6.4 Modelo de dos neuronas en la capa oculta para modelo foundry ED02AH con W=2*40 y Vds=3V Si observamos esta expresión detenidamente podemos observar que una de las neuronas no está haciendo otra cosa que sumar un término constante, ya que para el rango de valores de Vgs tomado, el sumando tanh(76.0906·Vgs – 96.6681) vale siempre -1. Es decir, introduciendo una neurona más no hemos mejorado en nada la aproximación. Esto se debe a que los valores obtenidos del transistor experimentalmente siguen una curva muy parecida a una tangente hiperbólica, por lo que al introducir una nueva tangente hiperbólica no se produce ninguna mejoría en la aproximación que estamos realizando. Lo que en realidad hace esta neurona es desplazar hacia arriba o hacia abajo dicha curva. Para ver la exactitud de esta aproximación, representamos aquí gráficamente los valores de Ids frente a los de Vgs obtenidos experimentalmente (cruces verdes) y la curva obtenida tras realizar la simulación (línea continua azul):

Figura 6.5 Ids frente a Vgs del HEMT modelo foundry ED02AH con W=2*40 y Vds=3V empleando dos neuronas

b2

b3

w1 w3

Vgs Ids

b1

w4 w2

Page 76: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

76

6.2.1.3 Empleando tres neuronas Para este caso, tenemos el siguiente esquema:

Figura 6.6 Modelo de tres neuronas en la capa oculta para modelo foundry ED02AH con W=2*40 y Vds=3V

Aquí tenemos tres neuronas en la capa intermedia a cada una de las cuales aplicaremos, como función de transferencia, una tangente hiperbólica. Tras entrenar esta red con los datos obtenidos experimentalmente, se obtiene:

w1 b1 w2 b2 2.5576 -33.9910 -12.5789 20.0339

w3 b3 w4 b4

2.5830 0.2962 -8.4939 8.8321

w5 w6 mse -0.3621 22.6220 0.0977493

Tabla 6.4 Valores de los parámetros de la red neuronal de la figura (6.6) y del

error cuadrático medio (mse)

Como podemos ver, obtenemos el mismo error cuadrático medio que en los dos casos anteriores. La expresión matemática que se obtiene con estos valores es la siguiente:

Ids = 8.8321 – 8.4939 ·tanh(2.5576·Vgs – 33.9910) – 0.5621·tanh(-12.5789·Vgs – 20.0339) + + 22.6620·tanh(2.5830· Vgs + 0.2962) (6.3)

b3

b4

w1

w2

Vgs Ids

b1

w4

w3

w5

w6 b2

Page 77: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

77

En este caso también se puede observar que tan sólo está trabajando una neurona; las otras dos sólo se limitan a sumar un término constante. Veamos la exactitud de la aproximación:

Figura 6.7 Ids frente a Vgs del HEMT modelo foundry ED02AH con W=2*40 y Vds=3V empleando cuatro neuronas Por tanto, se puede concluir que, para el caso del transistor HEMT modelo foundry ED20AH con W=2*40 y Vds=3V, la aproximación de la curva de Ids frente a Vgs es bastante buena con solo una neurona en la capa intermedia que posea función de transferencia tangente hiperbólica. Además, de este modo, se consigue una expresión matemática sencilla. 6.2.2 Transistor HEMT modelo foundry ED02AH con W=6*50 y Vds=1.4V A continuación mostramos una tabla en la que se reflejan los diferentes valores de Ids obtenidos experimentalmente tras aplicarle al transistor los correspondientes valores de Vgs, que nos servirán para entrenar la red neuronal:

Vgs Ids Vgs Ids -2.2 0 -0.8 1.4618 -2.1 0 -0.7 2.9891 -2 0.0001 -0.6 5.485

-1.9 0.0002 -0.5 9.6412 -1.8 0.0004 -0.4 20.1403 -1.7 0.0009 -0.3 35.9784 -1.6 0.0021 -0.2 54.7233 -1.5 0.0048 -0.1 74.4507 -1.4 0.0109 0 93.553 -1.3 0.0251 0.1 110.7993 -1.2 0.0575 0.2 125.4748

Page 78: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

78

-1.1 0.1317 0.3 137.4664 -1 0.2996 0.4 146.2467

-0.9 0.672 0.5 147.8751

Tabla 6.5 Valores de Ids medidos experimentalmente tras aplicar las correspondientes Vgs al HEMT modelo foundry con W=6*50 y Vds=1.4V

6.2.2.1 Empleando una neurona En este caso, nuestra red neuronal tendrá el siguiente esquema:, originando la tabla de valores adjunta:

Figura 6.8 Modelo de una neurona en la capa oculta para modelo foundry ED02AH con W=6*50 y Vds=1.4V

w1 b1 W2 b2 mse 2.8210 0.2352 76.9299 76.4131 1.69802

Tabla 6.6 Valores de los parámetros de la red neuronal de la figura (6.8) y del error cuadrático medio (mse)

Con estos valores llegamos a la siguiente expresión matemática y a la siguiente gráfica:

Ids = 76.4131 + 76.9299·tanh(2.8210·Vgs + 0.2352) (6.4)

Figura 6.9 Ids frente a Vgs del HEMT modelo foundry ED02AH con W=6*50 y Vds=1.4V empleando una neurona

b1 b2

w1 w2

Vgs Ids

Page 79: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

79

En esta gráfica se observa que con una red neuronal tan simple como la anterior, con solo una neurona en la capa oculta, podemos aproximar muy bien el comportamiento del transistor dado.

6.2.2.2 Empleando dos neuronas Para el caso de dos neuronas en la capa oculta, como ya vimos, tenemos el siguiente esquema:

Figura 6.10 Modelo de dos neuronas en la capa oculta para modelo foundry ED02AH con W=6*50 y Vds=1.4V

Tras entrenar la red neuronal, se obtuvieron unos valores que se muestran en la siguiente tabla:

w1 b1 w2 b2 197.0909 -277.9457 -2.8210 -0.2352

w3 b3 w4 mse

-40.5435 35.8696 -76.9299 1.69802

Tabla 6.7 Valores de los parámetros de la red neuronal de la figura (6.10) y del error cuadrático medio (mse)

Como se refleja en la tabla anterior, el error cuadrático medio es el mismo que para el caso

de una neurona. Veamos la expresión matemática de esta red neuronal:

Ids = 35.8696 – 40.5435·tanh(197.0909·Vgs – 277.9457) – 76.9299·tanh(-2.8210·Vgs – 0.2352) (6.5)

b2

b3

w1 w3

Vgs Ids

b1

w4 w2

Page 80: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

80

Observando la expresión anterior con detenimiento, vemos de nuevo que una de las dos neuronas no está haciendo otra cosa que sumar un término constante, ya que, para el rango de valores de Vgs empleado, el término tanh((197.0909·Vgs – 277.9457) vale siempre -1. Por tanto, al introducir una neurona más no ha mejorado en nada la aproximación. Esto es debido, al igual que ocurría en el caso del otro modelo de transistor, a que los valores obtenidos experimentalmente siguen una curva muy similar a una tangente hiperbólica. De ahí que no mejore la aproximación al añadir otra tangente hiperbólica. En la siguiente gráfica, se puede observar la exactitud de la aproximación:

Figura 6.11 Ids frente a Vgs del HEMT modelo foundry ED02AH con W=6*50 y Vds=1.4V empleando dos neuronas

Como podemos ver, el resultado es similar al obtenido con sólo una neurona en la capa oculta. 6.2.2.3 Empleando tres neuronas

Finalmente, para este el caso de tres neuronas, tenemos el esquema de la figura (6.12), el cual una vez entrenado con los datos obtenidos experimentalmente, llega a la siguiente tabla de valores:

w1 b1 w2 b2 1.9007 -119.9855 25.6318 72.5544

Page 81: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

81

w3 b3 w4 b4 2.8210 0.2352 -25.4145 49.3605

w5 w6 mse 1.6381 76.9299 1.69802

Tabla 6.8 Valores de los parámetros de la red neuronal de la figura (6.12) y del error cuadrático medio (mse)

Figura 6.12 Modelo de tres neuronas en la capa oculta para modelo foundry ED02AH con W=6*50 y Vds=1.4V El error cuadrático medio obtenido es el mismo que para los dos casos anteriores. Con estos valores llegamos a la siguiente expresión matemática:

Ids = 49.3605 – 25.4145 ·tanh(1.9007·Vgs – 119.9855) + 1.6381·tanh(25.6318·Vgs + 72.5544) + + 76.9299·tanh(2.8210· Vgs + 0.2352) (6.6)

Aquí también se ve que sólo trabaja una neurona, sumando las otras dos un término constante.

Por tanto, se puede concluir que, para el transistor HEMT modelo foundry ED20AH con W=6*50 y Vds=1.4V, la aproximación de la curva de Ids frente a Vgs es bastante buena con solo una neurona, consiguiendo, de este modo, una expresión matemática sencilla (aumentando el número de neuronas de la capa intermedia no se consigue una gran mejora en el ajuste de la curva).

b3

b4

w1

w2

Vgs Ids

b1

w4

w3

w5

w6 b2

Page 82: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

82

A continuación representamos gráficamente tanto los datos obtenidos experimentalmente (cruces verdes) como la salida de la red neuronal que pretende ajustarse a dichos datos (línea continua azul):

Figura 6.13 Ids frente a Vgs del HEMT modelo foundry ED02AH con W=6*50 y Vds=1.4V empleando tres neuronas

6.3 Aproximación de la curva gm frente a Vgs En este apartado vamos a intentar ajustar la curva de la transconductancia del transistor (gm) frente a la tensión de puerta (Vgs) aplicada. Esto lo haremos por medio de una red neuronal de tipo feedforward, en la que usaremos el algoritmo de aprendizaje backpropagation. Este análisis se realizará con una sola capa oculta que tendrá una, dos y tres neuronas en los diferentes análisis. En principio, el análisis se hará con una función exponencial cuadrática como función de activación, ya que los datos obtenidos experimentalmente presentan una gran similitud con ella. No obstante, también realizaremos el análisis, para dos y tres neuronas, con una tangente hiperbólica. 6.3.1 Transistor HEMT modelo foundry ED02AH con W=2*40 y Vds=3V Mostramos en la siguiente tabla los datos experimentales con los que se van a entrenar las diferentes redes:

Vgs gm Vgs gm

-2.00000000000000 0.00000032159103 -0.70000000000000 0.01039305927445 -1.95000000000000 0.00000048651697 -0.65000000000000 0.01299681528846 -1.90000000000000 0.00000073651290 -0.60000000000000 0.01525662046213 -1.85000000000000 0.00000111551781 -0.55000000000000 0.01777546347557 -1.80000000000000 0.00000169017165 -0.50000000000000 0.02619008338242 -1.75000000000000 0.00000256154111 -0.45000000000000 0.03545992705825

Page 83: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

83

-1.70000000000000 0.00000388289722 -0.40000000000000 0.04234552552023 -1.65000000000000 0.00000588666107 -0.35000000000000 0.04722153266871 -1.60000000000000 0.00000892522956 -0.30000000000000 0.05058139102237 -1.55000000000000 0.00001353279372 -0.25000000000000 0.05274161098699 -1.50000000000000 0.00002051885815 -0.20000000000000 0.05385977213151 -1.45000000000000 0.00003110952071 -0.15000000000000 0.05400960560160 -1.40000000000000 0.00004716044870 -0.10000000000000 0.05324468181559 -1.35000000000000 0.00007147689041 -0.05000000000000 0.05163479704162 -1.30000000000000 0.00010829211094 0 0.04928089301252 -1.25000000000000 0.00016397715972 0.05000000000000 0.04631786637777 -1.20000000000000 0.00024808114788 0.10000000000000 0.04291169570824 -1.15000000000000 0.00037482687587 0.15000000000000 0.03925351318134 -1.10000000000000 0.00056519453589 0.20000000000000 0.03554888238874 -1.05000000000000 0.00084967214780 0.25000000000000 0.03198932088903 -1.00000000000000 0.00127153530551 0.30000000000000 0.02863323436917 -0.95000000000000 0.00188993986564 0.35000000000000 0.02461687924594 -0.90000000000000 0.00278083081776 0.40000000000000 0.01338932491216 -0.85000000000000 0.00403130369920 0.45000000000000 0.00297064691907 -0.80000000000000 0.00571974860951 0.50000000000000 0.00097319226241 -0.75000000000000 0.00787226368081

Tabla 6.9 Valores de gm medidos experimentalmente tras aplicar las correspondientes Vgs al

HEMT modelo foundry con W=2*40 y Vds=3V

Una vez que se entrenen las redes, comprobaremos la aproximación de los datos obtenidos tras las distintas simulaciones con los datos reflejados en la tabla anterior.

6.3.1.1 Empleando una neurona El esquema usado para este caso es el siguiente:

Figura 6.14 Modelo de una neurona en la capa oculta para modelo foundry ED02AH con W=2*40 y Vds=3V Como podemos ver, este esquema es el mismo que hemos usado en el apartado anterior para el caso de una neurona. En este caso usaremos sólo la exponencial cuadrática como función de activación, ya que no tiene mucho sentido usar una tangente hiperbólica; nunca podrá tener la forma descrita por los datos experimentales, ya que las formas de sus curvas no se parecen en nada. Sin embargo, cuando analicemos los casos de dos y tres neuronas en la capa intermedia, sí que usaremos la tangente hiperbólica, además de la exponencial cuadrática, como función de activación. Tras entrenar esta red, se obtuvieron los resultados que se muestran en la siguiente tabla:

b1 b2

w1 w2

Vgs gm

Page 84: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

84

w1 b1 w2 b2 mse

2.2112 0.2731 0.0561 -2.9361·10-4 6.20138·10-6

Tabla 6.10 Valores de los parámetros de la red neuronal de la figura (6.14) y del error cuadrático medio (mse)

La expresión matemática que se obtiene con esta red es la siguiente:

gm = -2.9361·10-6 + 0.0561·e-(2.2112·Vgs + 0.2731) 2

(6.7) En la gráfica siguiente representamos el ajuste obtenido tras la simulación (línea continua azul) a la curva generada por los datos experimentales (cruces verdes). En ella vemos que la red neuronal es capaz de seguir, más o menos bien, a la transconductancia, sobre todo para valores bajos de Vgs.

Figura 5.15 gm frente a Vgs del HEMT modelo foundry ED02AH con W=2*40 y Vds=3V empleando una neurona

6.3.1.2 Empleando dos neuronas Analizamos aquí tanto el caso de función de transferencia exponencial cuadrática como el caso de tangente hiperbólica. En primer lugar, representamos la estructura de red neuronal que vamos a usar para los dos casos citados:

Page 85: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

85

Figura 6.16 Modelo de dos neuronas en la capa oculta para modelo foundry ED02AH con W=2*40 y Vds=3V

6.3.1.2.1 Con función de activación exponencial cuadrática

En este caso, tras realizar la simulación, obtenemos los siguientes parámetros:

w1 b1 w2 b2 -0.9759 -0.1097 -5.3022 -4.9298

w3 b3 w4 mse

0.1858 -0.1321 0.0322 3.26345·10-6

Tabla 6.11 Valores de los parámetros de la red neuronal de la figura (6.16) y del error cuadrático medio para la exponencial cuadrática

En esta ocasión, mejoramos el error cuadrático medio con respecto al caso de una neurona. Por otro lado, con estos valores llegamos a:

gm = -0.1321 + 0.1858·e-(-0.9579·Vgs - 0.1097) 2

+ 0.0322·e-(-5.3022·Vgs – 4.9298) 2

(6.8) 6.3.1.2.2 Con función de activación tangente hiperbólica Aquí vamos a realizar la simulación con una tangente hiperbólica como función de activación, ya que, aunque no se parezca a la curva obtenida experimentalmente, usamos dos neuronas en la capa oculta, lo cual proporciona más flexibilidad a la red neuronal para que se ajuste a dicha curva. Al simular la red, se obtienen los siguientes parámetros:

w1 b1 w2 b2 1.8391 -1.1340 4.2025 2.0225

w3 b3 w4 mse

-0.0856 -0.0518 0.0334 1.98732·10-6 Tabla 6.12 Valores de los parámetros de la red neuronal de la figura (6.16) y del error cuadrático medio para la tangente hiperbólica

b2

b3

w1 w3

Vgs gm

b1

w4 w2

Page 86: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

86

Aquí, volvemos a mejorar el error cuadrático medio con respecto al caso anterior. De esta forma, obtenemos la siguiente expresión matemática: gm = -0.0518 - 0.0856·tanh(-1.8391·Vgs – 1.1340)2 + 0.0334·tanh(4.2025·Vgs + 2.0225)2 (6.9)

Mostramos a continuación las representaciones gráficas de los ajustes obtenidos para las dos últimas estructuras de red neuronal:

Figura 6.17 gm frente a Vgs del HEMT modelo foundry ED02AH con W=2*40 y Vds=3V empleando dos neuronas (exp)

Figura 5.18 gm frente a Vgs del HEMT modelo foundry ED02AH con W=2*40 y Vds=3V empleando dos neuronas (tanh)

Page 87: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

87

Como podemos ver, para el caso de dos neuronas en la capa oculta, la configuración que posee una tangente hiperbólica como función de activación de las neuronas, sigue mejor la curva obtenida de los datos experimentales. 6.3.1.3 Empleando tres neuronas

Veamos el esquema de esta red neuronal:

Figura 6.19 Modelo de tres neuronas en la capa oculta para modelo foundry ED02AH con W=2*40 y Vds=3V

Veamos ahora el caso de función de transferencia exponencial cuadrática y el de tangente

hiperbólica.

6.3.1.3.1 Con función de activación exponencial cuadrática Tras realizar la simulación, se obtiene la siguiente tabla de resultados:

w1 b1 w2 b2 0.6048 -2.6761 -3.9733 2.5142

w3 b3 w4 b4

1.5302 2.2923 -19.3883 0.0653

b3

b4

w1

w2

Vgs gm

b1

w4

w3

w5

w6

b2

Page 88: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

88

w5 w6 mse -0.0310 -0.1177 1.28457·10-6

Tabla 6.13 Valores de los parámetros de la red neuronal de la figura (6.19) y del

error cuadrático medio para la exponencial cuadrática

El error cuadrático medio decrece de nuevo respecto al caso de dos neuronas. De esta forma llegamos a la siguiente expresión: gm = 0.0653 - 19.3883·e-(0.6048·Vgs – 2.6761)

2- 0.0310·e-(-3.9733·Vgs + 2.5142)

2- 0.1177·e-(1.5302·Vgs + 2.2923)

2 (6.10)

Con esta red se consigue la siguiente representación gráfica, la cual sigue mejor la curva para valores altos de Vgs que los casos anteriormente estudiados:

Figura 6.20 gm frente a Vgs del HEMT modelo foundry ED02AH con W=2*40 y Vds=3V empleando tres neuronas (exp)

6.3.1.3.2 Con función de activación tangente hiperbólica

Como ya vimos para el caso de dos neuronas, aunque la tangente hiperbólica no tiene una forma parecida a la curva obtenida de los datos experimentales, se estudia este caso aquí porque con tres neuronas en la capa oculta la red presenta una gran flexibilidad, pudiendo así realizar un buen ajuste en la aproximación a dicha curva.

En teoría deberíamos obtener mejores resultados que con dos neuronas. A

continuación, se muestran estos resultados para comprobar esta suposición:

Page 89: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

89

w1 b1 w2 b2 2.0513 -1.3591 6.9532 3.1392

w3 b3 w4 b4

-5.8571 -4.7408 -0.0903 -4.7408

w5 w6 mse 0.0243 -0.0570 1.01685·10-6

Tabla 6.14 Valores de los parámetros de la red neuronal de la figura (6.19) y del

error cuadrático medio para la tangente hiperbólica

Como podemos ver en la tabla, el error cuadrático vuelve a ser menor que en el caso anterior, aunque su variación es pequeña. Es decir, añadiendo una tercera neurona, no apreciamos una gran mejora en la aproximación realizada por la red neuronal. De la tabla anterior y, conociendo el esquema que estamos usando, se puede llegar a obtener la siguiente expresión matemática:

gm = -4.7408 - 0.0903·tanh(2.0513·Vgs – 1.3591)2 + 0.0243·tanh(6.9532·Vgs + 3.1392)2 -

- 0.0570·tanh(-5.8571·Vgs – 4.7408)2 (6.11)

Por último, he aquí la gráfica de esta simulación, en la que se pude observar que es, de todas las que hemos mostrado en este apartado, la que consigue un mejor ajuste entre la curva experimental (cruces verdes) y la obtenida de la salida de la red neuronal (línea continua azul); esto se refleja en que es la que posee menor error cuadrático de todas:

Figura 6.21 gm frente a Vgs del HEMT modelo foundry ED02AH con W=2*40 y Vds=3V empleando tres neuronas (tanh)

Page 90: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

90

6.3.2 Transistor HEMT modelo foundry ED02AH con W=6*50 y Vds=1.4V En la siguiente tabla se muestran los datos experimentales con los que se van a entrenar las diferentes redes:

Vgs gm Vgs gm -2.00000000000000 0.00000062519489 -0.70000000000000 0.02001001051987 -1.95000000000000 0.00000094347271 -0.65000000000000 0.02505061124189 -1.90000000000000 0.00000142559911 -0.60000000000000 0.02958406426479 -1.85000000000000 0.00000215614922 -0.55000000000000 0.03690144613079 -1.80000000000000 0.00000326338314 -0.50000000000000 0.06879599767560 -1.75000000000000 0.00000494180856 -0.45000000000000 0.10625641154513 -1.70000000000000 0.00000748638743 -0.40000000000000 0.13632927927675 -1.65000000000000 0.00001134438287 -0.35000000000000 0.15937904280058 -1.60000000000000 0.00001719391218 -0.30000000000000 0.17643174906162 -1.55000000000000 0.00002606289105 -0.25000000000000 0.18824100217275 -1.50000000000000 0.00003980897286 -0.20000000000000 0.19529332638568 -1.45000000000000 0.00005989138222 -0.15000000000000 0.19794810590144 -1.40000000000000 0.00009078069882 -0.10000000000000 0.19655899031139 -1.35000000000000 0.00013757458871 -0.05000000000000 0.19154338256731 -1.30000000000000 0.00020841836601 0 0.18341060938039 -1.25000000000000 0.00031557060857 0.05000000000000 0.17276640126453 -1.20000000000000 0.00047740519630 0.10000000000000 0.16030538073229 -1.15000000000000 0.00072128855072 0.15000000000000 0.14679479148957 -1.10000000000000 0.00108759017174 0.20000000000000 0.13304008657814 -1.05000000000000 0.00163497577028 0.25000000000000 0.11978283585992 -1.00000000000000 0.00244672122155 0.30000000000000 0.10725772709029 -0.95000000000000 0.00363667124902 0.35000000000000 0.09223616357476 -0.90000000000000 0.00535100813819 0.40000000000000 0.05015910437096 -0.85000000000000 0.00775745453843 0.45000000000000 0.01110640081203 -0.80000000000000 0.01100721597340 0.50000000000000 0.00362736836354 -0.75000000000000 0.01515159514153

Tabla 6.15 Valores de gm medidos experimentalmente tras aplicar las correspondientes Vgs al

HEMT modelo foundry con W=6*50 y Vds=1.4V 6.3.2.1 Empleando una neurona El esquema usado es el siguiente:

Figura 6.22 Modelo de una neurona en la capa oculta para modelo foundry ED02AH con W=6*50 y Vds=1.4V

b1 b2

w1 w2

Vgs gm

Page 91: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

91

En este caso usaremos sólo la exponencial cuadrática como función de activación al igual que hicimos con el otro modelo de transistor, ya que la tangente hiperbólica nunca tendrá una forma parecida a la descrita por los datos experimentales (es imposible obtener una buena aproximación). Tras entrenar esta red neuronal, se obtuvieron los valores de parámetros siguientes:

w1 b1 w2 b2 mse -2.3774 -0.2210 0.2070 -0.0014 1.05739·10-4

Tabla 6.16 Valores de los parámetros de la red neuronal de la figura (6.22) y del

error cuadrático medio (mse) La expresión matemática que se obtiene con esta red es la siguiente:

gm = -0.0014 + 0.2070·e-(-2.3774·Vgs - 0.2210) 2 (6.12)

La bondad de la aproximación se muestra en la siguiente gráfica:

Figura 6.23 gm frente a Vgs del HEMT modelo foundry ED02AH con W=6*50 y Vds=1.4V empleando una neuronas Como vemos, a la red (línea continua azul) le cuesta seguir a los datos experimentales

(cruces verdes) debido a que, posiblemente, le harán falta más parámetros libres para implementar una expresión como la que se pretende aproximar.

Page 92: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

92

6.3.2.2 Empleando dos neuronas

Analizamos aquí tanto el caso de función de transferencia exponencial cuadrática como el caso de tangente hiperbólica ya que, para esta última función de activación, vimos que, con dos o tres neuronas en la capa oculta, se podía conseguir una curva bastante parecida a la buscada.

En este caso, el esquema que seguimos es el mostrado a continuación:

Figura 6.24 Modelo de dos neuronas en la capa oculta para modelo foundry ED02AH con W=6*50 y Vds=1.4V 6.3.2.2.1 Con función de activación exponencial cuadrática En este caso, tras realizar la simulación, obtenemos la siguiente tabla de valores:

w1 b1 w2 b2 3.0305 0.5154 -5.1855 1.1833

w3 b3 w4 mse

0.2031 2.6474·10-4 0.0851 3.72394·10-5

Tabla 6.17 Valores de los parámetros de la red neuronal de la figura (6.24) y del error cuadrático medio para la exponencial cuadrática

Aquí mejoramos el error cuadrático medio con respecto al caso de una neurona. Por otro lado, con estos valores llegamos a:

b2

b3

w1 w3

Vgs gm

b1

w4 w2

Page 93: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

93

gm = 2.6474·10-4 + 0.2031·e-(3.0305·Vgs - 0.5154) 2 + 0.0851·e-(-5.1855·Vgs – 1.1833) 2 (6.13) Veamos ahora la representación gráfica, en la que se ve una mejor aproximación de la curva obtenida mediante la red neuronal (línea continua azul) a la curva obtenida de los datos experimentales (cruces verdes) que en el caso anterior:

Figura 6.25 gm frente a Vgs del HEMT modelo foundry ED02AH con W=6*50 y Vds=1.4V empleando dos neuronas (exp)

6.3.2.2.2 Con función de activación tangente hiperbólica

A continuación, se muestran los resultados que se obtienen para esta simulación:

w1 b1 w2 b2

-2.2609 1.2738 5.7703 2.5588

w3 b3 w4 mse 0.2633 -0.1508 0.1106 2.12860·10-5

Tabla 6.18 Valores de los parámetros de la red neuronal de la figura (6.24) y del

error cuadrático medio para la tangente hiperbólica

Hay que hacer notar aquí que el error cuadrático medio disminuye con respecto al caso de función de activación exponencial cuadrática. Con los valores de la tabla (6.18) y, sabiendo el esquema que estamos tratando,

Page 94: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

94

llegamos a la siguiente expresión matemática: gm = -0.1508 – 0.2633·tanh(-2.2609·Vgs + 1.2738)2 + 0.1106·tanh(5.7703·Vgs + 2.5588)2 (6.14)

Vemos ahora la aproximación obtenida en la siguiente gráfica:

Figura 6.26 gm frente a Vgs del HEMT modelo foundry ED02AH con W=6*50 y Vds=1.4V empleando dos neuronas (tanh)

6.3.2.3 Empleando tres neuronas

Aquí, la red neuronal presenta el siguiente esquema:

Figura 6.27 Modelo de tres neuronas en la capa oculta para modelo foundry ED02AH con W=6*50 y Vds=1.4V

b3

b4

w1

w2

Vgs gm

b1

w4

w3

w5

w6 b2

Page 95: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

95

6.3.2.3.1 Con función de activación exponencial cuadrática En este caso se obtienen los parámetros siguientes:

w1 b1 w2 b2 0.7858 -2.5314 -4.5842 -2.7005

w3 b3 w4 b4

1.7178 2.4921 -23.4494 0.2225

w5 w6 mse -0.1290 -0.5418 1.26457·10-5

Tabla 6.19 Valores de los parámetros de la red neuronal de la figura (6.27) y del

error cuadrático medio para la exponencial cuadrática

El error cuadrático medio decrece respecto al caso de dos neuronas. Asimismo, llegamos a la siguiente expresión: gm = 0.2225 – 23.4494·e-(0.7858·Vgs – 2.5314) 2 - 0.1290·e-(-4.5842·Vgs - 2.7005) 2 - 0.5418·e-(1.7178·Vgs + 2.4921) 2 (6.15)

Con esta red se consigue la una mejoría en la aproximación, que se refleja en la siguiente gráfica:

Figura 6.28 gm frente a Vgs del HEMT modelo foundry ED02AH con W=6*50 y Vds=1.4V empleando tres neuronas (exp)

Page 96: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

96

6.3.2.3.2 Con función de activación tangente hiperbólica

A continuación, se muestran los resultados de esta simulación:

w1 b1 w2 b2 2.2616 -1.3612 -6.9290 -3.0087

w3 b3 w4 b4

7.8572 6.8843 -0.2862 6.8843

w5 w6 mse -0.1014 -0.0072 1.52415·10-5

Tabla 6.20 Valores de los parámetros de la red neuronal de la figura (6.27) y del

error cuadrático medio para la tangente hiperbólica

El error cuadrático es ligeramente menor que en el caso anterior. Por otro lado, los valores obtenidos tras la simulación dan lugar a la siguiente expresión:

gm = -4.7408 - 0.0903·tanh(2.0513·Vgs – 1.3591)2 + 0.0243·tanh(6.9532·Vgs + 3.1392)2 -

- 0.0570·tanh(-5.8571·Vgs – 4.7408)2 (6.16)

Esta simulación es la que consigue un mejor ajuste, lo cual se refleja a continuación:

Figura 6.29 gm frente a Vgs del HEMT modelo foundry ED02AH con W=6*50 y Vds=1.4V empleando tres neuronas (tanh)

Page 97: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

97

6.4 Aproximación de la curva Ids frente a Vgs, Vds (Modelo GSR1)

En este apartado vamos a intentar modelar la intensidad de drenador (Ids) frente a la tensión de puerta (Vgs) y al tensión de drenador (Vds) aplicadas, a partir de datos obtenidos experimentalmente. Esto lo haremos por medio del estudio de un modelo realizado por el Grupo de Sistema Radio de la Universidad de Sevilla. Para ello, emplearemos una red neuronal feedforward con aprendizaje backpropagation, cuyo esquema se mostrará más adelante. Este estudio se realizará para datos medidos sobre dos transistores HEMT (modelos foundry ED02AH con W=2*40 y con W=6*50).

6.4.1 Transistor HEMT modelo foundry ED02AH con W=2*40 A continuación mostramos los valores de Ids obtenidos experimentalmente en función de las tensiones Vgs (primera fila) y Vds (primera columna) que usaremos para entrenar la red neuronal: Esta tabla, debido a su gran longitud, se dividirá a su vez en tres: cada una de ellas para valores de Ids dados valores de Vgs comprendidos entre -2 y 0.5 y variando Vds entre 0 y 1 en la primera, entre 1.1 y 2 en la segunda y entre 2.1 y 3 en la tercera. En primer lugar, la tabla siguiente:

Vgs Vds 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 -2 0 0 0 0 0 0 0 0 0 0 0

-1.9 0 0 0 0 0 0 0 0 0 0 0 -1.8 0 0 0 0 0 0 0 0.0001 0.0001 0.0001 0.0001 -1.7 0 0 0 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 0.0002 0.0002 -1.6 0 0 0.0001 0.0001 0.0002 0.0002 0.0003 0.0003 0.0003 0.0004 0.0004 -1.5 0 0.0001 0.0002 0.0003 0.0004 0.0005 0.0006 0.0007 0.0008 0.0008 0.0009 -1.4 0 0.0002 0.0005 0.0007 0.0009 0.0011 0.0013 0.0015 0.0017 0.0019 0.0021 -1.3 0 0.0005 0.001 0.0016 0.0021 0.0025 0.003 0.0035 0.004 0.0044 0.0049 -1.2 0 0.0012 0.0024 0.0036 0.0047 0.0058 0.0069 0.008 0.0091 0.0102 0.0113 -1.1 0 0.0028 0.0055 0.0081 0.0108 0.0133 0.0159 0.0184 0.0209 0.0233 0.0258 -1 0 0.0063 0.0124 0.0185 0.0245 0.0303 0.0361 0.0419 0.0475 0.0531 0.0586

-0.9 0 0.014 0.0278 0.0414 0.0548 0.068 0.0811 0.0939 0.1066 0.1191 0.1314 -0.8 0 0.0305 0.0606 0.0902 0.1193 0.148 0.1763 0.2043 0.2318 0.259 0.2859 -0.7 0 0.0625 0.124 0.1845 0.2441 0.3028 0.3607 0.4178 0.4741 0.5297 0.5846 -0.6 0 0.116 0.2296 0.3408 0.45 0.5576 0.6636 0.7682 0.8714 0.9731 1.0736 -0.5 0 0.3181 0.5803 0.7924 0.9779 1.1515 1.3194 1.4837 1.6454 1.8047 1.962 -0.4 0 1.3727 2.3097 2.8553 3.2027 3.4694 3.7047 3.927 4.1429 4.3547 4.5633 -0.3 0 3.2167 5.3106 6.396 6.9732 7.3459 7.6419 7.9084 8.1625 8.4102 8.6536 -0.2 0 5.5286 9.0627 10.8059 11.6477 12.1284 12.4749 12.7718 13.0489 13.3168 13.5794 -0.1 0 8.0244 13.1087 15.5533 16.67 17.2558 17.6455 17.9634 18.2539 18.5325 18.8046

0 0 10.4686 17.0691 20.1967 21.5781 22.2619 22.6889 23.0226 23.3214 23.6055 23.8823 0.1 0 12.6865 20.662 24.4079 26.0276 26.7985 27.2573 27.6034 27.9076 28.1949 28.4739 0.2 0 14.5782 23.7263 27.999 29.8212 30.6655 31.1507 31.5065 31.8147 32.1039 32.384 0.3 0 16.1258 26.233 30.9365 32.9241 33.8281 34.3345 34.698 35.0091 35.2995 35.5803 0.4 0 17.2596 28.0694 33.0883 35.1969 36.1446 36.6665 37.0355 37.3486 37.6398 37.921 0.5 0 17.4697 28.4096 33.487 35.6181 36.5739 37.0987 37.4687 37.7822 38.0736 38.3549

Tabla 6.21 Valores de Ids medidos experimentalmente para valores de Vgs entre -2 y 0.5 voltios y valores de Vds entre 0 y 1 voltios en el HEMT modelo foundry con W=2*40

Page 98: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

98

Veamos ahora la segunda tabla:

Vgs Vds 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2 -2 0 0 0 0 0 0 0 0 0 0

-1.9 0 0 0 0 0 0.0001 0.0001 0.0001 0.0001 0.0001 -1.8 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 -1.7 0.0002 0.0002 0.0002 0.0002 0.0003 0.0003 0.0003 0.0003 0.0003 0.0003 -1.6 0.0004 0.0005 0.0005 0.0006 0.0006 0.0006 0.0007 0.0007 0.0007 0.0008 -1.5 0.001 0.0011 0.0012 0.0013 0.0014 0.0014 0.0015 0.0016 0.0017 0.0017 -1.4 0.0023 0.0025 0.0027 0.0029 0.0031 0.0033 0.0035 0.0036 0.0036 0.004 -1.3 0.0054 0.0058 0.0063 0.0067 0.0071 0.0075 0.008 0.0084 0.0088 0.0092 -1.2 0.0123 0.0133 0.0143 0.0153 0.0163 0.0173 0.0183 0.0192 0.0202 0.0211 -1.1 0.0281 0.0305 0.0328 0.0351 0.0374 0.0396 0.0418 0.044 0.0462 0.0483 -1 0.064 0.0694 0.0747 0.0799 0.085 0.0901 0.0952 0.1002 0.1051 0.1099

-0.9 0.1436 0.1556 0.1675 0.1792 0.1908 0.2022 0.2135 0.2247 0.2357 0.2466 -0.8 0.3124 0.3385 0.3643 0.3898 0.415 0.4399 0.4645 0.4887 0.5127 0.5365 -0.7 0.6387 0.6922 0.745 0.7971 0.8486 0.8994 0.9497 0.9993 1.0484 1.0969 -0.6 1.1727 1.2706 1.3672 1.4627 1.5569 1.65 1.742 1.8329 1.9227 2.0115 -0.5 2.1172 2.2704 2.4216 2.571 2.7185 2.8643 3.0082 3.1505 3.2911 3.4301 -0.4 4.7691 4.9722 5.1727 5.3707 5.5663 5.7595 5.9504 6.139 6.3254 6.5096 -0.3 8.8934 9.13 9.3636 9.5942 9.8221 10.0471 10.2694 10.4891 10.7062 10.9208 -0.2 13.8378 14.0928 14.3444 14.5929 14.8383 15.0807 15.3202 15.5568 15.7907 16.0218 -0.1 19.0722 19.336 19.5964 19.8535 20.1074 20.3583 20.6061 20.8509 21.0929 21.3321

0 24.1541 24.422 24.6864 24.9475 25.2053 25.4599 25.7115 25.9601 26.2058 26.4487 0.1 28.7477 29.0175 29.2837 29.5465 29.806 30.0624 30.3157 30.5659 30.8133 31.0577 0.2 32.6588 32.9294 33.1964 33.4599 33.7202 33.9773 34.2314 34.4824 34.7304 34.9756 0.3 35.8555 36.1265 36.3938 36.3577 36.9183 37.1758 37.4301 37.6815 37.9298 38.1753 0.4 38.1964 38.4676 38.7351 389991 39.2599 39.5175 39.772 40.0234 40.2719 40.5176 0.5 38.6305 38.9017 39.1692 39.4334 39.6942 39.9518 40.2064 40.4579 40.7065 40.9522

Tabla 6.22 Valores de Ids medidos experimentalmente para valores de Vgs entre -2 y 0.5 voltios y valores de

Vds entre 1.1 y 2 voltios en el HEMT modelo foundry con W=2*40 Por último, la tercera:

Vgs Vds 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2 -2 0 0 0 0 0 0 0 0 0 0

-1.9 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 -1.8 0.0002 0.0002 0.0002 0.0002 0.0002 0.0002 0.0002 0.0002 0.0002 0.0002 -1.7 0.0003 0.0004 0.0004 0.0004 0.0004 0.0004 0.0004 0.0004 0.0005 0.0005 -1.6 0.0008 0.0008 0.0009 0.0009 0.0009 0.001 0.001 0.001 0.001 0.0011 -1.5 0.0018 0.0019 0.002 0.002 0.0021 0.0022 0.0023 0.0023 0.0024 0.0025 -1.4 0.0042 0.0044 0.0045 0.0047 0.0049 0.005 0.0052 0.0053 0.0055 0.0057 -1.3 0.0096 0.01 0.0104 0.108 0.0112 0.0115 0.0119 0.0123 0.0127 0.013 -1.2 0.022 0.0229 0.0238 0.0247 0.0256 0.0265 0.0274 0.0282 0.0291 0.0299 -1.1 0.0504 0.0525 0.0546 0.0566 0.0587 0.0606 0.0626 0.0646 0.0665 0.0684 -1 0.1147 0.1195 0.1242 0.1288 0.1334 0.138 0.1425 0.1469 0.1513 0.1557

-0.9 0.2574 0.268 0.2786 0.289 0.2993 0.3095 0.3196 0.3296 0.3394 0.3492 -0.8 0.5599 0.5831 0.606 0.6287 0.6511 0.6733 0.6952 0.7169 0.7384 0.7597 -0.7 1.1448 1.1922 1.2391 1.2854 1.3312 1.3766 1.4214 1.4658 1.5097 1.5531 -0.6 2.0993 2.1861 2.2719 2.3567 2.4406 2.5236 2.6057 2.687 2.7674 2.8469

Page 99: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

99

-0.5 3.5674 3.7033 3.8376 3.9704 4.1017 4.2316 4.3602 4.4873 4.6131 4.7377 -0.4 6.6917 6.8717 7.0498 7.2258 7.3999 7.5721 7.7425 7.9111 8.0779 8.243 -0.3 11.133 11.3427 11.55 11.7551 11.9579 12.1586 12.357 12.5534 12.7477 12.94 -0.2 16.2503 16.4762 16.6996 16.9205 17.139 17.3551 17.5689 17.7804 17.9897 18.1968 -0.1 21.5685 21.8022 22.0334 22.2619 22.488 22.7116 22.9328 23.1516 23.3682 23.5825

0 26.6887 26.926 27.1607 27.3928 27.6223 27.8493 28.0739 28.2961 28.516 28.7336 0.1 31.2994 31.5383 31.7746 32.0082 32.2392 32.4678 32.6939 32.9176 33.1389 33.3579 0.2 35.218 35.4576 35.6495 35.9288 36.1605 36.3898 36.6165 36.8409 37.0628 37.2825 0.3 38.418 38.6579 38.8951 39.1297 39.3618 39.5913 39.8183 40.0429 40.2652 40.4852 0.4 40.7604 41.004 41.2378 41.4725 41.7046 41.9343 42.1615 42.3862 43.6086 42.8287 0.5 41.195 41.4351 41.6726 41.9073 42.1395 42.3692 42.5965 42.8213 43.0437 43.2638

Tabla 6.23 Valores de Ids medidos experimentalmente para valores de Vgs entre -2 y 0.5 voltios y valores de

Vds entre 2.1 y 3 voltios en el HEMT modelo foundry con W=2*40 Representando gráficamente los datos anteriores, nos queda la siguiente figura:

-2-1.5

-1-0.5

00.5

0

1

2

30

10

20

30

40

50

Vgs(V)Vds(V)

Ids(

mA

)

Figura 6.30 Ids frente a Vgs,Vds del HEMT modelo foundry ED02AH con W=2*40 (salida teórica)

Según el modelo que estamos tratando, pretendemos implementar la siguiente expresión:

Ids = Io · [1 + tanh(P1 · Vgs – Q1 · Vds – Vp1)] · [tanh(� · Vds)] (6.16)

Para llegar a conseguir esta función, debemos crear la siguiente red neuronal:

Page 100: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

100

Figura 6.31 Representación neuronal del modelo GSR1

Esta red neuronal es de tipo feedforward, y usaremos, como algoritmo de aprendizaje, el backpropagation. En cuanto a su estructura, consta de dos entradas (Vgs y Vds) y cuatro neuronas (una de las cuales será la salida de la red (Ids)). De esas cuatro neuronas, las de entrada tienen una tangente hiperbólica como función de activación, mientras que las otras dos son sumas ponderadas (una de ellas suma un 1 a una de las tangentes y la otra se usa para realizar una multiplicación). Como podemos ver en el esquema, fijamos ciertos pesos a 1 (los que van de las tangentes a las sumas ponderadas). Asimismo, le damos valores fijos a todos lo bias (sesgos) menos uno (-Vp1); en las neuronas que no tienen bias conectados se les da a éstos el valor cero. Tras entrenar la red, se obtiene la siguiente tabla de resultados:

Io P1 Q1 Vp1 � Mse 5.0819 -1.7236 5.3405 0.3375 0.1598 0.465638

Tabla 6.24 Valores de los parámetros de la red neuronal de la figura (6.31) tras su simulación

Esto da lugar a la siguiente expresión matemática: Ids = 5.0819 · [1 + tanh(-1.7236 · Vgs – 5.3405 · Vds – 0.3375)] · [tanh(0.1598 · Vds)] (6.16) Por último, nos queda representar la salida de la red neuronal tras la simulación para ver cómo de bueno es el ajuste obtenido. En esta figura se puede ver que es bastante bueno salvo por la

-Q1

tanh

P1 I0

Vgs

Ids

-Vp1

1

Vds

1

1

tanh

purelin

purelin con netInput.Fcn=’netprod’

Page 101: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

101

diferencia de pendiente para Vgs = 0.5 V (parte superior de la gráfica) y para valores altos de Vgs y bajos de Vds (parte inferior derecha de la figura):

-2-1.5

-1-0.5

00.5

0

1

2

30

10

20

30

40

50

Vgs(V)Vds(V)

Ids(

mA

)

Figura 6.32 Ids frente a Vgs,Vds del HEMT modelo foundry ED02AH con W=2*40 (salida tras simulación)

6.4.2 Transistor HEMT modelo foundry ED02AH con W=6*50 Para este transistor presentamos los siguientes datos experimentales, mostrados en tres tablas diferentes. He aquí la primera de ellas:

Vgs Vds 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 -2 0 0 0 0 0 0 0 0 0 0.0001 0.0001

-1.9 0 0 0 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 -1.8 0 0 0.0001 0.0001 0.0001 0.0002 0.0002 0.0002 0.0002 0.0003 0.0003 -1.7 0 0.0001 0.0001 0.0002 0.0003 0.0004 0.0004 0.0005 0.0005 0.0006 0.0007 -1.6 0 0.0002 0.0003 0.0005 0.0006 0.0008 0.0009 0.0011 0.0012 0.0014 0.0015 -1.5 0 0.0004 0.0008 0.0011 0.0015 0.0018 0.0022 0.0025 0.0028 0.0032 0.0035 -1.4 0 0.0009 0.0017 0.0025 0.0034 0.0042 0.005 0.0057 0.0065 0.0073 0.008 -1.3 0 0.002 0.0039 0.0058 0.0077 0.0095 0.0114 0.0132 0.0149 0.0167 0.0184 -1.2 0 0.0045 0.009 0.0133 0.0176 0.0219 0.026 0.0302 0.0342 0.0382 0.0422 -1.1 0 0.0103 0.0205 0.0305 0.0403 0.05 0.0596 0.069 0.0783 0.0875 0.0966 -1 0 0235 0.0466 0.0693 0.0917 0.1138 0.1355 0.157 0.1782 0.1991 0.2197

-0.9 0 0.0526 0.1044 0.1554 0.2056 0.2552 0.304 0.3521 0.3996 0.4465 0.4928 -0.8 0 0.1145 0.2272 0.3381 0.4474 0.5551 0.6613 0.7661 0.8694 0.9714 1.072 -0.7 0 0.2344 0.465 0.6918 0.9152 1.1355 1.3526 1.5668 1.778 1.9865 2.1922 -0.6 0 0.4351 0.8609 1.2779 1.6876 2.091 2.4886 2.8808 3.2676 3.6493 4.0259 -0.5 0 1.1927 2.1763 2.9713 3.6672 4.1383 4.9476 5.5638 6.1701 6.7678 7.3574 -0.4 0 5.1477 8.6615 10.7074 12.0102 13.0102 13.8925 14.2761 15.5357 16.3301 17.1124 -0.3 0 12.0627 19.9146 23.9851 26.1497 27.5473 28.657 29.6566 30.6095 31.5383 32.4508

Page 102: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

102

-0.2 0 20.7322 33.985 40.522 43.6789 45.4813 46.781 47.8942 48.933 49.9382 50.9227 -0.1 0 30.0915 49.1578 58.3248 62.5125 64.7091 66.1705 67.3629 68.4523 49.9382 50.9227

0 0 39.2571 64.0091 75.7376 80.9178 83.4821 85.0833 86.3349 87.4552 88.5207 89.5585 0.1 0 47.5742 77.4826 91.5298 97.6036 100.4942 102.2148 103.5127 104.6537 105.7309 106.7772 0.2 0 54.6683 88.9736 104.9963 111.8296 114.9956 116.815 118.1494 119.3051 120.3895 121.4401 0.3 0 60.4719 98.3737 116.0117 123.4652 126.8552 128.7544 130.1174 131.284 132.3729 133.4261 0.4 0 64.7325 105.2601 124.0811 131.9885 135.5423 137.4994 138.8831 140.0571 141.1491 142.2037 0.5 0 65.5112 106.5329 125.5762 133.5679 137.1521 139.1201 140.5078 141.6834 142.7761 143.831

Tabla 6.25 Valores de Ids medidos experimentalmente para valores de Vgs entre -2 y 0.5 voltios y valores de Vds entre 0 y 1 voltios en el HEMT modelo foundry con W=6*50

Vgs Vds 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2 -2 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001

-1.9 0.0001 0.0002 0.0002 0.0002 0.0002 0.0002 0.0002 0.0002 0.0002 0.0002 -1.8 0.0003 0.0003 0.0004 0.0004 0.0004 0.0004 0.0005 0.0005 0.0005 0.0005 -1.7 0.0007 0.0008 0.0008 0.0009 0.001 0.001 0.0011 0.0011 0.0012 0.0012 -1.6 0.0017 0.0018 0.0019 0.0021 0.0022 0.0023 0.0025 0.0026 0.0027 0.0028 -1.5 0.0038 0.0041 0.0044 0.0048 0.0051 0.0054 0.0057 0.006 0.0063 0.0065 -1.4 0.0088 0.0095 0.0102 0.0109 0.0116 0.0123 0.013 0.0137 0.0144 0.015 -1.3 0.0201 0.0218 0.0234 0.0251 0.0267 0.0283 0.0299 0.0314 0.033 0.0345 -1.2 0.0461 0.05 0.0538 0.0575 0.0613 0.0649 0.0685 0.0721 0.0757 0.0792 -1.1 0.1055 0.1144 0.01231 0.1317 0.1402 0.1486 0.1569 0.1651 0.1732 0.1812 -1 0.2401 0.2602 0.28 0.2996 0.3189 0.3381 0.3569 0.3756 0.394 0.4123

-0.9 0.5384 0.5835 0.628 0.672 0.7154 0.7583 0.8006 0.8425 0.8839 0.9248 -0.8 1.1713 1.2694 1.3662 1.4618 1.5563 1.6496 1.7417 1.8328 1.9228 2.0117 -0.7 2.3953 2.5957 2.7936 2.9891 3.1821 3.3728 3.5612 3.7474 3.9314 4.1132 -0.6 4.3977 4.7647 5.1271 5.485 5.8384 6.1876 6.5325 6.8734 7.2103 7.5432 -0.5 7.9394 8.5139 9.0811 9.6412 10.1945 10.741 11.2809 11.8144 12.3417 12.8628 -0.4 17.8841 18.6458 19.3977 20.1403 20.8737 21.5981 22.3139 23.0211 23.7201 24.4109 -0.3 33.3501 34.2375 35.1134 35.9784 36.8327 37.6766 38.5104 39.3342 40.1484 40.9531 -0.2 51.8919 52.8479 53.7916 54.7233 55.6435 56.5526 57.4507 58.3381 59.2151 60.0819 -0.1 71.5207 72.5101 73.4866 74.4507 75.4029 76.3434 77.2727 78.1909 79.0983 79.9952

0 90.5779 91.5826 92.5741 93.553 94.5198 95.4748 96.4183 97.3505 98.2719 99.1825 0.1 107.804 108.8157 109.8139 110.7993 111.7726 112.734 113.6838 114.6223 115.5498 116.4665 0.2 122.4705 123.4852 124.4864 125.4748 126.4509 127.4151 128.3676 129.3089 130.2391 131.1585 0.3 134.4581 135.4743 136.4768 137.4664 138.4438 139.4092 140.363 141.3055 142.2368 143.1574 0.4 143.2365 144.2534 145.2565 146.2467 147.2246 148.1905 149.1448 150.0878 151.0197 151.9408 0.5 144.8642 145.8813 146.8846 147.8751 148.8532 149.8194 150.774 151.7172 152.6493 153.5706

Tabla 6.26 Valores de Ids medidos experimentalmente para valores de Vgs entre -2 y 0.5 voltios y valores de

Vds entre 1.1 y 2 voltios en el HEMT modelo foundry con W=6*50

Vgs Vds 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 3 -2 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001 0.0001

-1.9 0.0003 0.0003 0.0003 0.0003 0.0003 0.0003 0.0003 0.0003 0.0003 0.0003 -1.8 0.0006 0.0006 0.0006 0.0006 0.0007 0.0007 0.0007 0.0007 0.0007 0.0008 -1.7 0.0013 0.0014 0.0014 0.0015 0.0015 0.0016 0.0016 0.0017 0.0017 0.0018 -1.6 0.003 0.0031 0.0032 0.0033 0.0035 0.0036 0.0037 0.0038 0.0039 0.004 -1.5 0.0068 0.0071 0.0074 0.0077 0.0079 0.0082 0.0085 0.0087 0.009 0.0093 -1.4 0.0157 0.0163 0.017 0.0176 0.0182 0.0188 0.0195 0.0201 0.30207 0.0213 -1.3 0.036 0.0375 0.039 0.0404 0.0419 0.0433 0.0477 0.0461 0.0475 0.0488 -1.2 0.0826 0.086 0.0894 0.0928 0.0961 0.0994 0.1026 0.1058 0.109 0.1121 -1.1 0.1891 0.197 0.2047 0.2124 0.2199 0.2274 0.2348 0.2422 0.2494 0.2566 -1 0.4303 0.4481 0.4657 0.4831 0.5004 0.5174 0.5343 0.551 0.5675 0.5838

-0.9 0.9652 1.0052 1.0447 1.0837 1.01224 1.1606 1.1984 1.2359 1.2729 1.3095

Page 103: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

103

-0.8 2.0997 2.1866 2.2726 2.3576 2.4417 2.5248 5.6071 2.6885 2.769 2.8487 -0.7 4.293 4.4707 4.6464 4.8202 4.9921 5.1621 5.3303 5.4967 5.6613 5.8243 -0.6 7.8723 8.1977 8.5194 8.8376 9.1523 9.4636 9.17715 10.0762 10.3776 10.6759 -0.5 13.3799 13.8872 14.3908 14.8889 15.3814 15.8686 16.3506 16.8274 17.2993 17.7662 -0.4 25.0938 25.769 26.4366 27.0968 27.7497 28.3956 29.0345 29.6666 30.2921 30.9111 -0.3 41.7486 42.535 43.3127 44.0817 44.8423 45.5946 46.3389 47.0752 47.8038 48.5249 -0.2 60.9388 61.7859 62.6236 63.4519 64.2712 65.0816 65.8833 66.6765 67.4613 68.238 -0.1 80.8819 81.7584 82.6251 83.4822 84.33 85.1685 85.998 86.8187 87.6308 88.4344

0 100.0827 100.9727 101.8527 102.7229 103.5836 104.4349 105.2771 106.1104 106.9349 107.7509 0.1 117.3728 118.2687 119.1546 120.0307 120.8971 121.7542 122.602 123.4409 124.2709 125.0923 0.2 132.0674 132.9659 133.8544 134.7331 135.602 136.4616 137.3119 138.1532 138.9857 139.8095 0.3 144.0674 144.9671 145.8567 146.7365 147.6066 148.4672 149.3186 150.161 150.9945 151.8194 0.4 152.8513 153.7515 154.6416 155.5219 156.3924 157.2536 158.1054 158.9483 159.7823 160.6076 0.5 154.4813 155.3818 156.2721 157.1525 158.0233 158.8846 159.7367 160.5797 161.4139 162.2394

Tabla 6.27 Valores de Ids medidos experimentalmente para valores de Vgs entre -2 y 0.5 voltios y valores de

Vds entre 2.1 y 3 voltios en el HEMT modelo foundry con W=6*50 Tras entrenar la red, se obtiene la siguiente tabla de resultados y fórmula correspondiente:

Io P1 Q1 Vp1 � mse -9.2004 -1.7237 5.3406 0.3375 0.1598 6.54919

Tabla 6.28 Valores de los parámetros de la red neuronal de la figura (5.31) tras su simulación

Ids = -9.2004 · [1 + tanh(-1.7237 · Vgs – 5.3406 · Vds – 0.3375)] · [tanh(0.1598 · Vds)] (6.17) Por último, nos queda representar la salida de la red neuronal tras la simulación para ver cómo de bueno es el ajuste obtenido. En esta figura se puede ver que es bastante bueno salvo por la diferencia de pendiente para Vgs = 0.5 V y para valores altos de Vgs y bajos de Vds:

-2-1.5

-1-0.5

00.5

0

1

2

30

50

100

150

200

Vgs(V)Vds(V)

Ids(

mA

)

Figura 6.33 Ids frente a Vgs,Vds del HEMT modelo foundry ED02AH con W=6*50 (salida teórica)

Page 104: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

104

-2-1.5

-1-0.5

00.5

0

1

2

30

50

100

150

200

Vgs(V)Vds(V)

Ids(

mA

)

Figura 6.34 Ids frente a Vgs,Vds del HEMT modelo foundry ED02AH con W=6*50 (salida tras simulación)

6.5 Aproximación de la curva Ids frente a Vgs, Vds (Modelo de Angelov)

En este apartado estudiamos otro modelo matemático mediante el que tratamos de obtener una nueva expresión de Ids frente a Vgs, Vds. Aquí usaremos de nuevo los datos experimentales correspondientes a los transistores HEMT modelo foundry con W=2*40 y W=6*50.

En este modelo, que trata de modelar dispositivos MESFET y HEMT, la extracción de

parámetros se realiza por simple inspección de las características DC obtenidas experimentalmente, es decir, Ids(Vgs, Vds) y gm(Vgs). De este modo, Ids podrá ser modelada con precisión, al igual que se podrá hacer con sus derivadas.

Podemos definir Ids, en este modelo, por medio de la siguiente expresión:

Ids = Ipk[1+tanh(�)]·(1+�·Vds)·tanh(�·Vds) (6.18)

donde Ipk es la corriente de drenador a la que se tiene mayor transconductancia, � es el parámetro de modulación de la longitud del canal, y � es el parámetro de tensión de saturación. Por último, � es, en general, una serie de potencias de la variable Vds centrada en Vpk:

� = P1·(Vgs – Vpk) + P2·(Vgs – Vpk)2 + P3·(Vgs – Vpk)3 + … (6.19) donde Vpk es la tensión de puerta para la transconductancia máxima. Esta función Ids tiene derivadas

Page 105: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

105

bien definidas y una de lasa ventajas de este modelo es su simplicidad. Sustituyendo la expresión (6.19) en la (6.18) tenemos el modelo ya definido por: Ids = Ipk[1+tanh(P1·(Vgs – Vpk) + P2·(Vgs – Vpk)2 + P3·(Vgs – Vpk)3 + …)]·(1+�·Vds)·tanh(�·Vds) (6.20) Podríamos ya realizar la red neuronal que simulara la expresión anterior y entrenarla con los datos experimentales. No obstante, esta expresión se puede reducir y, de este modo podremos comparar la potencia de este modelo con el anterior (GSR1); en la ecuación (5.20) vemos que tenemos 7 parámetros ajustables mientras que el modelo GSR1 disponía sólo de cinco. Por este motivo pasamos a la siguiente expresión (tomando sólo el primer orden de la serie de potencias): Ids = Ipk[1+tanh(P1·(Vgs – Vpk))]·(1+�·Vds)·tanh(�·Vds) = Ipk[1+tanh(P1·Vgs – Q1)]·(1+�·Vds)·tanh(�·Vds) (6.21) donde hemos llamado Q1 a P1·Vpk. La red neuronal que simularía esta expresión sería la siguiente:

Figura 6.35 Representación neuronal del modelo Angelov

-Q1

tanh

P1

Ipk

Vgs

Ids

1

Vds

1

1

tanh

purelin

purelin con netInput.Fcn=’netprod’

purelin

1

1

purelin

1

Page 106: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

106

A continuación mostramos los resultados tras entrenar las redes neuronales con los datos experimentales, distinguiendo entre los dos tipos de transistores. 6.5.1 Transistor HEMT modelo foundry ED02AH con W=2*40

Los valores que se han obtenido en este caso se muestran en la tabla siguiente:

Ipk Vpk � � P1 mse

1.4489 3.7495 1.4660 1.9171 -0.4403 0.289825

Tabla 6.29 Valores de los parámetros de la red neuronal de la figura (6.35) para W=2*40 Estos valores dan lugar a la siguiente expresión matemática:

Ids = 1.4489[1 + tanh(-0.4403·Vgs + 1.6509)]·(1 + 1.4660·Vds)·tanh(1.9171·Vds) (6.22) A continuación mostramos tanto la gráfica obtenida de los datos experimentales como la

lograda tras la simulación de la red neuronal. En ambas gráficas, las tensiones Vgs, Vds están medidas en voltios (plano del suelo de las figuras) mientras que Ids se mide en miliamperios (altura de las figuras):

-2-1.5

-1-0.5

00.5

0

1

2

30

10

20

30

40

50

Vgs(V)Vds(V)

Ids(

mA

)

Figura 6.36 Ids frente a Vgs,Vds del HEMT modelo foundry ED02AH con W=2*40 (salida teórica)

Page 107: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

107

-2-1.5

-1-0.5

00.5

0

1

2

30

10

20

30

40

50

Vgs(V)Vds(V)

Ids(

mA

)

Figura 6.37 Ids frente a Vgs,Vds del HEMT modelo foundry ED02AH con W=2*40 (salida tras la simulación)

6.5.2 Transistor HEMT modelo foundry ED02AH con W=6*50 Procediendo igual que para el caso anterior, obtenemos la siguiente tabla de valores:

Ipk Vpk � � P1 mse

5.2717 29.3157 0.4104 -0.8778 0.0769 3.80874

Tabla 6.30 Valores de los parámetros de la red neuronal de la figura (5.35) para W=6*50 Dichos valores nos hacen llegar a la siguiente expresión: Ids = 5.2717 [1 + tanh(0.0769·Vgs - 2.2544)]·(1 + 0.4104·Vds)·tanh(-0.8778·Vds) (6.23)

Ahora, para finalizar, vemos las figuras correspondientes a la representación de los datos experimentales y a la representación de la salida de la red neuronal que hemos empleado aquí. Se puede observar, al igual que en el caso del otro transistor, que existen leves diferencias tanto para Vgs = 0.5 (parte superior de la figura (6.38)) y para valores bajos de Vds y altos de Vgs (parte inferior derecha de la figura (6.39)). Asimismo, podemos ver que los resultados obtenidos con el modelo de Angelov reducido a cinco parámetros son muy parecidos a los del modelo GSR1, cosa que era de esperar ya que tienen el mismo número de parámetros para realizar bien el ajuste.

Page 108: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

108

-2-1.5

-1-0.5

00.5

0

1

2

30

50

100

150

200

Vgs(V)Vds(V)

Ids(

mA

)

Figura 6.38 Ids frente a Vgs,Vds del HEMT modelo foundry ED02AH con W=6*50 (salida teórica)

-2-1.5

-1-0.5

00.5

0

1

2

30

50

100

150

200

Vgs(V)Vds(V)

Ids(

mA

)

Figura 6.39 Ids frente a Vgs,Vds del HEMT modelo foundry ED02AH con W=6*50 (salida tras la simulación)

Page 109: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

109

6.6 Evaluación de los resultados

En este apartado pretendemos realizar una comparativa entre los diferentes modelos empleados para realizar una aproximación de la intensidad de drenador o de la transconductancia en función de la tensión de puerta, así como de la intensidad de drenador en función de las tensiones de puerta y drenador. Para ello, veremos unas tablas en las que reflejaremos los errores cuadráticos de cada modelo para los dos tipos de transistores distintos usados. Veamos la tabla que muestra la aproximación de la curva de Ids frente a la tensión de puerta Vgs:

Ids W = 2*40, Vds = 3V W = 6*50, Vds = 1.4V 1 neurona 0.0977493 1.69802 2 neuronas 0.0977493 1.69802 3 neuronas 0.0977493 1.69802

Tabla 6.31 Valores de los errores mse de las redes neuronales que aproximan Ids frente a Vgs.

En esta tabla se observa que, para obtener una expresión matemática sencilla que relacione Ids con Vgs, lo mejor es utilizar el modelo de una neurona con función de activación tangente hiperbólica, ya que la inclusión de más neuronas no contribuye significativamente a mejorar dicha aproximación. Esto es debido a que los datos experimentales forman una curva que presenta un gran parecido a una tangente hiperbólica. Por último, podemos decir que no podemos realizar una comparación entre ambos transistores, debido a que presentan rangos diferentes de valores para la corriente de drenador. A continuación se muestra la tabla de errores cuadráticos medios del ajuste de la transconductancia gm frente a la tensión de puerta Vgs:

gm W = 2*40, Vds = 3V W = 6*50, Vds = 1.4V 1 neurona (exponencial cuadrática) 6.20138·10-6 1.05739·10-4 2 neuronas (exponencial cuadrática) 3.26345·10-6 3.72394·10-5

2 neuronas (tangente hiperbólica) 1.98732·10-6 2.12860·10-5 3 neuronas (exponencial cuadrática) 1.28457·10-6 1.26457·10-5

3 neuronas (tangente hiperbólica) 1.01685·10-6 1.52415·10-5

Tabla 6.32 Valores de los errores mse de las redes neuronales que aproximan gm frente a Vgs.

En la tabla anterior vemos que se obtienen unos buenos ajustes atendiendo a los valores de mse que se consiguen. Así, en el HEMT con W=2*40 y Vds=3V, el error mse disminuye conforme aumentamos el número de neuronas en la capa oculta. Lo mismo ocurre con el de W=6*50 y Vds=1.4V en el que, además, podemos resaltar que con dos tangentes hiperbólicas o más en la capa intermedia se consigue un gran ajuste de la curva de gm frente a Vgs.

Por último, para finalizar con este apartado de evaluación de resultados, nos queda recordar

los valores de los errores mse para el caso del ajuste de la corriente de drenador frente a las tensiones de puerta y drenador (modelo GSR1 y modelo de Angelov):

Page 110: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

110

Ids W = 2*40, Vds = 3V W = 6*50, Vds = 1.4V Modelo GSR1 0.465638 6.54919

Modelo de Angelov 0.289825 3.80874 Tabla 6.33 Valores de los errores mse de las redes neuronales que aproximan Ids frente a Vgs y Vds Como podemos ver en la tabla, el modelo de Angelov, que en un principio tenía siete parámetros, pero que lo reducimos a cinco para poder compararlo en igualdad de condiciones con el modelo GSR1, presenta mejores ajustes para ambos transistores.

7 Aplicación de las redes neuronales para la creación de un predistorsionador con memoria

7.1 Fundamento teórico

En la mayoría de sistemas de radio digital, existen muchas fuentes de distorsión no lineal,

pero la principal es la que introduce el amplificador de alta potencia (HPA: high-power amplifier) usado en el transmisor. La no linealidad de un HPA típico (un TWT o un amplificador FET de GaAs) afecta tanto a la amplitud como a la fase de la señal amplificada. Además, éste puede ser considerado como sin memoria, es decir, el HPA es un sistema no lineal bajo un amplio rango de condiciones operacionales. No obstante, en la práctica, el transmisor contiene un modulador, en banda base (BB) o a frecuencia intermedia (FI) en todos los sistemas de radio digital. Por tanto, el sistema en BB completo (transmisor-HPA no lineal-receptor) es un sistema no lineal con memoria. La presencia de esta distorsión no lineal puede presentar serios problemas para el uso de formatos de alta capacidad, como es la modulación QAM. Los efectos del canal no lineal con memoria sobre la señal QAM son múltiples, pero tres de ellos tienen una especial importancia, que son los que detallamos a continuación: 1. Ensanchado espectral.

El espectro de la señal amplificada, tras el HPA, es mucho más amplio que el de la señal antes del HPA. Esto puede provocar interferencia entre canales, por lo que la señal ha de pasarse por un filtro de radiofrecuencia, con la consiguiente pérdida en el nivel de la señal y el incremento de la distorsión.

2. Interferencia inter-símbolo (ISI).

Desde que los sistemas completos (transmisor-HPA-receptor) tienen memoria, cada símbolo del alfabeto QAM, usualmente referido a una constelación de puntos, se convierte en el receptor en un cluster (racimo) de puntos debido a la interferencia entre símbolos en los instantes de muestreo.

3. Deformación de la constelación.

Los respectivos centros de gravedad de los clusters originados por la ISI no son más grandes que una semilla rectangular en la constelación original.

Page 111: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

111

Se han seguido dos planteamientos diferentes para hacer frente a las no linealidades del enlace. El primero está basado en la idea de aceptar el canal no lineal tal y como es, sin intentar hacer nada que modifique su comportamiento, y diseñar un receptor que minimice los efectos de ISI, no linealidades y ruido. Una técnica óptima de este planteamiento es el algoritmo de Viterbi (MLSE). Sin embargo, su complejidad de procesamiento ha sugerido varios esquemas de ecualización subóptimos menos demandados, cuya mayor limitación es la alta sensibilidad al ruido. El segundo está basado en la idea de compensar la no linealidad antes de la adición del ruido, es decir, en el lado transmisor del canal. Las técnicas basadas en este planteamiento, generalmente conocidas como técnicas de predistorsión, intentan linealizar la característica del HPA predistorsionando la señal de entrada de forma que la cascada predistorsionador-amplificador-receptor se asemeje tanto como sea posible a una canal libre de ISI. Estos predistorsionadores pueden ser divididos, a su vez, en dos categorías: 1. Predistorsionador de la señal analógica.

Consiste en transformar las señales de onda continua IF o RF. Sus principales desventajas es que no es capaz de hacer frente a cambios en la característica del HPA y que no proporciona control automático de potencia transmitida.

2. Predistorsionador de datos.

Explota la posibilidad de recuperar la no linealidad del HPA con un filtrado no lineal de la secuencia de símbolos antes de entrar al modulador. Es más adecuado para una implementación digital y, algunas veces, es más fácil de hacer adaptativo.

Nosotros nos encargamos aquí del estudio del predistorsionador de datos. Han sido propuestas dos técnicas para llevar a cabo la implementación de este tipo de predistorsionador:

· Una basada en sistemas no lineales de orden finito p inversos. Basado en un modelo de HPA, se deriva fácilmente una representación en series de Volterra del sistema completo en tiempo discreto. Así, un filtro no lineal de orden p (representado por otra serie de Volterra) es usado para pre-ecualizar el sistema completo.

· Otra, llamada compensación global, considera, en cambio, el error entre la señal en el punto de decisión y la secuencia de símbolos deseada (secuencia de entrenamiento). La técnica de compensación global da una mejor actuación que el inverso de orden p.

Además, con la compensación global no se necesita modelar la no linealidad, que es una operación difícil de realizar. Por lo que respecta a las dificultades prácticas de la técnica de compensación global, no es sencillo realimentar los errores desde el lado receptor al transmisor. Lo que se hace es transmitir una secuencia de entrenamiento y se usa el algoritmo de adaptación para encontrar un compensador no lineal de las no linealidades del HPA. Así, el propósito de este capítulo es presentar una nueva técnica de predistorsión de datos

Page 112: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

112

basada en una red neuronal. La mayor diferencia de esta técnica con respecto a anteriores es que ahora se introduce un control de la forma espectral de la salida del HPA. Esto se obtiene optimizando la red neuronal con el objetivo de que el conjunto formado por el predistorsionador, el modulador y el HPA se comporte como un sistema lineal. 7.2 Red neuronal como predistorsionador de datos Es conocido que algunos modelos de redes neuronales artificiales han tenido una gran variedad de aplicaciones en procesamiento de señal digital. En particular, la estructura del perceptrón multicapa (MLP) ha sido muy usada en procesamiento no lineal de señales con valores reales. Para esta estructura, la técnica más común para determinar los coeficientes de valores reales es el algoritmo backpropagation (BP). El transmisor en banda base equivalente clásico con predistorsión de datos y compensación global es mostrado a continuación:

Figura 7.1 Esquema del sistema completo de compensación global Por simplicidad, se ha considerado ideal el canal después del HPA y por esa razón se ha omitido en la figura; {a(kTo)} es el paquete de datos de entrada (To es el periodo de símbolo); {b(kTo)} es el paquete de datos predistorsionados y {c(kTo)} es la señal en el punto de decisión. Asimismo, gT(t) y gR(t) son, respectivamente, las respuestas al impulso del modulador y demodulador. Generalmente, ambas son raíces de coseno alzado con factor de roll-off igual a �. La diferencia entre el símbolo de entrada a(kTo) y la señal c(kTo) es usada para actualizar el predistorsionador de acuerdo al criterio de minimizar el error cuadrático medio mse. En cualquier caso, sólo por diseñar un predistorsionador que minimice el error entre la salida del HPA y la señal ideal no distorsionada, es posible construir un sistema que pueda reducir efectivamente los efectos no lineales indeseados y, al mismo tiempo, la interferencia entre canales.

+

gT(t)

gR(t)

HPA

To

To

To

To

a(kTo)

b(kTo) v(t) u(t)

kTo

c(kTo)

adapt

Demodulador

Modulador

Page 113: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

113

Basado en el error entre la salida (tras el amplificador) y la entrada (antes del predistorsionador), el esquema adaptativo general para determinar los pesos de la red neuronal es ilustrado en la siguiente figura:

Figura 7.2 Esquema general de la red neuronal como predistorsionador

Este modelo es usado para acelerar la convergencia del proceso. En efecto, la estimación no necesita ser muy exacta porque el esquema sólo es usado en el modo feedback para realimentar el error para atrás hacia el MLP.

Por último, hacemos notar que en la realización de la red neuronal, hemos de tener que la

última capa corresponde al HPA, y que, para encontrar los valores de los coeficientes del predistorsionador, empleamos el algoritmo el backpropagation de valores complejos.

7.3 Resultados de las simulaciones 7.3.1 Situación de partida Partimos de una señal QPSK de 512 símbolos que entran en un amplificador, el cual no sólo amplifica, sino que también desplaza los puntos respecto de su posición original. De ese modo, obtenemos una versión rotada de los símbolos de entrada amplificados. Los parámetros de la señal de entrada son Rb = 3.84Mbps y conformación del pulso raíz de coseno alzado. Hacemos notar que el amplificador usado se basa en un modelo no lineal ED02AH de transistor ya estudiado en el capítulo 6 en otro tipo de aplicación de redes neuronales.

gT(t)

HPA’

To

To

To

To

a(kTo)

b(kTo)

M L P

e(pTs)

v(kTo+qTs)

Page 114: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

114

Podemos representar la salida de este esquema, al igual que su densidad espectral de potencia, para ver que es lo que tenemos:

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

-1.5

-1

-0.5

0

0.5

1

1.5

2Constelacion a la entrada (rojo) y a la salida (azul)

Figura 7.3 Constelación a la entrada (rojo) y salida (azul) del amplificador sin predistorsionador

5.78 5.785 5.79 5.795 5.8 5.805 5.81 5.815 5.82 5.825-120

-100

-80

-60

-40

-20

0

20

Frecuencia (GHz)

Densidad Espectral de Potencia

PS

D (d

B)

Figura 7.4 Densidad espectral de potencia a la entrada (rojo) y salida (azul) del amplificador sin predistorsionador

Como podemos ver en la gráfica (7.3), la constelación de puntos de la salida está desplazada frente a los de la entrada. Esto es lo que pretendemos solucionar con el uso del predistorsionador, del mismo modo que se pretende que la caída de la psd de entrada del canal

Page 115: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

115

adyacente con respecto al canal principal sea lo mayor posible. Además, estudiaremos los diferentes valores de los errores cuadráticos medios para cada uno de ellos para ver si se consigue el objetivo. Así, para tener una referencia de la situación de la que partimos hemos calculado que el error cuadrático medio que tenemos aquí es de -7.6596 dB. Ahora pasamos a estudiar el modelo de predistorsionador empleado así como los resultados obtenidos con él. 7.3.2 Predistorsionador El predistorsionador empleado en esta aplicación está formado por una capa de entrada compuesta de tres neuronas lineales, seguida de una capa con función de transferencia no lineal sigmoidal, tras la cual aparece la capa de salida. Esta capa de salida consta de una sola neurona, que se trata del propio amplificador HPA. Hay que hacer notar que esta capa no sufre ajuste alguno, sino que simplemente realiza la amplificación de los datos que le llegan. Podemos ver la estructura de este predistorsionador en la siguiente figura:

Figura 7.5 Esquema de la red neuronal que actúa como predistorsionador

En la figura anterior podemos ver que consideramos la salida igual a la entrada, en primera aproximación, ya que lo que pretendemos es que el predistorsionador evite la distorsión que introduce el amplificador HPA, es decir, que presente los datos amplificados pero no rotados o girados (en realidad, la salida estaría compuesta de los datos amplificados por un valor, pero nosotros representamos la salida normalizada respecto a sí misma, por lo que el factor de amplificación desaparece, y de ahí que pongamos la salida igual a la entrada).

hpa logsig

purelin

purelin

purelin

Constelación QPSK

Constelación QPSK

Page 116: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

116

7.3.3 Evaluación de los resultados obtenidos En este apartado, vamos a ver los resultados que hemos logrado con este predistorsionador. Para ello, representamos las gráficas de las constelaciones y densidades espectrales de potencia (del mismo modo que en las figuras (7.3) y (7.4)) para el caso de que introduzcamos el predistorsionador en el sistema completo:

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

-1.5

-1

-0.5

0

0.5

1

1.5

2Constelacion a la entrada (rojo) y a la salida (azul)

Figura 7.6 Constelación a la entrada (rojo) y salida (azul) del amplificador con predistorsionador

5.78 5.785 5.79 5.795 5.8 5.805 5.81 5.815 5.82 5.825-120

-100

-80

-60

-40

-20

0

20

Frecuencia (GHz)

Densidad Espectral de Potencia

PS

D (d

B)

Figura 7.7 Densidad espectral de potencia a la entrada (rojo) y salida (azul) del amplificador con predistorsionador

Page 117: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

117

En las dos gráficas anteriores podemos observar que la introducción del predistorsionador empleado apenas mejora la constelación obtenida sin el uso del mismo pero, sin embargo, produce una evidente mejoría en cuanto a las densidades espectrales de potencia a la entrada y salida del amplificador. Para que esta mejoría resulte más evidente, aquí mostramos la comparación de las densidades espectrales de potencia a la entrada del amplificador sin predistorsionador (rojo) y con él (azul):

5.795 5.796 5.797 5.798 5.799 5.8 5.801 5.802 5.803 5.804 5.805-60

-50

-40

-30

-20

-10

0

10

20

Frecuencia (GHz)

PS

D (d

B)

DSP a la entrada del HPA sin predistorsionador (rojo) y con él (azul)

Figura 7.8 Detalle de la comparación de densidades espectrales de potencia a la entrada del amplificador con predistorsionador (azul) y sin él (rojo)

En las dos gráficas anteriores podemos observar que la introducción del predistorsionador empleado apenas mejora la constelación obtenida sin el uso del mismo pero, sin embargo, produce una evidente mejoría en cuanto a las densidades espectrales de potencia a la entrada y salida del amplificador. Como podemos ver en la figura (7.8), mientras que sin usar predistorsionador teníamos una caída de 20 a 25 decibelios del lóbulo principal frente al lóbulo secundario (correspondiente al canal adyacente), en el caso de emplear dicho predistorsionador, esta caída aumenta a unos 45 decibelios. Esto es de gran importancia porque nos permite, entre otras cosas, poder transmitir señales UMTS, cosa que antes era inviable, ya que la caída necesaria entre un canal y el adyacente (lóbulos principal y secundario de la densidad espectral de potencia) para este tipo de señales es del orden de unos 40 dB.

Page 118: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

118

Asimismo, podemos decir que, en este caso, se produce una mejoría también en cuanto al error cuadrático medio, el cual ahora es de -16.8443 dB (frente a los -7.6596 dB del caso anterior). 7.3.3.1 Constelación y PSD para diferentes potencias de entrada 7.3..3.1.1 Resultados para Pin = -1 dBm

Los resultados que hemos analizado anteriormente se han obtenido para una potencia de

entrada de Pin = -5 dBm. En este apartado, vamos a presentar los resultados que se obtienen para una potencia superior (Pin = -1 dBm) y otra inferior (Pin = -10 dBm) que, respectivamente, hacen que las diferencias entre las densidades espectrales de potencia a la entrada y a la salida del sistema sin predistorsionador sean de 10 y 40 dB aproximadamente. En el caso de Pin = -5 dBm, esa diferencia era de 30 dB. De este modo, para Pin = -1 dBm, tenemos, sin usar predistorsionador, lo siguiente:

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

-1.5

-1

-0.5

0

0.5

1

1.5

2Constelacion a la entrada (rojo) y a la salida (azul)

Figura 7.9 Constelación a la entrada (rojo) y salida (azul) del amplificador sin predistorsionador (Pin = -1 dBm)

5.78 5.785 5.79 5.795 5.8 5.805 5.81 5.815 5.82 5.825-100

-80

-60

-40

-20

0

20

Frecuencia (GHz)

Densidad Espectral de Potencia

PS

D (d

B)

Figura 7.10 Densidad espectral de potencia a la entrada (rojo) y salida (azul) del amplificador sin predistorsionador (Pin = -1 dBm)

Page 119: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

119

Usando el predistorsionador, obtenemos lo siguiente:

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

-1.5

-1

-0.5

0

0.5

1

1.5

2Constelacion a la entrada (rojo) y a la salida (azul)

Figura 7.11 Constelación a la entrada (rojo) y salida (azul) del amplificador con predistorsionador (Pin = -1 dBm)

5.78 5.785 5.79 5.795 5.8 5.805 5.81 5.815 5.82 5.825-120

-100

-80

-60

-40

-20

0

20

Frecuencia (GHz)

Densidad Espectral de Potencia

PS

D (

dB)

Figura 7.12 Densidad espectral de potencia a la entrada (rojo) y salida (azul) del amplificador con predistorsionador (Pin = -1 dBm)

A primera vista, parece ser que ocurre algo parecido a lo que sucedió en el caso de Pin = -5 dBm. Es decir, la mejora en la constelación no es apenas notable, pero, no obstante, la mejora en la densidad espectral es evidente. A continuación, en la figura (7.13), mostramos la diferencia de densidades espectrales de potencia a la entrada y a la salida del sistema. En dicha figura apreciamos una mejoría de en torno a 10 dB.

Page 120: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

120

5.795 5.796 5.797 5.798 5.799 5.8 5.801 5.802 5.803 5.804 5.805-60

-50

-40

-30

-20

-10

0

10

20

Frecuencia (GHz)

PS

D (d

B)

DSP a la entrada del HPA sin predistorsionador (rojo) y con él (azul)

Figura 7.13 Detalle de la comparación de densidades espectrales de potencia a la entrada del amplificador

con predistorsionador (azul) y sin él (rojo) para Pin = -1 dBm

Además, el error cuadrático medio mejora de -5.7389 dB (caso sin predistorsionador) a -9.4883 dB (caso con predistorsionador).

7.3..3.1.2 Resultados para Pin = -10 dBm En este caso, obtenemos las siguientes gráficas:

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

-1.5

-1

-0.5

0

0.5

1

1.5

2Constelacion a la entrada (rojo) y a la salida (azul)

Figura 7.14 Constelación a la entrada (rojo) y salida (azul) del amplificador sin predistorsionador (Pin = -10 dBm)

Page 121: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

121

5.78 5.785 5.79 5.795 5.8 5.805 5.81 5.815 5.82 5.825-120

-100

-80

-60

-40

-20

0

20

Frecuencia (GHz)

Densidad Espectral de Potencia

PS

D (d

B)

Figura 7.15 Densidad espectral de potencia a la entrada (rojo) y salida (azul) del amplificador sin predistorsionador (Pin = -10 dBm)

Observando las figuras (7.14) y (7.15) vemos que se logran mejores resultados que para los casos de Pin = -1 dBm y de Pin = -5 dBm. Veamos ahora la comparación entre las densidades espectrales de potencia a la entrada y salida:

5.795 5.796 5.797 5.798 5.799 5.8 5.801 5.802 5.803 5.804 5.805-60

-50

-40

-30

-20

-10

0

10

20

Frecuencia (GHz)

PS

D (d

B)

DSP a la entrada del HPA sin predistorsionador (rojo) y con él (azul)

Figura 7.16 Detalle de la comparación de densidades espectrales de potencia a la entrada del amplificador

con predistorsionador (azul) y sin él (rojo) para Pin = -10 dBm

Page 122: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

122

En cuanto al error cuadrático medio, éste pasa de -10.5490 dB (caso sin predistorsionador) a -13.9290 dB (caso con predistorsionador).

7.3.3.2 Resultados en el dominio del tiempo

En este apartado mostramos la señal en el tiempo y su diagrama de ojo, tanto a la entrada como a la salida del sistema (en este caso, presentamos tanto los resultados cuando usamos predistorsionador, como cuando no lo usamos). Así, para la señal de entrada, su representación temporal y su diagrama de ojo son los siguientes (para el caso de Pin = -5 dBm):

Figura 7.17 Representación de la señal a la entrada del sistema

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1Señal en el tiempo a la salida sin predistorsionador (envolvente compleja)

Figura 7.18 Representación de la señal a la salida del sistema sin usar predistorsionador

Page 123: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

123

-0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6Señal en el tiempo a la salida con predistorsionador (envolvente compleja)

Figura 7.19 Representación de la señal a la salida del sistema usando predistorsionador

Como vemos en estas gráficas, la salida está rotada frente a la entrada (ver figuras (7.17) y (7.18)). Por otro lado, al introducir el predistorsionador, se aprecia una ligera mejoría en la rotación de la constelación pero, sin embargo, la amplitud de los datos se ve disminuida considerablemente. La aparición de este hecho, a pesar de su estudio, no ha podido ser justificada.

En cuanto a los diagramas de ojo, se obtienen las siguientes representaciones gráficas:

-0.5 0 0.5-0.5

0

0.5

Time

Am

plitu

de

Eye Diagram for In-Phase Signal

-0.5 0 0.5-0.5

0

0.5

Time

Am

plitu

de

Eye Diagram for Quadrature Signal

Figura 7.20 Diagrama de ojo de la señal a la entrada del sistema

Page 124: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

124

-0.5 0 0.5-1

-0.5

0

0.5

1

TimeA

mpl

itude

Eye Diagram for In-Phase Signal

-0.5 0 0.5-1

-0.5

0

0.5

1

Time

Am

plitu

de

Eye Diagram for Quadrature Signal

Figura 7.21 Diagrama de ojo de la señal a la salida del sistema sin usar predistorsionador

-0.5 0 0.5-1

-0.5

0

0.5

1

Time

Am

plitu

de

Eye Diagram for In-Phase Signal

-0.5 0 0.5-1

-0.5

0

0.5

1

Time

Am

plitu

de

Eye Diagram for Quadrature Signal

Figura 7.22 Diagrama de ojo de la señal a la entrada del sistema usando predistorsionador

Como vemos en estas tres últimas figuras, apreciamos que la amplitud del ojo es mucho menor en la salida que en la entrada pudiendo ser más fácil la confusión de símbolos. Asimismo, se observa que, a pesar de que la amplitud de la apertura del diagrama de ojo sea

Page 125: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

125

sea menor en el caso de usar la red con predistorsionador, se puede ver que la amplitud de los símbolos es menor.

Estos resultados que hemos mostrado en el dominio del tiempo eran para una potencia

de entrada de Pin = -5 dBm.

7.4 Conclusiones A lo largo de este capítulo 7 hemos estudiado los diferentes resultados obtenidos tanto en el dominio del tiempo como en el de la frecuencia, para diferentes valores de la potencia de entrada. Analizando los resultados obtenidos, podemos decir, en el caso de la constelación de salida respecto a la de entrada que, conforme bajamos la potencia de entrada mejor ajuste se tiene de la potencia de salida frente a la de entrada (el mejor ajuste se obtiene para el caso de Pin = -10 dBm con predistorsionador). Todo esto lo podemos decir con las reservas necesarias de que no se obtienen unos resultados excesivamente buenos. Con respecto al caso de las densidades espectrales de potencia, podemos ver la siguiente tabla resumen (valores medidos en la primera frecuencia de corte: f = 5.795 GHz):

Pin Caída con/sin

predistorsionador -1 dBm 10.6 dB -5 dBm 24.6 dB

-10 dBm 35.5 dB

Tabla 7.1 Resumen de las mejoras obtenidas por el uso del predistorsionador en la PSD para las diferentes potencias

En la tabla anterior se refleja que cuanto menor es la potencia de entrada, mayor es la mejora obtenida con el predistorsionador. Por último, podemos estudiar el error cuadrático medio para los diferentes casos. Este estudio se refleja en la siguiente tabla:

Pin mse sin

predistorsionador mse con

predistorsionador -1 dBm -5.7389 dB -9.4883 dB -5 dBm -7.6596 dB -16.8443 dB

-10 dBm -10.5490 dB -13.9290 dB

Tabla 7.2 Resumen de los errores cuadrático medio para los sistemas con y sin predistorsionador para las diferentes potencias

En esta tabla vemos que, con el uso del predistorsionador, para, cualquiera que sea la potencia de entrada, el error cuadrático medio es menor que si no usamos dicho predistorsionador.

Page 126: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

126

8 Conclusiones y nuevas líneas de investigación En este capítulo expondremos las conclusiones a las que hemos llegado con el desarrollo del proyecto. Asimismo, analizaremos unas posibles nuevas líneas de investigación que se podrían seguir para ampliar el mismo. 8,1 Conclusiones En esta memoria hemos visto dos aplicaciones diferentes que se pueden realizar con redes neuronales como muestra de la gran versatilidad que poseen (usándose en numerosos campos de aplicación).

En la primera de ellas, en la que intentábamos aproximar la función de transferencia de la red neuronal (salida e función de la entrada) a la gráfica en la que se reflejaban datos experimentales (tanto de entrada como de salida, creando otra función de transferencia) hemos podido observar cómo, a medida que aumentábamos la complejidad de la red neuronal, añadiendo más neuronas a la capa oculta, este ajuste mejoraba.Del mismo modo, en los casos en los que comparábamos el ajuste obtenido cuando usábamos una sigmoide como función de activación y cuándo usábamos una tangente hiperbólica, era con esta segunda con la que se obtenían mejores resultados. Por tanto, aquí podríamos concluir con que los mejores resultados se han obtenido para redes con tres neuronas en la capa oculta y que usan como funciones de activación tangentes hiperbólicas.

Sobre la segunda aplicación, en la que se pretendía eliminar el efecto de distorsión que produce un amplificador HPA sobre una señal que pasa por él creando un predistorsionador, podemos decir que, en cuanto a la rotación que sufre la constelación de entrada a la salida de dicho HPA, ésta no sufre excesivas mejoras. No obstante, para el caso de la densidad espectral de potencia veíamos que, al usar el predistorsionador, se produce una mejora ostensible del espectro a la salida (baja muchos decibelios la potencia del canal adyacente a la entrada del HPA de usar predistorsionador a no usarlo). Esta mejora crece conforme la potencia de entrada es menor, llegando a haber una mejora de unos 35 dB para el caso de Pin = -10 dBm como vimos en las conclusiones del capítulo anterior.

De este modo, lo que hemos logrado con la realización de este proyecto es que podamos ver dos de las posibles aplicaciones de las redes neuronales al campo de la radiocomunicación. Asimismo, hemos visto cómo se optimizan los resultados modificando la estructura de las redes (aplicación de ajuste de FETs) y cómo es posible mejorar la PSD de una señal (aplicación de predistorsionador de HPA) para, por ejemplo, disminuir la interferencia del canal adyacente. 8.2 Nuevas líneas de investigación En este apartado exponemos las diferentes continuaciones o líneas de avance que proponemos para seguir el proyecto que hemos descrito en esta memoria. Una primera línea de investigación a proponer sería la de mejorar los resultados obtenidos con el predistorsionador modificando la estructura de la red neuronal que hemos propuesto en esta

Page 127: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

127

memoria. La principal mejora a buscar sería la de evitar la rotación de la constelación al pasar los datos por el HPA, ya que en cuanto a la densidad espectral de potencia, los resultados obtenidos son buenos. Por otro lado, se podría abrir el abanico de posibles aplicaciones relacionadas con las redes neuronales. De esta manera, sin salirnos del campo de las radiocomunicaciones, se podría realizar un estudio de las redes neuronales aplicados a distintos ámbitos, como por ejemplo la cobertura de estaciones de radio (estableciendo un mínimo de potencia que debería llegar al área de cobertura de una estación base para poder establecer comunicación). Del mismo modo, introduciéndonos en el campo del tratamiento digital de señales, se podrían realizar aplicaciones relacionadas con imágenes (muy útiles en biomedicina, como la identificación de manchas en la piel) o relacionadas con la voz, como el reconocimiento de la misma. A modo de ejemplo, describimos aquí brevemente los pasos que seguiríamos para realizar este reconocimiento de voz mediante redes neuronales: 1) Digitalizamos la voz que queremos reconocer.

2) Las características que representan el contenido del dominio espectral de la voz (regiones de fuerte energía a frecuencias particulares) son calculadas. Estas características se calculan cada 10 milisegundos, con una sección de 10 milisegundos llamada frame.

3) Un perceptrón multicapa (o red neuronal) es usado para clasificar un conjunto de estas categorías en categorías basadas en cada frame.

4) Una búsqueda Viterbi es usada para comparar los promedios de la red neuronal con los de las palabras objetivo (palabras que posiblemente estén contenidas en la entrada de voz) para determinar la palabra que fue más probablemente completa.

5) La detección de la palabra se realiza y se mide la confianza que tenemos en la palabra con mayor promedio. La palabra es aceptada si la probabilidad es suficientemente alta.

Estos serían, de modo resumido, los pasos a seguir para realizar el reconocimiento de voz a partid de redes neuronales. Por último, y tratando esto de forma más genérica, como línea de investigación más novedosa que se puede aplicar en un futuro como continuación a lo hecho en este proyecto, se puede proponer una interfaz gráfica para la realización de aplicaciones de redes neuronales. Esta interfaz nos permitiría crear las redes neuronales a nuestro gusto (número de capas, número de neuronas por capa, funciones de activación de las neuronas, inicialización de pesos y bias, ...) e introducir los datos de entrenamiento y los datos deseados (lo que se pretende conseguir) sin necesidad de programar nada (todo lo englobaría la programación de la interfaz). Con dicha interfaz gráfica podríamos, además, establecer el algoritmo de entrenamiento que deseemos, así como mostrar los resultados que consideremos oportunos. Esto proporcionaría una mayor facilidad de manejo por parte del usuario tanto para crear una red como para poder realizar distintas

Page 128: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

128

modificaciones a una misma red (para, por ejemplo, realizar diferentes análisis de un mismo problema, como hemos expuesto en la primera de las aplicaciones del presente proyecto).

9 Bibliografía · Simon Haykin. 1994. “Neural Networks. A Comprehensive Foundation”. · Iltcho Angelov, Herbert Zirath and Niklas Rorsman. “A New Empirical Nonlinear Model for HEMT and MESFET Devices”. IEEE Transactions on Microwave Theory and Techniques Vol.40 No. 12. December 1992. · N. Benvenuto, F. Piazza and A. Uncini. “A Neural Network Approach to Data Predistorsion With Memory in Digital Radio Sistems”. Dip. di Electronica e Informatica (Universitá di Padova), Dip. di Electronica e Automatica (Universitá di Ancona). · http://carol.wins.uva.nl/~portegie/matlab/nnt. “Introduction to the Matlab Neural Network Toolbox 3.0”. · http://www.mathworks.com/access/helpdesk/help/toolbox/nnet/nnet.shtml . “Tutorial Matlab Redes Neuronales”.

· http://www.gc.ssr.upm.es/inves/neural/ann2/anntutorial.html. “Tutorial sobre redes neuronales artificiales”.

Page 129: ESCUELA SUPERIOR DE INGENIEROS INGENIEROS …bibing.us.es/proyectos/abreproy/11084/fichero... · DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA ÁREA DE TEORÍA DE LA SEÑAL Y COMUNICACIONES

129