Explora Libros electrónicos
Categorías
Explora Audiolibros
Categorías
Explora Revistas
Categorías
Explora Documentos
Categorías
Ecuaciones:
Donde:
𝑀 = 𝑁𝑒𝑢𝑟𝑜𝑛𝑎𝑠 𝑑𝑒 𝑠𝑎𝑙𝑖𝑑𝑎
𝑃 = 𝑃𝑎𝑡𝑟𝑜𝑛𝑒𝑠
𝑑 = 𝑉𝑎𝑙𝑜𝑟 𝑑𝑒 𝑠𝑎𝑙𝑖𝑑𝑎
𝑦 = 𝑆𝑎𝑙𝑖𝑑𝑎
𝐿 = 𝐿𝑜𝑠𝑠
𝑥𝑖 = 𝐸𝑛𝑡𝑟𝑎𝑑𝑎
𝑤𝑖 = 𝑃𝑒𝑠𝑜
Valores iniciales
𝑤1 = 0. 5
𝑤2 =− 0. 5
𝑏 =− 1. 5
α = 0. 7
Combinación 1
X1 X2 D
0 0 0
● Primera iteración
𝑑=0 𝑥1 = 0 𝑥2 = 0
𝑤1 = 0. 5 𝑤2 =− 0. 5 𝑏 =− 1. 5 α = 0. 7
Salida
𝑦 = 𝑥1𝑤1 + 𝑥2𝑤2 + 𝑏
𝑦 = 0 * 0. 5 + 0 *− 0. 5 + (− 1. 5)
𝑦 =− 1. 5
Error
𝑒1 = 𝑑 − 𝑦
𝑒1 = 0 − (− 1. 5)
𝑒1 = 1. 5
Pesos
𝑏(𝑡 + 1) =− 1. 5 + 1. 5(1)
𝑏(𝑡 + 1) = 0
Segunda combinación
X1 X2 D
0 1 1
● Segunda iteración
𝑑=1 𝑥1 = 0 𝑥2 = 1
𝑤1 = 0. 5 𝑤2 =− 0. 5 𝑏 = 0 α = 0. 7
Salida
𝑦 = 𝑥1𝑤1 + 𝑥2𝑤2 + 𝑏
𝑦 = 0 * 0. 5 + 1 *− 0. 5 + (0)
𝑦 =− 0. 5
Error
𝑒2 = 𝑑 − 𝑦
𝑒2 = 1 − (− 0. 5)
𝑒2 = 1. 5
Pesos
𝑏(𝑡 + 1) = 0 + 1. 5(1)
𝑏(𝑡 + 1) = 1. 5
Tercera combinación
X1 X2 D
1 0 1
● Tercera iteración
𝑑=1 𝑥1 = 1 𝑥2 = 0
𝑤1 = 0. 5 𝑤2 = 0. 55 𝑏 = 1. 5 α = 0. 7
Salida
𝑦 = 𝑥1𝑤1 + 𝑥2𝑤2 + 𝑏
𝑦 = 1 * 0. 5 + 0 * 0. 55 + (1. 5)
𝑦=2
Error
𝑒3 = 𝑑 − 𝑦
𝑒3 = 1 − (2)
𝑒3 =− 1
Pesos
𝑏(𝑡 + 1) = 1. 5 + (− 1)(1)
𝑏(𝑡 + 1) = 0. 5
Cuarta combinación
X1 X2 D
1 1 1
● Cuarta iteración
𝑑=1 𝑥1 = 1 𝑥2 = 1
𝑤1 = 1. 9 𝑤2 = 0. 55 𝑏 = 0. 5 α = 0. 7
Salida
𝑦 = 𝑥1𝑤1 + 𝑥2𝑤2 + 𝑏
𝑦 = 1 * 1. 9 + 1 * 0. 55 + (0. 5)
𝑦 = 2. 95
Error
𝑒4 = 𝑑 − 𝑦
𝑒4 = 1 − (2. 95)
𝑒4 =− 1. 95
Pesos
𝑏(𝑡 + 1) = 0. 5 + (− 1. 95)(1)
𝑏(𝑡 + 1) =− 1. 45
Pérdida
𝑤1 = 0. 535 𝑤2 =− 0. 815 𝑏 =− 1. 45 α = 0. 7
𝑒1 = 1. 5 𝑒2 = 1. 5 𝑒3 =− 1 𝑒4 =− 1. 95
𝑃 𝑀
1 2
𝐿= 𝑀𝑃
∑ ∑ (𝑑𝑘 − 𝑦𝑘)
𝑝=1 𝑘=1
𝑀=1 𝑃=4
1 2 2 2 2
𝐿= 4
(𝑒1) + (𝑒2) + (𝑒3) + (𝑒4)
1 2 2 2 2
𝐿= 4
((1. 5) + (1. 5) + (− 1) + (− 1. 95) )
𝐿 = 2. 325625
2. Encuentre una red neuronal multicapa superficial compuesta de neuronas con función de
activación tipo escalón que permita realizar la separación de los patrones mostrados en la
figura.
Figura 1. Patrones
Línea 1
𝑥2 = 𝑚𝑥1 + 𝐼
𝑃1 = (0, 2) 𝑃2 = (1, 3)
3−2 1
𝑚= 1−0
= 1
=1
𝑥2 = 𝑥1 + 𝐼 → 2 = 0 + 𝐼
𝐼=2
𝑤1 −𝑏
𝑥2 = 𝑥1 + 2 → − 𝑤2
=1 𝑤2
=2
𝑤1 = − 𝑤2
𝑏 =− 2𝑤2
Asumo el valor de 𝑤2 = 1
𝑤1 =− 1 𝑏 =− 2
(−1) (−2)
Finalmente obtenemos el valor de 𝑥2 =− 1
𝑥1 − 1
𝑥2 = 𝑥1 + 2
Coordenadas de los pesos
P1=(-1,1) P2=(1,-1)
Al haber asumido el valor de 𝑤2 = 1 obtenemos una recta que apunta hacia los ceros (0) del
sistema en el punto (-1,1) por lo que ahora se asume que su valor es 𝑤2 =− 1 obteniendo
finalmente el punto de (1,-1) el cual apunta hacia los unos (1).
Teniendo ahora los valores de:
𝑤1 = 1 𝑤2 =− 1 𝑏 = 2
Figura 3. Vectores de los pesos línea 1
Teniendo finalmente el diseño de la red neuronal multicapa con los primeros datos
Línea 2
𝑥2 = 𝑚𝑥1 + 𝐼
𝑃1 = (1, 3) 𝑃2 = (2, 2)
2−3 −1
𝑚= 2−1
= 1
=− 1
𝑥2 =− 𝑥1 + 𝐼 → 2 =− 1 + 𝐼
𝐼=3
𝑤1 −𝑏
𝑥2 =− 𝑥1 + 3 → − 𝑤2
=− 1 𝑤2
=3
𝑤1 = 𝑤2
𝑏 =− 3𝑤2
Asumo el valor de 𝑤2 = 1
𝑤1 = 1 𝑏 =− 3
(1) (−3)
Finalmente obtenemos el valor de 𝑥2 =− 1
𝑥1 − 1
𝑥2 =− 𝑥1 + 3
P1=(1,1) P2=(-1,-1)
Al haber asumido el valor de 𝑤2 = 1 obtenemos una recta que apunta hacia los ceros (0) del
sistema en el punto (1,1) por lo que ahora se asume que su valor es 𝑤2 =− 1 obteniendo
finalmente el punto de (-1,-1) el cual apunta hacia los unos (1).
𝑤1 =− 1 𝑤2 =− 1 𝑏 = 3
Línea 3
𝑤2 𝑏
𝑥1 =− 𝑤1
𝑥2 − 𝑤1
𝑥1 = 𝑚𝑥2 + 𝐼
𝑃1 = (2, 3) 𝑃2 = (2, 1)
1−3 −2
𝑚= 2−2
= 0
=0
𝑥1 = 𝐼 → 2 = 𝐼
𝐼=2
𝑤2 −𝑏
𝑥1 = 0𝑥2 + 2 → − 𝑤1
=0 𝑤1
=2
𝑤2 =− 0𝑤1
𝑏 =− 2𝑤1
Asumo el valor de 𝑤1 = 1
𝑤2 = 0 𝑏 =− 2
(0) (−2)
Finalmente obtenemos el valor de 𝑥1 =− 1
𝑥1 − 1
𝑥1 = 0𝑥2 + 2
P1=(1,0) P2=(-1,0)
Al haber asumido el valor de 𝑤1 = 1 obtenemos una recta que apunta hacia los ceros (0) del
sistema en el punto (1,0) por lo que ahora se asume que su valor es 𝑤1 =− 1 obteniendo
finalmente el punto de (-1,0) el cual apunta hacia los unos (1).
Teniendo ahora los valores de:
𝑤1 =− 1 𝑤2 = 0 𝑏 = 2
𝑥1 = 𝑚𝑥2 + 𝐼
𝑃1 = (1, 3) 𝑃2 = (1, 1)
1−3 −2
𝑚= 1−1
= 0
=0
𝑥1 = 𝐼 → 2 = 𝐼
𝐼=2
𝑤2 −𝑏
𝑥1 = 0𝑥2 + 2 → − 𝑤1
=0 𝑤1
=2
𝑤2 =− 0𝑤1
𝑏 =− 2𝑤1
Asumo el valor de 𝑤1 = 1
𝑤2 = 0 𝑏 =− 2
(0) (−2)
Finalmente obtenemos el valor de 𝑥1 =− 1
𝑥1 − 1
𝑥1 = 0𝑥2 + 2
P1=(1,0)
Al haber asumido el valor de 𝑤1 = 1 obtenemos una recta que apunta hacia los unos (1) del
sistema en el punto (1,0) por lo que se tienen los valores de:
𝑤1 = 1 𝑤2 = 0 𝑏 =− 2
Figura 12. Vectores de peso línea 4
Línea 5
𝑥1 = 𝑚𝑥2 + 𝐼
𝑃1 = (0, 1) 𝑃2 = (0, 1)
1−2 −1
𝑚= 0−0
= 0
=0
𝑥1 = 𝐼 → 2 = 𝐼
𝐼=2
𝑤2 −𝑏
𝑥1 = 0𝑥2 + 2 → − 𝑤1
=0 𝑤1
=2
𝑤2 =− 0𝑤1
𝑏 =− 2𝑤1
Asumo el valor de 𝑤1 = 1
𝑤2 = 0 𝑏 =− 2
(0) (−2)
Finalmente obtenemos el valor de 𝑥1 =− 1
𝑥1 − 1
𝑥1 = 0𝑥2 + 2
P1=(1,0)
Al haber asumido el valor de 𝑤1 = 1 obtenemos una recta que apunta hacia los unos (1) del
sistema en el punto (1,0) por lo que se tienen los valores de:
𝑤1 = 1 𝑤2 = 0 𝑏 =− 2
Neurona línea 1
𝑦 = 𝑥1𝑤1 + 𝑥2𝑤2 + 𝑏
𝑦 = 0 + 2 *− 1 + 2
𝑦=0
Neurona línea 2
𝑦 = 𝑥1𝑤1 + 𝑥2𝑤2 + 𝑏
𝑦 =− 1 *− 1 + 2 *− 1 + 3
𝑦=2
Neurona línea 3
𝑦 = 𝑥1𝑤1 + 𝑥2𝑤2 + 𝑏
𝑦 = 2 *− 1 + 0 + 2
𝑦=0
Neurona línea 4
𝑦 = 𝑥1𝑤1 + 𝑥2𝑤2 + 𝑏
𝑦 = 2 * 1 + 0 + (− 2)
𝑦=0
Neurona línea 5
𝑦 = 𝑥1𝑤1 + 𝑥2𝑤2 + 𝑏
𝑦 =− 1 *− 1 + 2 *− 1 + 3
𝑦=0
Neurona de salida
𝑏=1
𝑦=0+2+0+0+0+1
𝑦=3
0.01
0.1
0.5
0.01
0.1
0.5
5000 épocas
Figura 18. Grafo de la red neuronal creada de la compuerta XOR
5.
Circle
● Se tienen 2 entradas lineales con 1 capa oculta con 2 neuronas y una tasa de
aprendizaje de 0.03 con función de activación tangencial hiperbólica (tanh). Se puede
observar que la red neuronal identifica la mayoría de los puntos naranjas pero no lo
consigue del todo
● Al aumentar las capas ocultas a 4 y las neuronas de cada una de estas se puede observar que
finalmente el sistema clasifica de manera exacta el área de puntos azules y naranjas a una
velocidad mayor.
Espiral
● Se puede observar que al tener 2 entradas lineales y una capa oculta con 8 neuronas, el
sistema no responde a la clasificación (Tasa de aprendizaje 0.03, Fact tanh)
Figura 22. Entrenamiento de la red espiral en tensorflow
● Al aumentar las capas ocultas y la cantidad de neuronas dentro de estas se puede observar
que empieza a clasificar notoriamente los puntos en forma de espiral pero aún no es suficiente
● Finalmente al tener 2 salidas lineales, la red no puede clasificar ambos datos por lo que se
decide activar las diferentes entradas posibles y aumentar las capas y neuronas llevando esto
a formar una espiral pero no perfecta.
Figura 24. Entrenamiento de la red espiral en tensorflow
● Finalmente se cambia la función de activación a ReLu para una mejor respuesta obteniendo
así la espiral clasificando los datos perfectamente a una velocidad mayor.
Gráficas de optimización
● Con una tasa de aprendizaje de 0.001 para el descenso de gradiente y el impulso, se puede
observar que al agregarle un impulso (momentum) se requirieron de menos épocas para poder
estabilizar la red y entrenarla
Figura 28. Simulación del gradiente y momentum del paisaje de costo 1 con taza de aprendizaje
diferente
Paisaje de costo 2
Gráficas de optimización
● Con una tasa de aprendizaje de 0.003 para el descenso de gradiente y el impulso, se puede
observar que al agregarle un impulso (momentum) se requirieron de menos épocas para poder
estabilizar la red y entrenarla pero al ser un paisaje diferente, aún teniendo esta tasa, las
épocas fueron muy similares, aún así le tomó menos tiempo al momentum.
Figura 30. Simulación del gradiente y momentum del paisaje de costo 2
● Con una tasa de aprendizaje de 0.009 para el descenso de gradiente y el impulso, se puede
observar que al agregarle un impulso (momentum) se requirieron de más épocas para poder
estabilizar la red y entrenarla que con solo utilizar el descenso de gradiente
Figura 31. Simulación del gradiente y momentum del paisaje de costo 2 con taza de aprendizaje
diferente
● Se puede concluir que al aumentar la tasa de aprendizaje del momentum, esta se vuelve
menos precisa por lo que le tomará mucho más tiempo entrenar una red que con el gradiente
descendente.
6. Diferenciación automática
Dado que solo aplica la ley de diferenciación simbólica a funciones básicas o constantes,
puede combinar de manera flexible la estructura de bucle y la estructura condicional del
lenguaje de programación, utilizando diferenciación automática y debido a que su cálculo es
gráfico, se puede optimizar bastante siendo la razón por lo que se usa ampliamente en los
sistemas modernos de aprendizaje profundo.
Ejemplo:
𝑇
donde ρi es conocida. La estimación de máxima verosimilitud de σ = (σ1, . . . , σ𝑚) y a se
determina minimizando una función de probabilidad logarítmica de la forma: