Вы находитесь на странице: 1из 115

Introducción a las

Redes Neuronales
Artificiales y RNAs
Avanzadas

Juan Humberto SOSSA AZUELA


E-mail: hsossa@cic.ipn.mx and humbertosossa@gmail.com
http://sites.google.com/site/cicvision/
Teoría detrás
del modelo
de M-P:
Ya vimos que la TLU es una neurona de dos estados: 0 y 1:

𝑦𝑖 = 𝑓 𝑤𝑖𝑗 𝑥𝑗 − 𝜃𝑗
𝑗=1

Donde:

𝑥𝑖 : vector de entradas binarias.


𝑤𝑖 : vector de pesos y 𝜃𝑗 es el bias asociado, 𝑤𝑖 , 𝜃𝑗 son reales.
La función 𝑓 ∙ es la función escalón.

Para que esta neurona realice algo interesante, 𝑤𝑖 , 𝜃𝑗 deben


ser seleecionados de forma conveniente.

J. McCelland and D. Rumelhart. Parallel Distributed


Processes. MIT Cambridge, MA, 1987.
TLUs, separabilidad lineal y vectores:

Interpretación geométrica de la acción de la TLU:

Una TLU separa los patrones de entrada en dos categorías, 0


para un patrón, 1 para el otro patrón.

Estas categorías pueden pensarse como dos regiones en un


espacio multidimensional separados por un híperplano.

1
Clasificación de patrones y espacio de entradas.

Ejemplo. Sea una TLU de dos entradas, con pesos

y
La respuesta a las cuatro posibles entradas se muestra en la
tabla:

𝑥1 𝑥2 Activación Salida
0 0 0 0
0 1 1 0
1 0 1 0
1 1 2 1

y
Efecto de modificar el bias:

𝑥1 𝑤1
𝑎 = 𝑤1 𝑥1 + 𝑤2 𝑥2 + 𝜃
Σ 1 𝑠𝑖 𝑎 ≥ 𝜃
𝑠=𝑓 𝑎 =
0 𝑠𝑖 𝑎 < 𝜃
𝑥2 𝑤2
𝜃

Ejemplo 1: Sean 𝑤1 = 1 y 𝑤2 =1 y 𝜽 = 𝟎.5

𝑥1 𝑥2 𝑎 𝑠
0 0 0.0 0
1 0 1.0 1 Ahora la neurona
0 1 1.0 1 opera de manera
1 1 2.0 1 diferente…!
Nótese como la TLU permite clasificar las entradas en dos
clases, dependiendo del valor de 𝑦.

Cada patrón de entrada tiene dos componentes: 𝑥1 y 𝑥2

Estos cuatro patrones se pueden representar en un espacio


dos-dimensional.

Cada patrón es representado por


(0,1) un punto en este espacio de
(1,1)
patrones (EP), con dos
coordenadas.

En el caso 𝑛-dimensional el EP
(0,0) (1,0)
será 𝑛-dimensional.
Nótese como la TLU permite clasificar las entradas en dos
clases, dependiendo del valor de 𝑦.

Cada patrón de entrada tiene dos componentes: 𝑥1 y 𝑥2

Estos cuatro patrones se pueden representar en un espacio


dos-dimensional.

Cada patrón es representado por


(0,1) un punto en este espacio de
(1,1)
patrones (EP), con dos
coordenadas.

En el caso 𝑛-dimensional el EP
(0,0) (1,0)
será 𝑛-dimensional.
Para 𝑛 > 3 el PA no puede ser dibujado.
.

Esto no es un problema ya que las relaciones entre patrones


se pueden expresar algebraicamente mediante la noción de
vector.
Separación lineal entre clases:

Ya que la condición de separación ocurre cuando 𝑎 = 𝜃 para


el caso de dos entradas:
Separación lineal entre clases:

Ya que la condición de separación ocurre cuando 𝑎 = 𝜃 para


el caso de dos entradas:

Al restar de ambos lados:


Separación lineal entre clases:

Ya que la condición de separación ocurre cuando 𝑎 = 𝜃 para


el caso de dos entradas:

Al restar de ambos lados: 𝑤2 𝑥2 = −𝑤1 𝑥1 + 𝜃

