En 1981, el profesor Kohonen de la Universidad de Helsinki en Finlandia propuso una solución relativamente completa para una red neuronal artificial de mapas de características autoorganizada (denominada red SOM) con buena rendimiento de clasificación. Este tipo de red también se denomina red de mapas de características de Kohonen.
Este tipo de red simula las características de autoorganización del sistema nervioso del cerebro. Es una red de aprendizaje competitiva que puede realizar un aprendizaje autoorganizado sin supervisión.
2. Principios del modelo Hohonen
1. Descripción general
La red SOM consta de una capa de entrada y una capa de competencia. El número de neuronas en la capa de entrada es n, y la capa de competencia está compuesta por neuronas M = R × C, formando una matriz plana bidimensional o una matriz unidimensional (R = 1). La capa de entrada y la capa de competencia están completamente interconectadas.
La idea básica de la red SOM es que cada neurona en la capa de competencia de la red compite por la oportunidad de responder al patrón de entrada. Al final, solo una neurona se convierte en la ganadora de la competencia y los pesos de conexión asociados con esas neuronas ganadoras se ajustan en una dirección más propicia para su competencia. Esta neurona ganadora representa la clasificación del patrón de entrada.
El algoritmo SOM es un método de agrupación que no requiere orientación del profesor. Puede mapear patrones de entrada arbitrarios en gráficos discretos unidimensionales o bidimensionales en la capa de salida y mantener su topología sin cambios. Es decir, sin profesor, los resultados de la clasificación se expresan a nivel competitivo mediante el aprendizaje autoorganizado de patrones de entrada. Además, mediante el aprendizaje repetido del patrón de entrada, la red puede hacer que la densidad de distribución espacial del vector de peso de conexión sea consistente con la distribución de probabilidad del patrón de entrada, es decir, la distribución espacial del vector de peso de conexión puede reflejar las características estadísticas. del patrón de entrada.
2. Inicialización de los pesos de la red
Porque es probable que la entrada de la red aparezca en el área media, si el peso inicial de la capa de competencia se selecciona en el área media de En el espacio de entrada, el efecto de aprendizaje será más efectivo.
3. Matriz de distancia de vecindad
Las neuronas de la red SOM se pueden organizar de forma arbitraria. Esta disposición se puede describir mediante la matriz de distancia de vecindad D, que representa la distancia entre las neuronas de la red. misma capa La distancia de Manhattan entre dos neuronas se refiere a la suma de los valores absolutos de sus elementos en el vector después de restar las coordenadas de la neurona.
4.Regla de aprendizaje competitivo de Kohonen
Supongamos que el modo de entrada de la red SOM es Xp=(,...), p=1,2...la salida de la neurona de la capa competitiva El valor es yj (j = 1, 2, ..., m), y el vector de peso de conexión entre la neurona J de la capa competitiva y la neurona de la capa de entrada es
Wj=(wj1, wj2, ..., wjN), j =1, 2,…,M.
El proceso de aprendizaje autoorganizado de la red Kohonen incluye dos partes: una es seleccionar la neurona que mejor se adapta y la otra otra es actualizar adaptativamente el vector de peso.
La función de evaluación utilizada para determinar la mejor coincidencia entre el patrón de entrada Xp y el vector de peso de conexión Wj es la distancia euclidiana mínima entre los dos vectores, es decir,
, j= 1, 2,…,M,]]
g, determina la neurona ganadora g.
dg=mjin(dj), j=1,2,…,M.
Encuentre la neurona ganadora G del modo de entrada Xp en la capa de competencia y su distancia de vecindad nd The salida de la neurona.
Nuevas tecnologías y modelos para la evaluación de recursos minerales en China
Dgm es un elemento de la matriz de distancia de vecindad D, que es la diferencia entre la neurona ganadora G en la capa de competencia y la Distancia de la capa de competencia entre otras neuronas.
Encuentre el valor de corrección de peso de la neurona ganadora G del modo de entrada Xp en la capa de competencia y las neuronas dentro de la distancia de vecindad nd.
Nuevas tecnologías y modelos para la evaluación de recursos minerales en China
Donde: I = 1, 2,…,n;
Lr es la tasa de aprendizaje;
t es el número de ciclos de aprendizaje.
A los elementos restantes de δwjt(t+1) se les asigna el valor 0.
Ajusta la conexión correcta
wji(t+1)= wji(t)+δwji(t+1).
5. Actualización de la tasa de aprendizaje y la distancia vecinal en el aprendizaje del peso.
(1) El proceso de aprendizaje de la red SOM se divide en dos etapas.
La primera etapa es el aprendizaje y el ajuste aproximados.
En esta etapa, el vector de peso de conexión se ajusta en la dirección del patrón de entrada, el peso de la neurona se establece en el espacio de entrada adaptado a la posición de la neurona de acuerdo con la dirección esperada, y la posición de mapeo correspondiente del patrón de entrada en la capa de competencia está determinada de forma aproximada. Una vez que cada método de entrada tenga una posición de mapeo relativa en la capa de competencia, pasará a la etapa de aprendizaje y ajuste fino, que es la segunda etapa. En esta etapa, el aprendizaje de la red se enfoca en ajustar los pesos de las conexiones en un rango pequeño, y los pesos de las neuronas se extienden en la dirección deseada en el espacio de entrada hasta que mantienen el orden topológico que establecieron en la etapa de ajuste aproximado.
La tasa de aprendizaje debería disminuir a medida que avanza el aprendizaje.
(2) Funciones y actualizaciones del vecindario
En la red SOM, las reglas cambiantes de excitación e inhibición de las células nerviosas del cerebro estimuladas por información externa se reflejan en las funciones del vecindario. La función de vecindad especifica el rango de otras neuronas que están igualmente ajustadas por el vector de peso Wg conectado a la neurona ganadora g. En la etapa inicial de aprendizaje, el rango de vecindad es mayor a medida que avanza el aprendizaje. el barrio se va reduciendo poco a poco.
(3) Actualización de la tasa de aprendizaje y distancia del vecindario
En la etapa de ajuste aproximado,
Inicialización de los parámetros de aprendizaje
MAX_STEP1= 1000,
El valor inicial de la tasa de aprendizaje en la fase de ajuste aproximado es LR1=1.4,
El valor inicial de la tasa de aprendizaje en la fase de ajuste fino es LR2= 0.02,
MAX_ND1=Dmax,
Dmax es el número primo máximo de la matriz de distancias de vecindad d
Etapa de ajuste aproximado
La número de ciclos de aprendizaje paso≤MAX_STEP1,
La tasa de aprendizaje lr se ajusta de LR1 a LR2,
La distancia del vecindario nd se ajusta de MAX_ND1 a 1,
Buscar el coeficiente de actualización r,
r=1 paso/MAX_STEP1,
La distancia de vecindad nd se actualiza,
nd = 1.00001+(MAX _ nd 1- 1)×r.
La tasa de aprendizaje lr se actualiza,
nd p>
lr=LR2+(LR1-LR2)×r.
En la etapa de ajuste fino,
Inicialización de los parámetros de aprendizaje,
MAX_STEP2=2000,
El valor inicial de la tasa de aprendizaje es LR2=0.02,
MAX_ND2=1.
Etapa de ajuste fino
MAX _ paso 1 La tasa de aprendizaje lr disminuye gradualmente desde LR2 , La distancia del vecindario nd se establece en 1, Actualiza la distancia del vecindario nd, nd=MAX_ND2+0.00001. Tasa de aprendizaje lr se actualiza, lr=LR2×(MAX_STEP1/step). Revisión de la predicción de la red Después del aprendizaje de la red SOM, recupere de acuerdo con lo siguiente. fórmula: Nuevas tecnologías y modelos para la evaluación de recursos minerales en China Yj=0, j=1,2,…,M, (j≠g). El patrón de entrada a clasificar se proporciona a la capa de entrada de la red, y la neurona más cercana al vector de peso de conexión del patrón de entrada se encuentra en la capa de competencia de acuerdo con el método anterior. En este momento, el valor máximo de activación de esta neurona es 1, y otras neuronas están inhibidas y tienen un valor de 0. En este punto, el estado de la neurona representa la clasificación del patrón de entrada. 3. Algoritmo general 1. Algoritmo global de aprendizaje de peso SOM (1) Parámetro de entrada X[N][P]. (2) Construya la matriz de pesos W[M][N]. 1) Encuentre Xmid[N] a partir de X[N][P], 2) Construya el peso W[M][N] a partir de Xmid[N]. (3) Construir una capa de competencia. 1) Encuentre el número m de neuronas de la capa de competencia, 2) Encuentre la matriz de distancias de vecindad D[M][M], 3) Encuentre el valor máximo Dmax de los elementos de la matriz D[M][M]. (4) Inicialización de parámetros de aprendizaje. (5)Aprender peso W[M][N]. 1) La tasa de aprendizaje lr y la distancia de vecindad nd se actualizan en dos etapas: Actualización en la etapa de ajuste aproximado (2) Actualización; en la etapa de ajuste. 2) Encuentre la neurona ganadora win[p] con el modo de entrada X[N][p] en la capa de competencia. (I) Encuentre la distancia euclidiana DM entre X[N][p] y W[m][N] (2) Según la distancia más corta dm, encuentre; la neurona ganadora gana [p] del patrón de entrada X [N] [p] en la capa de competencia. 3) Utilice el patrón de entrada X[N][p] de la capa de competencia y la salida Y[m][p] de la neurona dentro de la distancia de vecindad nd para encontrar la neurona ganadora[p] ]. 4) Encuentre la neurona ganadora win[p] con el modo de entrada X[N][p] en la capa de competencia y su peso de la neurona dentro de la distancia de vecindad nd Corrección valor δ w [m] [n], Por lo tanto, se obtiene el valor de corrección de peso δW[M][N] generado por el patrón de entrada X[N][p]. 5) Corrección de peso w [m] [n] = w [m] [n]+δ w [m] [n]. 6) Condiciones de finalización del aprendizaje: El ciclo de aprendizaje alcanza el tiempo MAX_STEP; (ii) La tasa de aprendizaje lr alcanza el LR_MIN especificado por el usuario; (iii) El tiempo de aprendizaje alcanza el TIME_LIM especificado por el usuario. (6)Salida. 1) La matriz de peso w[m][n] obtenida mediante el aprendizaje. 2) La matriz de distancia de vecindad D[M][M]. (7) Fin. 2. Algoritmo general de predicción de SOM (1) Ingrese los datos que se clasificarán X[N][P] y la matriz de distancia de vecindad D[M][M]. (2) Encuentre la neurona ganadora win[p] con el modo de entrada X[N][p] en la capa de competencia. 1) Encuentra la distancia euclidiana DM entre X[N][p] y W[m][N] 2) Según la distancia más corta dm, en la competencia; capa Encuentre la neurona ganadora win[p] con el patrón de entrada X[N][p]. (3) Encuentre la posición de clasificación de la neurona ganadora[p] en la capa de competencia. (4) Genere la posición de fila y columna de la neurona ganadora [p] en la capa de competencia adaptada a los datos de entrada como resultado de la clasificación. (5) Fin. 4. Diagrama de flujo general del algoritmo El diagrama de flujo general del algoritmo de Kohonen se muestra en la Figura 4. Diagrama de flujo de datos del verbo (abreviatura de verbo) El diagrama de flujo de datos de Kohonen se muestra en la Figura 4. En sexto lugar, el algoritmo general de reconocimiento sin patrones Supongamos que hay n muestras, cada muestra mide m variables y hay una matriz de datos original: X=(xij)N×M, i=1, 2,…,N, j=1,2,…,M. (1) Preprocesamiento de datos originales X=(xij)N×M se trata como Z=(zij)N×M, Hay tres tratamientos: 1) Contraste; 2) Estandarización; 3) Normalización. Por defecto, el programa utiliza la normalización. (2) Construir una red Kohonen Los pesos de conexión de las neuronas entre la capa de competencia y la capa de entrada forman una matriz WQ×M m. Inicialización WQ×M. (3) Ingrese el ciclo de clasificación de aprendizaje de la red Kohonen, use época para registrar el número de ciclos, época = 1. (4) En cada período de época, para cada muestra n (n = 1, 2,..., n). Comience con 1 muestra, n=1. (5) Primero, calcule la distancia Znm (m = 1, 2,..., m) entre los datos de entrada y los pesos correspondientes wqm de q neuronas en la capa de competencia. (6) Encuentre la distancia mínima entre la muestra n de la capa de entrada y las q neuronas de la capa de competencia. La neurona Win [n] con la distancia más pequeña es la neurona ganadora y la muestra n. se clasifica en El tipo representado por la neurona ganadora Win[n], logrando así la clasificación de la muestra n.. (7) Clasifique cada muestra en el conjunto de muestras: n =n +1. (Si n≤N, pase a 5. En caso contrario, pase a 8.) (8) Encuentre las variables de las muestras correspondientes a cada neurona después de la clasificación El centro de gravedad se utiliza como el centro de gravedad de la variable correspondiente a la muestra, y el peso de conexión de cada neurona se actualiza con el centro de gravedad de la variable correspondiente a la muestra. (9) Época = Época + 1; Un ciclo de clasificación de aprendizaje ha finalizado. (10) Si se cumple una de las siguientes dos condiciones, el ciclo de clasificación finaliza y pasa al 11; En caso contrario, el ciclo de clasificación continúa y pasa al 4; 1) Todas las muestras se fijan en una neurona y ya no cambian. 2) El ciclo de clasificación de aprendizaje alcanza el número máximo de iteraciones. (11) Salida: 1) ¿En cuántas categorías se dividen n muestras * * *, cuántas muestras hay en cada categoría y registra el número de muestras en cada una? categoría; 2) Si el número de muestras en una determinada categoría excede 1, genere el error medio, mínimo, máximo y cuadrático medio de cada variable en los datos originales de una determinada categoría; 3) Si el número de muestras de un determinado tipo es 1, entonces genere los valores variables de los datos originales de ese determinado tipo de muestra. 4) Genere la media, mínima; , y valores máximos de cada variable (j = 1, 2,..., m) del valor de los datos originales y error cuadrático medio. (12)Fin. 7. Diagrama de flujo del algoritmo general de reconocimiento sin patrones. El diagrama de flujo del algoritmo general no modal de Kohonen se muestra en la Figura 5.