REDES NEURONALES CON APRENDIZAJE NO SUPERVISADO
Inicialización
P= Matriz de vectores de entrada.
S= Número de neuronas.
La función initc toma una matriz de vectores de entrada P y un numero de neuronas S y regresa los pesos para una capa competitiva sin umbrales.
La función initc fija los umbrales en cero para cada peso Wij asocia una entrada i en el centro del intervalos de i.
Entrenamiento
Las redes competitivas se pueden entrenar con vectores de entrada con la regla de aprendizaje instar. Cada neurona compite para responder a un vector de entrada P. Si los umbrales son todos cero, la neurona cuyo vector de peso esté más próximo a P obtiene la más ata entrada de red y gana la competencia.
Puesto que la salida del vector a contiene sólo 1/0, se puede sustituir la regla instar (Learnis) por la regla de Kohonen (Learnk) disminuyendo el número de cálculos y haciendo el código anterior más eficiente.
La función trainc entrena una capa competitiva con vectores de entrada en orden aleatorio.
Donde:
disp_freq = 25
max_pres = 100
lr = 0.01
Trainc toma el peso W y el umbral b de una capa competitiva, una matriz de vectores de entrada P y los parámetros de entrenamiento tp y regresa nuevos pesos.
Ejemplo:
En el editor de Matlab teclee el siguiente código que resuelve el problema anterior:
clear;echo on;clc;nntwarn off;
%se introducen los patrones de entada
P= [ -0.1961 0.1961 0.9806 0.9806 -0.5812 -0.8137;
0.9806 0.9806 0.1961 -0.1961 -0.8137 -0.5812];
[W]= initc(P,3)
%entrenamiento de la red
[W]= trainc(W,P,[2 100 0.5])
a= simuc(P,W)
echo off
En la ventana de comandos de Matlab aparece paso a paso la ejecución del programa, como sigue:
![]() |
La salida del programa (Además del Proceso Descrito en la Ventana de Comandos de Matlab) es una gráfica donde aparecen los patrones de entrada en un plano de dos dimensiones, con la clasificación correspondiente (Frontera de Decisión). Esto se muestra en la Fig. 4.13.
Figura 4.13: Salida Red Hamming