𝑤1 𝜃
Al dividir ambos lados por 𝑤2 𝑥2 = − 𝑥1 +
𝑤2 𝑤2
Separación lineal entre clases:

Ya que la condición de separación ocurre cuando 𝑎 = 𝜃 para


el caso de dos entradas:

Al restar de ambos lados: 𝑤2 𝑥2 = −𝑤1 𝑥1 + 𝜃

𝑤1 𝜃
Al dividir ambos lados por 𝑤2 𝑥2 = − 𝑥1 +
𝑤2 𝑤2

Esta ecuación es de la forma general:

Con 𝑎 y 𝑏 constantes.

Esta ecuación describe una recta con pendiente 𝑎 e


intercepto 𝑏 en el eje 𝑥2 .
. Para la TLU del ejemplo, al insertar los valores de 𝑤1 , 𝑤2 , 𝜃
𝑤 𝜃
en la ecuación: 𝑥2 = − 1 𝑥1 + .
𝑤2 𝑤2

Se tiene que 𝑎 = 1 y 𝑏 = 1.5, como se muestra:

Nótese como las cuatro


clases aparecen separadas
(0,1) (1,1) en dos clases por esta
recta, según la tabla.

Esta recta es llamada la


línea de decisión.

(0,0)
(1,0)
Nótese como las cuatro clases
aparecen separadas en dos
(0,1) clases por esta recta, según la
(1,1)
tabla.

Esta recta es llamada la línea


de decisión.

(0,0)
(1,0)
Activación Salida
0 0 0 0
0 1 1 0
1 0 1 0
1 1 2 1
Nótese que un sinnúmero de líneas pudieron haber sido
usadas para separar los patrones, sin embargo la resultante
fue del hecho de la selección de los pesos y el umbral.

(0,1) (1,1)

(0,0)
(1,0)
En el caso de una TLU de tres entradas la separación se da
por un plano de separación.

En el caso de una TLU de 𝑛 entradas la separación se da por


un híperplano de separación.
Ya que las TLUs están relacionadas con relaciones lineales
como la dada por:

𝑤1 𝜃
𝑥2 = − 𝑥1 +
𝑤2 𝑤2

se dice que las TLUs son clasificadores lineales y su


patrones son linealmente separables.

Lo inverso es también cierto: cualquier clasificación binaria


que no puede ser obtenida mediante una superficie de
separación lineal puede ser obtenida mediante una TLU.
.
LA TLU divide el espacio de rasgos en dos partes: 𝑓 𝑥 ≥ 0 y
𝑓 𝑥 < 0.

Estas dos partes se definen por el híper-plano.

Note que el plano es siempre perpendicular al vector de


pesos 𝑤.
.
Por ejemplo si: 𝑤 = 1 2 ; 𝑏 = 0

Para 𝑥 = (0 1):
𝑤𝑥 + 𝑏 =
( 1 2 ∙ (0 1)) + 0 = (1 ∗ 0) + (2 ∗ 1) + 0 = 2 > 0

Para 𝑥 = −1 0 :
𝑤𝑥 + 𝑏 =
((1 2) ∙ (−1 0)) + 0 = (1 ∗ −1) + (2 ∗ 0) + 0 = −1 < 0
.
𝑏 determina la posición del híper-plano sobre el espacio:
Vectores:
Vectores:

Los vectores son objetos que nos permiten representar


cantidades con magnitud y dirección.
v
Por ejemplo el viento.

Vector simple:

es la magnitud del vector.

Un vector es definido por una par de números: 𝐯 ,𝜃

𝜃 es el ángulo del vector con respecto a un eje de referencia.


Un vector se puede representar por sus proyecciones con los
ejes (componentes):
Un vector se puede representar por sus proyecciones con los
ejes (componentes):

El vector es ahora representado por dos números:

Notar que el orden es importante. (1,3) no da lo mismo que


(3,1).

En n dimensiones:
Suma vectorial y multiplicación escalar.

Multiplicación de un vector por un escalar.

El multiplicar un vector por un escalar modifica su magnitud.


Suma vectorial y multiplicación escalar.

Multiplicación de un vector por un escalar.

El multiplicar un vector por un escalar modifica su magnitud.

