Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Unidad II Redes Neuronales Supervisadas-DeSKTOP-BQNK2KS
Unidad II Redes Neuronales Supervisadas-DeSKTOP-BQNK2KS
INTELIGENCIA ARTIFICIAL
Redes Neuronales más populares
Redes Unidireccionales organizadas en capas (feed forward) y con aprendizaje supervisado:
Son empleadas como clasificadores de patrones y estimadores de funciones.
Perceptrón simple
Adalina
Perceptrón muticapa
Backpropagation (retropropagación) o BP
Perceptrón simple
La estructura del perceptrón se inspira en las primeras etapas de procesamiento de los
sistemas sensoriales de los animales (por ejemplo, el de visión), en los cuales la información va a
travesando sucesivas capas de neuronas, que realizan un procesamiento progresivamente de
más alto nivel.
El perceptrón simple, es un modelo unidireccional, compuesto por dos capas de neuronas, una
sensorial o de entrada, y otra de salida
Las neuronas de entrada no realizan ningún cómputo, únicamente envían la información (en
principio consideramos señales discretas {0,1}) a las neuronas de salida.
Perceptrón Simple
La operación de una red de este tipo, con 𝑛 neuronas de
entrada y 𝑚 de salida, se puede expresar como:
𝑛
𝑦𝑖 𝑡 = 𝑓 𝑤𝑖𝑗 𝑥𝑗 − 𝜃𝑖 , ∀𝑖, 1 ≤ 𝑖 ≤ 𝑚
𝑗=1
𝑦𝑖 = 𝐻 𝑤𝑖𝑗 𝑥𝑗 − 𝜃𝑖 , ∀𝑖, 1 ≤ 𝑖 ≤ 𝑚
𝑗=1
𝑛
1, 𝑠𝑖 𝑥 ≥ 0
𝒀 = 𝐹 𝑤𝑖 𝑥𝑖 − 𝜃 𝑭 𝒙 = 𝑬= 𝛿−𝑦 𝒘𝒊 = 𝑤𝑖 + 𝛼𝐸𝑥𝑖 𝜽 = 𝜃 − 𝛼𝐸
0, 𝑠𝑖 𝑥 < 0
𝑖=1
Se aplica la función escalón
Programa en C#
Ejemplo 2: inversor
Ejemplo 3: 2 entradas 1 salida (compuerta AND)
𝑛 = 𝑤𝑖 𝑝𝑖 + 𝑏
𝑖=1
𝑛 = 2 𝑝1 + 1 𝑝2 + (−3)
𝑎 = 𝑓(𝑛) 𝑎 = ℎ𝑎𝑟𝑑𝑙𝑖𝑚(𝑛)
Ejemplo 4: 2 entradas 1 salida (compuerta AND)
𝑛 = 𝑤𝑖 𝑝𝑖 + 𝑏
𝑖=1
𝑛 = 2 𝑝1 + 1 𝑝2 + (−3)
𝑎 = 𝑓(𝑛)
𝑎 = ℎ𝑎𝑟𝑑𝑙𝑖𝑚(𝑛)
W1,1
P ∑ f
P b
W1,2
𝑛 = 𝑤𝑖 𝑝𝑖 + 𝑏
𝑖=1
𝑛 = 2 𝑝1 + 1 𝑝2 + (−3)
𝑎 = 𝑓(𝑛)
𝑎 = ℎ𝑎𝑟𝑑𝑙𝑖𝑚(𝑛)
Ejemplo 5: 2 entradas – 2 salidas (AND,OR)
Resultado
W1,1
P ∑ f
W1,2
b
W2,1
P ∑ f
W2,2
b
𝑛 = Σ(𝑤𝑃) + 𝑏
𝑛1 = 𝑤1,1𝑃1 + 𝑤2,1𝑃2 + 𝑏
𝑎1 = 𝑓(𝑛1)
𝑎1 = ℎ𝑎𝑟𝑑𝑙𝑖𝑚(𝑛1)
𝑛2 = 𝑤1,2𝑃1 + 𝑤2,2𝑃2 + 𝑏
𝑎2 = 𝑓(𝑛2)
𝑎2 = ℎ𝑎𝑟𝑑𝑙𝑖𝑚(𝑛2)
Ejemplo 6: 3 entradas – 3 salidas (AND-OR-NAND)
𝑛 = Σ 𝑤𝑃 + 𝑏
𝑛1 = 𝑤1,1𝑃1 + 𝑤2,1𝑃2 + 𝑤3,1𝑃3 + 𝑏
𝑎1 = 𝑓 𝑛1
𝑎1 = ℎ𝑎𝑟𝑑𝑙𝑖𝑚 𝑛1
𝑛2 = 𝑤1,2𝑃1 + 𝑤2,2𝑃2 + 𝑤3,2𝑃3 + 𝑏
𝑎2 = 𝑓 𝑛2
𝑎2 = ℎ𝑎𝑟𝑑𝑙𝑖𝑚(𝑛2)
𝑛3 = 𝑤1,3𝑃1 + 𝑤2,3𝑃2 + 𝑤3,3𝑃3 + 𝑏
𝑎3 = 𝑓 𝑛3
𝑎3 = ℎ𝑎𝑟𝑑𝑙𝑖𝑚(𝑛3)
Ejemplo 7: 2 entradas 1 salida (compuerta XOR)
𝑛2 = 𝑤1,2𝑃1 + 𝑤2,2𝑃2 + 𝑏
𝑎2 = 𝑓 𝑛2
𝑎2 = ℎ𝑎𝑟𝑑𝑙𝑖𝑚(𝑛2)
𝑛 = Σ 𝑤𝑃 + 𝑏 𝑛3 = 𝑤3,1𝑎1 + 𝑤4,1𝑎2 + 𝑏
𝑛1 = 𝑤1,1𝑃1 + 𝑤2,1𝑃2 + 𝑏 𝑎3 = 𝑓 𝑛3
𝑎1 = 𝑓 𝑛1 𝑎3 = ℎ𝑎𝑟𝑑𝑙𝑖𝑚(𝑛3)
𝑎1 = ℎ𝑎𝑟𝑑𝑙𝑖𝑚(𝑛1)
Ejercicio:
- Diseñe una red neuronal de tipo Perceptrón multicapa, que tenga 5 entradas y 4 salidas. La
salida 1 corresponderá a una salida de la compuerta OR, la salida 2 a una compuerta AND, la
salida 3 a una compuerta NOR, y la salida 4 a una compuerta NAND.
La Adaline
Proviene de ADAptive Linear Neuron, utiliza una neurona similar a la del Perceptrón, pero de
respuesta lineal cuyas entradas pueden ser continuas.
Adaline incorpora un parámetro adicional llamado bias, que se puede traducir como umbral,
aunque hay que tener en cuenta que no se trata de un umbral de disparo como el perceptrón,
sino de un parámetro que proporciona un grado de libertad adicional.
𝑦𝑖 𝑡 = 𝑤𝑖𝑗 𝑥𝑗 − 𝜃𝑖 , ∀𝑖, 1 ≤ 𝑖 ≤ 𝑚
𝑗=1
Adaline: Regla de aprendizaje
LMS: Least Mean Squares o Windrow-Hoff
Conduce a actualizaciones de tipo continuo
La actualización de los pesos es proporcional al error que la neurona comete
Se ha utilizado principalmente para:
Cancelar el ruido en la transmisión de señales (supresor de ecos en comunicaciones telefónicas)
Su utilidad se ve limitada por tratarse de un sistema lineal. Así, solamente podrá separar
patrones linealmente independientes, fallando en ocasiones ante patrones linealmente
separables, que el perceptrón siempre discrimina.
Ante patrones no separables linealmente, los resultados que proporciona son en promedio
mejores que lo del perceptron
Adaline: Regla de aprendizaje
LMS: Least Mean Squares o Windrow-Hoff
La regla de Windrow-Hoff o LMS que en un caso particular es conocida como regla delta.
Utiliza un método de optimización (minimización) llamado descenso por el gradiente o
gradiente descendiente, que permite derivar de forma sistemática reglas de aprendizaje para
arquitecturas concretas.
Media cuadrática o Cuadrático Medio: a veces las variables toman valores positivos y
negativos, como ocurre, por ejemplo, en los errores de medida. En tal caso se puede estar
interesado en obtener un promedio que no recoja los efectos del signo:
𝑸
𝟏
𝒆𝟐 = 𝒆𝟐𝒒
𝑸
𝒌=𝟏
Cálculo de vector de peso
𝑊 𝑡 + 1 = 𝑤 𝑡 + ∆𝑊(𝑡)
Dónde ∆𝑊(𝑡) es proporcional al gradiente de la función de error
Adaline: Regla de aprendizaje
LMS: Least Mean Squares o Windrow-Hoff
La respuesta de una neurona de la Adalina es lineal:
𝑛
𝑦𝑖 = 𝑤𝑖𝑗 𝑥𝑗 − 𝜃𝑖 , ∀𝑖, 1 ≤ 𝑖 ≤ 𝑚
𝑗=1
Y sus salidas son continuas, por ejemplo en [0, +1]. Si definimos 𝑤𝑖0 ≡ 𝜃𝑖 𝑦 𝑥 ≡ −1, podemos
escribir la expresión de la forma siguiente:
𝑛
𝑦𝑖 = 𝑤𝑖𝑗 𝑥𝑗 = 𝑊𝑖𝑇 𝑋
𝑗=0
Adaline: Regla de aprendizaje
LMS: Least Mean Squares o Windrow-Hoff
Se descompone
Se define el error cuadrático como el por regla de la
producto punto del vector de error cadena
Se puede computar las últimas dos derivadas Tomar en cuenta que la función de activación de la
neurona 1, solo depende de la entrada neta de la
𝑑𝑓𝑀 neurona 1, en el caso de f2 solo depende de la
= −𝐼 2𝑒𝑞 = entrada neta de la neurona 2. Por lo anterior, se
𝑑𝑛𝑀 genera una matriz diagonal
= −𝟐𝑭ሶ 𝑴 𝒏𝑴 𝒆𝒒 𝑑𝑓1𝑚 /𝑑𝑛1𝑚 0 … 0
Lo anterior es la sensibilidad de la última capa 0 𝑑𝑓1𝑚 /𝑑𝑛1𝑚 … 0
=
en términos del error ⋮ ⋮ ⋱ ⋮
0 0 … 𝑑𝑓1𝑚 /𝑑𝑛1𝑚
Ahora necesitamos calcula F punto 𝑑𝑓𝑖𝑚
Los gradientes de f1 con = 𝑑𝑖𝑎𝑔
𝑑𝑓𝑚 respecto a la entrada neta, 𝑑𝑛𝑖𝑚
𝐹ሶ 𝑚 𝑛𝑚 = 𝑑𝑛𝑚 = d2 respecto a la entrada
neta, y así sucesivamente
Esta derivada genera una matriz
𝑚
𝑑𝑓1𝑚 𝑑𝑓𝑠𝑚
= 𝑑𝑛𝑚
… 𝑑𝑛𝑚
¿Qué función de activación utilizar?
Función sigmoide logística Función lineal
1 𝑑𝑓𝑖 𝑑𝑓𝑖
𝑎𝑖 = 𝑓𝑖 𝑛𝑖 = → = 1 − 𝑎𝑖 𝑎𝑖 𝑎𝑖 = 𝑓𝑖 𝑛𝑖 = 𝑛𝑖 → =1
1 + 𝑒 𝑛𝑖 𝑑𝑛𝑖 𝑑𝑛𝑖
Si todas las neuronas tienen la misma función
Si todas las neuronas tienen la misma función
𝐹ሶ 𝑚 𝑛𝑚 = 𝑑𝑖𝑎𝑔((1 − 𝑎𝑖𝑚 )𝑎𝑖𝑚 )
𝐹ሶ 𝑚 𝑛𝑚 = 𝐼
Función sigmoide tangencial
𝑒 𝑛𝑖 − 𝑒 −𝑛𝑖 𝑑𝑓𝑖 2
Nota: No usar la lineal para todas las capas
𝑎𝑖 = 𝑓𝑖 𝑛𝑖 = 𝑛𝑖 → = 1 − 𝑎𝑖
𝑒 + 𝑒 −𝑛𝑖 𝑑𝑛𝑖
Si todas las neuronas tienen la misma función
𝐹ሶ 𝑚 𝑛𝑚 = 𝑑𝑖𝑎𝑔(1 − 𝑎𝑖𝑚 2 )
Función lineal
Multicapa: Análisis del algoritmo de
retropropagación
Minimizar el error cuadrático 𝐹 𝑋 1 , … , 𝑋 𝑀 = 𝑒𝑞𝑇 𝑒𝑞
en cada iteración mediante el método descenso por
gradiente
Ejemplos de entrenamiento
𝑝1 , 𝑡1 , 𝑝2 , 𝑡2 , … , 𝑝𝑞 , 𝑡𝑞 , 𝑝𝑄 , 𝑡𝑄
𝑑𝐹
𝑠 𝑚 = 𝑑𝑛𝑚 𝑒𝑠 𝑙𝑎 𝑠𝑒𝑛𝑠𝑖𝑏𝑖𝑙𝑖𝑑𝑎𝑑
𝐹ሶ 𝑚 𝑛𝑚 = 1
Aplicación de la red multicapa –
Separación no lineal
Entrenar una red neuronal multicapa para realizar la función XOR
2 entradas y 1 salida (Compuerta XOR)
forma 1 1 1
1=ovalada
color 1 0.5 0.5
1=verde 0.5=amarilla
madurez 0.5-1 0.5-1 0.5-1 0.5= medio
1=maduro maduro
salida 1 0.6 0.3
% Backpropagation 5 entradas 1 salidas
% Sandia, Papaya y PiÒa
𝑦𝑖 = 𝑤𝑖𝑗 𝑥𝑗
𝑗=1
Por lo tanto cada neurona 𝑖 del asociador lineal lleva acabo la suma ponderada de las entradas
con sus pesos sinápticos.
El Asociador Lineal: AprendizajeHebbiano
Debe aprender asociar 𝑝 pares entrada-salida, 𝑥 𝜇 , 𝑡𝜇 | 1 ≤ 𝜇 ≤ 𝑝 , ajustando sus pesos 𝑊
de modo que ante un cierto patrón de entrada 𝑥 𝜇 responda con 𝑡𝜇 , y que ante entradas
similares, (𝑥 𝜇 + 𝜀), responda con salidas también próximas (𝑡𝜇 + 𝛿) (con 𝜀 y 𝛿 cantidades
pequeñas).
Para ello se hace uso de una regla de aprendizaje, que a partir de las entradas y salidas
deseadas (en el caso del aprendizaje supervisado), proporciona el conjunto óptimo de pesos 𝑊.
Regla de aprendizaje de Hebb
Se denomina aprendizaje hebbiano a aquellas formas de aprendizaje que involucran una
modificación en los pesos
Δ𝑤𝑖𝑗 = 𝜀𝑦𝑖 𝑥𝑗
Siendo 𝜀 un parámetro denominado ritmo de aprendizaje, que suele ser una cantidad entre 0 y
1.
Consideremos nuestro asociador lineal. La regla de Hebb se expresa en este caso particular así
𝜇 𝜇 𝜇
Δ𝑤𝑖𝑗 = 𝑡𝑖 𝑥𝑗
Y, por lo tanto
𝑛𝑒𝑤 𝜇
𝑤𝑖𝑗 = ∆𝑤𝑖𝑗
Regla de aprendizaje de Hebb
Si los pesos de partida son nulos, el valor final de 𝑊 para las 𝑝 asociaciones será:
𝑊 = 𝑡 1 𝑥 1𝑇 + 𝑡 2 𝑥 2𝑇 + ⋯ + 𝑡 𝑝 𝑥 𝑝𝑇
Empleando la regla de Hebb para el entranamiento del asociador lineal, si los vectores de
entrada {𝑥 1 , 𝑥 2 , … , 𝑥 𝑝 } son ortonormales (ortonormales y de longitud unidad) se cumple
𝑊𝑥 𝜇 = 𝑡 1 𝑥 1𝑇 + ⋯ + 𝑡 𝑝 𝑥 𝑝𝑇 𝑥 𝜇 = 𝑡 1 𝑥 1𝑇 . 𝑥 𝜇 + ⋯ + 𝑡 𝑝 𝑥 𝑝𝑇 . 𝑥 𝜇 = 𝑡𝜇
as
Perceptrón Simple: Algoritmo de
Aprendizaje
Sea un conjunto de 𝑝 patrones 𝑥 𝜇 , 𝜇 = 1, … , 𝑝 con sus salidas deseadas 𝑡𝜇 . Tanto las entradas
como las salidas solamente pueden tomar valores -1 ó 1 (o bien, 0 ó 1, según definamos los
niveles lógicos).
Ante la presentación del patrón 𝜇 − é𝑠𝑖𝑚𝑜, si la propuesta que presenta el perceptrón es
correcta, no actualizaremos los pesos; si es incorrecta lo modificaremos según la regla de Hebb.
Por lo que se tiene:
𝜇 𝜇 𝜇 𝜇
𝜇 2𝜀. 𝑡𝑖 𝑥𝑗 , 𝑠𝑖 𝑦𝑖 ≠ 𝑡𝑖
∆𝑤𝑖𝑗 t =ቐ 𝜇 𝜇
0 , 𝑠𝑖 𝑦𝑖 = 𝑡𝑖