Si el escalar es negativo cambia la dirección del vector.

En términos de componentes:
Suma vectorial.

Geométricamente, dos vectores pueden ser sumados


simplemente al conectar uno con el otro:

𝐰=𝐮+𝐯

w u

En términos de componentes:
En 𝑛 dimensiones:

Substracción vectorial:

La substracción vectorial es una combinación de adición y


multiplicación escalar:

𝑢 − 𝑣 = 𝑢 + (−1)𝑣

Longitud de un vector:

En el caso 2-D:

En n dimensiones:
Comparación entre vectores.

Producto interno (forma geométrica).

Producto interno (forma algebraica).


Comparación entre vectores.
v
Producto interno (forma geométrica). w

Supongamos dos vectores v y w separados por un ángulo ,


el producto interno (producto escalar) entre v y w, se define
como:

Notar que: 𝐯 ∙ 𝐰 = 𝐰 ∙ 𝐯

Nos dice que tan alineados están dos vectores.

Si las longitudes de los vectores son fijas entonces 𝐯 ∙ 𝐰


depende sólo de
Casos:

1 Si los dos vectores están más o menos alineados el


producto interno es positivo.
Casos:

1 Si los dos vectores están más o menos alineados el


producto interno es positivo.

2 Cuando v y w forman un ángulo de 90 grados: 𝐯 ∙ 𝐰 = 𝟎


Casos:

1 Si los dos vectores están más o menos alineados el


producto interno es positivo.

2 Cuando v y w forman un ángulo de 90 grados: 𝐯 ∙ 𝐰 = 𝟎

3 Cuando los dos vectores apuntan más o menos en


direcciones opuestas, el producto interno es negativo.
Producto interno (forma algebraica).

Se pude demostrar que

Para cualesquiera dos vectores v, w en 2-D.

En 𝑛 dimensiones es claro que:

Este valor se debe interpretar igual que en el caso 2-D:

1 SI 𝐯 ∙ 𝐰 es positivo los dos vectores apuntan más o menos


en la misma dirección.
2 SI 𝐯 ∙ 𝐰 es negativo los dos vectores apuntan en
direcciones opuestas, y
3 SI 𝐯 ∙ 𝐰 = 𝟎 forman un ángulo recto.
No hay que tratar de visualizar esto, pero hacer la analogía
con el cado 2-D.

Es como usar imágenes 2-D para representar escenas 3-D.

Esto ayuda a pensar en las propiedades geométricas de los


objetos.

Si v=w:

NOTA: El cuadrado de la longitud de un vector es igual al


producto interno del vector consigo mismo.
Proyección de un vector.
v
Sean dos vectores v y w: w

¿Cuánto de v yace en la dirección de w?

Este segmento es llamado la proyección 𝑣𝑤 de v en w.


Proyección de un vector.
v
Sean dos vectores v y w: w

¿Cuánto de v yace en la dirección de w?

Este segmento es llamado la proyección 𝑣𝑤 de v en w.

Usando la definición del coseno:

Se puede reformular esto en términos del producto interno al


multiplicar y dividir por la magnitud de w:
TLUs y
separabilidad
lineal:
TLUs y separabilidad lineal.

La discusión anterior está motivada por el hecho de probar


que TLU es separador lineal universal independiente de la
dimensionalidad del espacio de los patrones.

Al usar el concepto de producto interno, la activación de un


TLU de 𝑛 entradas se puede expresar como:
Desviaciones.

Al momento de los cálculos puede ocurrir que a la salida de la


TLU haya un resultado diferente al esperado.

En general para un 𝑥 arbitrario, su proyección sobre w viene


dada por

De acuerdo a lo visto, la condición de disparo ocurre cuando:

Luego, entonces:
Si se asume que w y θ son constantes, la proyección 𝑣𝑤
es constante y en 2D, x DEBE llegar exactamente a la
perpendicular al vector de pesos, como se muestra:

La relación 𝐯 ∙ 𝐰 = 𝜃 define una línea recta perpendincular al


vector w.

Todo lo dicho es válido en 𝑛 dimensiones.


El plano 𝐯 ∙ 𝐰 = 𝜃 divide al espacio en dos regiones: A y B:

w
Región A

Región B
Cuando , 𝑦 = 1.

Veamos que pasa a cada lado de la línea (hiper-plano):

Supongamos que entonces la proyección de x

es más larga y, por tanto, x debe yacer en la región A.

w
REGIÓN A
x

𝑦 = 1.
Supongamos que entonces la proyección de x

Es más corta y, por tanto, x debe yacer en la región B.

w
x

REGIÓN B, 𝑦 = 0.
NOTA:
Los resultados son
generales y son
independientes de
entradas a la TLU.
Resumen:
La activación de una TLU viene dada como el producto interno
del vector de pesos y el vector de entrada:
Resumen:
La activación de una TLU viene dada como el producto interno
del vector de pesos y el vector de entrada:
La relación define un híper-plano en el espacio de
patrones que es perpendicular al vector de pesos.
Resumen:
La activación de una TLU viene dada como el producto interno
del vector de pesos y el vector de entrada:
La relación define un híper-plano en el espacio de
patrones que es perpendicular al vector de pesos.
A un lado de este hiper-plano yacen todos los patrones que
son clasificados por la TLU como “1”, mientras que todos los
patrones que yacen al otro lado del hiper-plano son
clasificados como “0”.
Resumen:
La activación de una TLU viene dada como el producto interno
del vector de pesos y el vector de entrada:
La relación define un híper-plano en el espacio de
patrones que es perpendicular al vector de pesos.
A un lado de este hiper-plano yacen todos los patrones que
son clasificados por la TLU como “1”, mientras que todos los
patrones que yacen al otro lado del hiper-plano son
clasificados como “0”.
El hiper-plano es la superficie de decisión de la TLU. Ya que
esta superficie es una versión 𝑛-dimensional de una línea
recta, la TLU es un clasificador lineal.
Resumen:
La activación de una TLU viene dada como el producto interno
del vector de pesos y el vector de entrada:
La relación define un híper-plano en el espacio de
patrones que es perpendicular al vector de pesos.
A un lado de este hiper-plano yacen todos los patrones que
son clasificados por la TLU como “1”, mientras que todos los
patrones que yacen al otro lado del hiper-plano son
clasificados como “0”.
El hiper-plano es la superficie de decisión de la TLU. Ya que
esta superficie es una versión 𝑛-dimensional de una línea
recta, la TLU es un clasificador lineal.

Si los patrones no pueden ser separados por un hiper-


plano, entonces la TLU no podrá clasificarlos.
Otros ejemplos:
Otros ejemplos:
Interpretación geométrica (1/2):
Interpretación geométrica (2/2):
Representación de
compuertas
lógicas mediante
TLUs:
Se sabe que mediante compuertas lógicas se puede resolver
un sin-número de problemas.

Las dos compuertas lógicas más sencillas en términos de dos


variables son la AND y la OR:

A B AND OR
0 0 0 0
0 1 0 1
1 0 0 1
1 1 1 1

¿Si las entradas toman solo valores 0 o 1, que valores


deben tomar los pesos para que una TLU implemente las
funciones AND y OR?
Limitaciones
de las TLUS:
Problema XOR: En este caso la TLU debe satisfacer las
siguientes 4 desigualdades:
Problema XOR: En este caso la TLU debe satisfacer las
siguientes 4 desigualdades:

Se puede ver que las primeras tres desigualdades son


satisfechas para valores positivos de 𝑤0 y 𝑤1 .

Sin embargo, la cuarta desigualdad (𝑤0 + 𝑤1 < Φ) NO PUEDE


ser satisfecha para valores positivos de 𝑤0 y 𝑤1 .
Problema XOR: En este caso la TLU debe satisfacer las
siguientes 4 desigualdades:

Se puede ver que las primeras tres desigualdades son


satisfechas para valores positivos de 𝑤0 y 𝑤1 .

Sin embargo, la cuarta desigualdad (𝑤0 + 𝑤1 < Φ) NO PUEDE


ser satisfecha para valores positivos de 𝑤0 y 𝑤1 .

Luego, entonces, el problema XOR no puede ser resuelto


con una sola TLU.
Funciones linealmente separables:

1 Cada función lógica separa a los vértices en dos clases.

2 Una función no es computable mediante TLUs si los puntos


cuyo valor de función de salida es 1 NO PUEDEN separados
de los puntos cuyo valor de función de salida es cero.
Funciones linealmente separables:

3 Dos conjuntos de puntos A y B con diferentes valores de


función de salida en un espacio de 𝑁 dimensiones son
linealmente separables, si las siguientes dos condiciones de
satisfacen:

Para cada punto de

Para cada punto de


Número de funciones Booleanas linealmente separables:
¿Cuántas funciones linealmente separables / no-separables de
𝑁 entradas binarias existen?
Número de funciones Booleanas linealmente separables:
¿Cuántas funciones linealmente separables/ no-separables de
𝑁 entradas binarias existen?
Conforme el número de entradas crece, muchas funciones
lógicas no pueden siempre ser realizadas con una sola TLU:
Número Posibles Funciones
de entradas funciones linealmente
Booleanas separables
1 (2 valores) 4 4
2 (4) 16 14 Una entrada:
3 (8) 256 104
4 (16) 65536 1774 0 0 0 1 1
5 (32) 43 × 108 94572 1 0 1 0 1

Para solventar estas limitaciones se requiere de redes de


TLUs.
Solución al
problema del XOR
mediante TLUS:
Solución ideal mediante tres neuronas TLU:
Solución ideal mediante tres neuronas TLU:

Por descomposición lógica:

𝑥0 1
1
-1

-1
𝑥1 1
1
Solución ideal mediante tres neuronas TLU:

Por descomposición lógica:

𝑥0 1
1
-1

-1
𝑥1 1
1
Solución ideal mediante tres neuronas TLU:

Por descomposición lógica:

𝑥0 1
1
-1

-1
𝑥1 1
1
Solución ideal mediante tres neuronas TLU:

Por descomposición lógica:

𝑥0 1
1
-1

-1
𝑥1 1
1

En resumen, la red consta de tres neuronas que en conjunto


llevan a cabo la función lógica:
Interpretación geométrica:
𝑥1 𝑥1
Región A
1 1
1 01
Región B
0 00
0 0
Región C
1 10
𝑥2 𝑥2
0 1 0 1
Las dos neuronas de la primera capa producen el etiquetado
de la región en la cual la entrada se localiza.
Interpretación geométrica:
𝑥1 𝑥1
Región A
1 1
1 01
Región B
0 00
0 0
Región C
1 10
𝑥2 𝑥2
0 1 0 1
Las dos neuronas de la primera capa producen el etiquetado
de la región en la cual la entrada se localiza.
La unidad de salida decodifica las etiquetas de las tres
regiones (en este caso se aplica una función OR).
Interpretación geométrica:
𝑥1 𝑥1
Región A
1 1
1 01
Región B
0 00
0 0
Región C
1 10
𝑥2 𝑥2
0 1 0 1
Las dos neuronas de la primera capa producen el etiquetado
de la región en la cual la entrada se localiza.
La unidad de salida decodifica las etiquetas de las tres
regiones (en este caso se aplica una función OR).
La primera capa mapea el vector de entrada a la segunda
etapa, llamada de clasificación.
Interpretación geométrica:
𝑥1 𝑥1
Región A
1 1
1 01
Región B
0 00
0 0
Región C
1 10
𝑥2 𝑥2
0 1 0 1
Las dos neuronas de la primera capa producen el etiquetado
de la región en la cual la entrada se localiza.
La unidad de salida decodifica las etiquetas de las tres
regiones (en este caso se aplica una función OR).
La primera capa mapea el vector de entrada a la segunda
etapa, llamada de clasificación.
La última capa decodifica esta clasificación y entrega la salida.
Dos funciones que NO pueden ser resueltas mediante una
sola TLU:

00 0000000011111111
01 0000111100001111
10 0011001100110011
11 0101010101010101

XOR NXOR
N O T A:

En el caso general se requieren de varias neuronas,


acomodadas en capas para resolver un problema dado.

Esto demanda el ajuste de los pesos de interconexión entre


dichas neuronas.

El hacerlo a mano es un trabajo prácticamente imposible de


llevar a cabo.

Se opta por el uso de una técnica de aprendizaje.


Entrenamiento de
RNAs:
Una propiedad muy importante de una red neuronal artificial
(RNA) es su capacidad de aprender del medio ambiente.

La RNA aprende de su medio ambiente a través de un proceso


iterativo de ajuste de sus pesos y biases.

Este proceso de aprendizaje, en el contexto de las RNA,


puede ser descrito como sigue:
Aprendizaje es el proceso mediante el cual los parámetros
libres (los pesos, arquitectura,…) de una RNA son
adaptados a través una estimulación del medio ambiente
donde se encuentra la RNA.

medio ambiente

RNA

NOTA: Este proceso de ajuste no tiene paralelo en las


conexiones sinápticas de las neuronas reales.
El tipo de aprendizaje está determinado por la manera en que
los parámetros son ajustados. Esta definición implica los
siguientes tres eventos:

1 La RNA es estimulada por un medio ambiente.


El tipo de aprendizaje está determinado por la manera en que
los parámetros son ajustados. Esta definición implica los
siguientes tres eventos:

1 La RNA es estimulada por un medio ambiente.

2 Los parámetros libres de la RNA experimentan cambios por


esta estimulación, y
El tipo de aprendizaje está determinado por la manera en que
los parámetros son ajustados. Esta definición implica los
siguientes tres eventos:

1 La RNA es estimulada por un medio ambiente.

2 Los parámetros libres de la RNA experimentan cambios por


esta estimulación, y

3 La RNA responde de una nueva manera al ambiente por los


cambios en su estructura interna.
Sin pérdida de generalidad consideremos el caso de una
neurona aislada. La neurona es alimentada con un vector
𝑥(𝑛), donde 𝑛 denota un tiempo discreto, su salida es 𝑦(𝑛).
Esta salida 𝑦(𝑛) es comparada con la respuesta deseada de
salida 𝑑(𝑛). El error 𝑒(𝑛) = 𝑑(𝑛) − 𝑦(𝑛) es la señal de control
que es usada para el ajuste iterativo de los parámetros libres
de la RNA.
Se utilizará este principio para derivar
varias reglas para el ajuste de pesos.

En particular se verá el caso de las


reglas:

La reglas perceptrón, y

La regla delta.
Recordatorio:

Pendiente de una línea.

Derivada.

Derivadas parciales.

Regla de la cadena.
Pendiente de una línea:

Nos habla de la dirección e inclinación de una línea.

La pendiente se puede definir como la altura por el recorrido o


el cambio en la dirección 𝑥.

∆𝑦 𝑦2 − 𝑦1
𝑚= =
∆𝑥 𝑥2 − 𝑥1

(6,8)
∆𝑦
8−3
𝑚= =1
(1,3) ∆𝑥 6−1
Una línea puede tener diferentes pendientes:
Una línea recta se puede poner en la forma de intersección:

𝑦 = 𝑚𝑥 + 𝑏

𝑚 la pendiente y

𝑏 la intersección de la recta con el eje 𝑦.

Ejemplo: 𝑦 = 2𝑥 + 3
Derivada:

Raramente se trabaja con líneas rectas.

Usualmente se trabaja con funciones de activación curvas.

La derivada nos permite calcular la derivada de una línea en


un punto de una curva.
Ejemplo: 𝑦 = 𝑥 2 :
Suponga que se quiere obtener la pendiente en el punto con
𝑥 = 1.5.

La pendiente viene dada por la recta que toca a la curva en


1.5.
Para obtener la ecuación para obtener pendiente en ese punto
basta con obtener la derivada, por ejemplo, de la ecuación de
la recta con intercepto: 𝑦 = 𝑚𝑥 + 𝑏:

𝑑𝑦
=𝑚
𝑑𝑥
Para derivar la ecuación, consideremos la siguiente figura:

(𝑥, 𝑦)

Este es el punto para el cual se quiere obtener la derivada. Sin


embargo, se requiere de dos puntos para calcular la
pendiente:
Esto crea una línea imaginaria (línea secante):

(𝑥 + ∆𝑥, 𝑦 + ∆𝑥)

∆𝑦

(𝑥, 𝑦) ∆𝑥
La pendiente de esta secante se acerca a la pendiente en
(𝑥, 𝑦), pero no es el valor exacto.

Conforme ∆𝑥 y ∆𝑦 tienden a cero, la pendiente de la secante


se acerca a la pendiente en (𝑥, 𝑦).
Se puede usar este hecho para obtener una ecuación que es
la derivada de la ecuación: 𝑦 = 𝑚𝑥 + 𝑏.

Caso general de cómo obtener la derivada de una función


𝑓(𝑥).

Esta fórmula usa una constante ℎ que define el segundo punto


al adicionar ℎ a 𝑥.

Entre más pequeña es ℎ más preciso es el valor de la


pendiente.
Pendiente de la línea secante:

𝑓 𝑥 + ℎ − 𝑓(𝑥)
𝑚=
𝑥+ℎ −𝑥

La derivada de 𝑓(𝑥) como una pendiente:

𝑓 𝑥 + ℎ − 𝑓(𝑥)
𝑓´ 𝑥 = lim
ℎ→0 𝑥+ℎ −𝑥

Al remover términos redundantes:

𝑓 𝑥 + ℎ − 𝑓(𝑥)
𝑓´ 𝑥 = lim
ℎ→0 ℎ
Aplicación al ejemplo: 𝑓 𝑥 = 𝑥 2

𝑥+ℎ 2 − 𝑥 2
𝑓´ 𝑥 = lim
ℎ→0 ℎ

Al expandir:

𝑥 2 + 2𝑥ℎ + ℎ2 − 𝑥 2
𝑓´ 𝑥 = lim
ℎ→0 ℎ

Al remover términos redundantes:

2𝑥ℎ + ℎ2
𝑓´ 𝑥 = lim = lim 2𝑥 + ℎ
ℎ→0 ℎ ℎ→0
Resultado final de la derivada:

𝑓´ 𝑥 = 2𝑥

Este resultado coincide con el encontrado en cualquier tabla


de derivadas.

Para el cálculo de cualquier derivada, se puede usar, por


ejemplo, el programa R: http://www.r-project.org/

D ( expression (x^2,¨x¨)

Tutorial sobre R:

http://www.heatonresearch.com/wiki/Brief_R_Tutorial
Derivadas parciales:

Es la derivada de una función respecto a una de sus variables.

La derivada parcial de 𝑓 con respecto a 𝑧 se puede escribir


como:

𝜕𝑓
𝑓´𝑧 , 𝑓𝑧 , 𝜕𝑧 𝑓,
𝜕𝑧
𝜕𝑓
es la más usada.
𝜕𝑧
Ejemplo:

𝑧 = 𝑓 𝑥, 𝑦 = 𝑥 2 + 𝑥𝑦 + 𝑦 2

La derivada de 𝑧 con respecto a 𝑥 es:

𝜕𝑧
= 2𝑥 + 𝑦
𝜕𝑥

NOTA: Las derivadas parciales son un concepto muy


importante en RNA.

Como veremos, se usarán derivadas parciales de el error de


una RNA con respecto a sus pesos, para su ajuste.
Regla de la cadena:

Esta regla establece que si: 𝑓 𝑥 = 𝑥 𝑛

Entonces: 𝑓´ 𝑥 = 𝑛𝑥 𝑛−1

La regla de la cadena tiene que ver con funciones compuestas


(FC).
Una FC no es otra cosa más que una función que toma el
resultado de otra función como entrada.

Los programadores usan FC todo el tiempo:

Ejemplo en Java:

System.out.println ( Math.pow(3,2) );

Ejemplo matemático:

𝑓 ∘ 𝑔 (5)

Permite pasar el valor de 5 a 𝑓 y luego el resultado de 𝑓 a 𝑔.


La regla de la cadena (RC) permite calcular la composición de
dos funciones:

𝑓 ∘ 𝑔 ´ 𝑡 = 𝑓´ 𝑔(𝑡) 𝑔´ 𝑡

La RC permitirá derivadas a lo largo de una RNA.

Una RNA es de alguna forma una función compuesta.

En una RNA de 3 capas, la salida de la capa de entrada fluye


a la capa intermedia y de ahí a la capa de salida.
Un algoritmo de aprendizaje es un método adaptativo que
permite encontrar en forma automática los pesos de los
elementos de cómputo de una RNA.

Este método debe ser auto-organizado, en el sentido de que al


emplear patrones de entrada con sus salidas deseadas, debe
poder aplicar un paso de corrección de los parámetros libres
de la RNA.

Este paso es ejecutado en forma iterada hasta que la RNA


aprende a producir la salida deseada. Los parámetros son
adaptados sobre la base de la experiencia previa hasta
converger a una solución (si esta existe).

El algoritmo de aprendizaje opera, como ya vimos, en lazo


cerrado.
Patrones
de entrada Salida
RNA
Salida
deseada

Adaptación
de
parámetros Error
Tipos de algoritmos de entrenamiento:

Se pueden dividir en supervisados y no-supervisados:

Correctivo
Supervisado
Con refuerzo
Entrenamiento

No-supervisado

El algoritmo de entrenamiento para el perceptrón es un


ejemplo de un algoritmo supervisado con refuerzo.
Algoritmos de entrenamiento supervisados
(continuación):

Aprendizaje por refuerzo: En este caso solo se conoce si la


RNA produce el resultado deseado o no. Dependiendo de esta
información, solo el vector de entrada se aplica a la corrección
del peso.

Aprendizaje correctivo: En este caso la magnitud del error


junto con el vector de entrada son usados para corregir los
pesos.

Regla formal de ajuste: (si la salida actual ≠ salida deseada):

𝜃𝑛𝑢𝑒𝑣𝑜 = 𝜃𝑣𝑖𝑒𝑗𝑜 + ∆𝜃 Actualizar umbrales


𝑤𝑛𝑢𝑒𝑣𝑜,𝑖 = 𝑤𝑣𝑖𝑒𝑗𝑜,𝑖 + ∆𝑤𝑖 , con 𝑖 ∈ {1, … , 𝑁} y pesos.
Algoritmos de entrenamiento no supervisado:

Para un vector de entrada dado se desconoce el


correspondiente vector de salida.

Por tanto, este tipo de entrenamiento se refiere a


entrenamiento sin maestro.

Debido a que el maestro no está disponible, la red debe


organizar al algoritmo de aprendizaje por ella misma.
Ejemplo de entrenamiento no supervisado:

Puntos 2-D se tienen que clasificar en 2 clases.

Una red clasificadora con 2 nodos de salida (uno por clase) se


usa para asignar un vector de entrada a su respectiva clase.

Distribución de entrada Neurona clasificadora


𝑥2 Indicador
primera clase
Cúmulo 2 𝑥1 Red
𝑥1 neuronal
𝑥2
Indicador
Cúmulo 1
segunda clase

A priori no sabemos que neurona se especializa en que


cúmulo. Generalmente no se sabe cuantos cúmulos bien
definidos se presentan.
Donald Hebb y
el aprendizaje
artificial:
Hebb y la biopsicología:

La biopsicología tiene que ver con el estudio de la biología del


comportamiento.

La obra: La Organización del Comportamiento en 1949


desempeñó un papel clave en su aparición.
Hebb y la biopsicología:

En este libro Hebb desarrolló la primera teoría comprensible


sobre el modo en que los fenómenos psicológicos como las
percepciones, las emociones, los pensamientos y la memoria,
pueden ser producidos por la actividad cerebral.

Hebb basó su teoría en experimentos, tanto con seres


humanos como con animales de laboratorio, en estudios
clínicos y en argumentos lógicos desarrollados a partir de sus
propias observaciones de la vida.
Principio básico:

Su principal aporte se relaciona con la formación de


ensambles neuronales regidos por el siguiente principio:

“Cuando un axón de una célula A está lo suficientemente


cerca de una célula B, como para excitarla, y participa
repetida o persistentemente en su disparo, ocurre algún
proceso de crecimiento o cambio metabólico, en una o en
ambas células, de modo tal que la eficacia de A, como una de
las células que hacen disparar a B, aumenta”.

Este principio (o Ley de Hebb), en ciencia cognitiva, se


denomina la “Regla de Hebb” y provee el algoritmo básico de
aprendizaje mediante redes neuronales artificiales.

Sobre la base de la regla de Hebb se presentarán algunas


técnicas para el entrenamiento de redes neuronales.

Вам также может понравиться