Cómo mejorar la precisión de la red neuronal bp y mejorar el esquema de la red neuronal bp

1. ¿Cuál es el problema central de la red neuronal de BP?, ¿cuáles son sus ventajas y desventajas?

La red neuronal artificial es un sistema de procesamiento de información diseñado para imitar la estructura y la función del cerebro humano. Utiliza métodos de redes neuronales artificiales para realizar el reconocimiento de patrones. Puede manejar algunos problemas donde la información ambiental es muy complicada, el conocimiento de fondo no es claro, y las reglas de razonamiento no son claras. , el método de redes neuronales permite que las muestras tengan grandes defectos y distorsiones. Hay muchos tipos de redes neuronales. Al establecer modelos de redes neuronales, se pueden considerar diferentes modelos de redes neuronales de acuerdo con las características de la investigación. objeto. Red BP de alimentación hacia adelante, es decir, propagación inversa de errores La red neuronal es la red neuronal más utilizada y popular. La relación de entrada y salida de la red BP se puede considerar como una relación de mapeo, es decir, cada conjunto de entrada corresponde a un conjunto de salida El algoritmo BP es el entrenamiento de red de avance multicapa más famoso Aunque el algoritmo tiene deficiencias como la velocidad de convergencia lenta y el extremo local, se pueden usar varias medidas de mejora para mejorar su velocidad de convergencia y superar el fenómeno del extremo local, y tiene las características de simplicidad, facilidad de operación, pequeña cantidad de cálculo y fuerte paralelismo. , sigue siendo el algoritmo preferido para redes de alimentación directa de múltiples capas.

  • Ventajas de la red BP directa multicapa:

  • La red esencialmente realiza una función de mapeo desde la entrada hasta la salida, y la teoría matemática ha demostrado que tiene la función de realizar cualquier mapeo no lineal complejo. Esto lo hace particularmente adecuado para resolver problemas con mecanismos internos complejos;

  • La red puede extraer automáticamente reglas de resolución "razonables" aprendiendo el ejemplo establecido con la respuesta correcta, es decir, tiene capacidad de autoaprendizaje;

  • La red tiene cierta capacidad de promoción y generalización.

  • El problema de la red BP directa multicapa:

  • Desde un punto de vista matemático, el algoritmo BP es un método de optimización de búsqueda local, pero el problema que debe resolver es resolver el extremo global de funciones no lineales complejas. Por lo tanto, es probable que el algoritmo caiga en el extremo local y haga que el falla en el entrenamiento;

  • Las capacidades de aproximación y generalización de la red están estrechamente relacionadas con la tipicidad de las muestras de aprendizaje, y es un problema muy difícil seleccionar instancias de muestra típicas del problema para formar el conjunto de entrenamiento.

  • Es difícil resolver la contradicción entre la escala de instancia y la escala de red del problema de la aplicación. Esto involucra la relación entre la posibilidad y factibilidad de la capacidad de la red, es decir, el problema de la complejidad del aprendizaje;

  • No existe una guía teórica unificada y completa para la elección de la estructura de la red y, en general, solo se puede seleccionar mediante la experiencia. Por esta razón, algunas personas llaman arte a la selección de estructuras de redes neuronales. La estructura de la red afecta directamente la capacidad de aproximación y las propiedades de generalización de la red. Por lo tanto, cómo elegir una estructura de red adecuada en la aplicación es un tema importante;

  • Las muestras recién agregadas deben afectar la red aprendida con éxito, y la cantidad de características que describen cada muestra de entrada también debe ser la misma;

  • La contradicción entre la capacidad predictiva de la red (también llamada capacidad de generalización, capacidad de promoción) y la capacidad de entrenamiento (también llamada capacidad de aproximación, capacidad de aprendizaje). En general, cuando la capacidad de entrenamiento es deficiente, la capacidad de predicción también es deficiente y, en cierta medida, con la mejora de la capacidad de entrenamiento, la capacidad de predicción también mejora. Pero esta tendencia tiene un límite, cuando se alcanza este límite, a medida que aumenta la capacidad de entrenamiento, disminuye la capacidad de predicción, es decir, se produce el llamado fenómeno de "sobreajuste". En este momento, la red ha aprendido demasiados detalles de la muestra y no puede reflejar las leyes contenidas en las muestras.

  • Dado que el algoritmo BP es esencialmente un método de descenso de gradiente, y la función objetivo que necesita optimizar es muy compleja, inevitablemente habrá un "fenómeno de diente de sierra", que hace que el algoritmo BP sea ineficiente;

  • Hay parálisis, porque la función objetivo optimizada es muy compleja, inevitablemente aparecerán algunas áreas planas cuando la salida de la neurona está cerca de 0 o 1, en estas áreas, el error de peso cambia muy poco, haciendo que el proceso de entrenamiento casi se detenga;

  • Para que la red implemente el algoritmo BP, no se puede usar el método de búsqueda unidimensional tradicional para encontrar el tamaño de paso de cada iteración, pero la regla de actualización del tamaño de paso se debe dar a la red con anticipación, lo que causará el algoritmo sea ineficiente.

Proyecto de escritura de IA de Google: Little Fat Cat

2. Desventajas de la red neuronal bp

1) Problema de minimización local: desde un punto de vista matemático, la red neuronal tradicional de BP es un método de optimización de búsqueda local, que resuelve un problema no lineal complejo. Ajuste gradualmente, esto hará que el algoritmo caiga en un extremo local y los pesos convergerá a un mínimo local, lo que conducirá a una falla en el entrenamiento de la red Cómo mejorar la red neuronal bp . Además, la red neuronal de BP es muy sensible al peso inicial de la red. Inicializar la red con diferentes pesos tiende a converger a diferentes mínimos locales. Esta es también la razón fundamental por la que muchos académicos obtienen resultados diferentes cada vez que entrenan.
2) La velocidad de convergencia del algoritmo de red neuronal BP es lenta: dado que el algoritmo de red neuronal BP es esencialmente un método de descenso de gradiente, la función objetivo que debe optimizar es muy compleja, por lo que inevitablemente habrá un "fenómeno de diente de sierra". lo que hace que el algoritmo BP sea bajo y debido a que la función objetivo optimizada es muy compleja, inevitablemente aparecerán algunas áreas planas cuando la salida de la neurona esté cerca de 0 o 1. En estas áreas, el error de peso cambia muy poco, por lo que el entrenamiento el proceso casi se detiene.
3) Diferentes opciones de estructura de red neuronal de BP: Todavía no existe una guía teórica unificada y completa para la elección de la estructura de la red neuronal de BP y, en general, solo puede seleccionarse por experiencia. Si la estructura de la red es demasiado grande, la eficiencia del entrenamiento no es alta y puede ocurrir un sobreajuste, lo que resulta en un bajo rendimiento de la red y una reducción de la tolerancia a fallas.Si la estructura de la red es demasiado pequeña, es posible que la red no converja. La estructura de la red afecta directamente la capacidad de aproximación y las propiedades de generalización de la red. Por lo tanto, cómo elegir una estructura de red adecuada en la aplicación es un tema importante.
4) La contradicción entre la instancia de la aplicación y la escala de la red: la red neuronal de BP es difícil de resolver La contradicción entre la escala de la instancia y la escala de la red del problema de la aplicación, que involucra la relación entre la posibilidad y la viabilidad de la capacidad de la red, que es, el problema de la complejidad del aprendizaje.
5) Contradicción entre la capacidad de predicción y la capacidad de entrenamiento de la red neuronal BP: la capacidad de predicción también se denomina capacidad de generalización o capacidad de promoción, y la capacidad de entrenamiento también se denomina capacidad de aproximación o capacidad de aprendizaje. En general, cuando la capacidad de entrenamiento es deficiente, la capacidad de predicción también es deficiente.

3. ¿La red neuronal bp mejora la capacidad de generalización? ¿Cuántas maneras hay?

Varios métodos convencionales para mejorar la capacidad de generalización se enumeran a continuación: 1. Más muestras de entrada pueden mejorar la capacidad de generalización,
pero no demasiadas, demasiadas muestras conducen a un sobreajuste y una capacidad de generalización deficiente, las muestras incluyen al menos datos de punto de inflexión de una sola vez .
2. Para la selección del número de neuronas en la capa oculta, intente elegir un número menor de neuronas sin afectar el rendimiento. Hay demasiados nodos en la capa oculta, lo que reduce la capacidad de generalización. Solo se necesitan de docenas a cientos de neuronas para construir un cohete. ¿Por qué necesitamos tantas neuronas para acomodar cientos o miles de datos?
3. Si el error es pequeño, la capacidad de generalización es buena, si el error es demasiado pequeño, se ajustará demasiado y la capacidad de generalización será deficiente.
4. La elección de la tasa de aprendizaje, especialmente la tasa de aprendizaje del peso, tiene un gran impacto en el rendimiento de la red. Si es demasiado pequeña, la velocidad de convergencia será muy lenta y es fácil caer en la minimización local; si es demasiado grande, la velocidad de convergencia será rápida, pero es fácil de balancear, el error es difícil de reducir; la tasa de aprendizaje de peso general es ligeramente mayor que el error requerido; además, se puede usar una tasa de aprendizaje variable para aumentar el aprendizaje tasa cuando el error es grande, y luego reduce la tasa de aprendizaje cuando el error es pequeño, para que pueda converger Más rápido, mejor efecto de aprendizaje, no es fácil caer en mínimos locales.
5. El método de detenerse en cualquier momento se puede utilizar durante el entrenamiento, es decir, el entrenamiento finaliza cuando el error alcanza el requisito, para evitar el sobreajuste, los pesos locales se pueden ajustar para acelerar la convergencia de los locales no convergentes.

4. ¿Cuántos tipos de mejoras de algoritmos existen en la red neuronal de bp? ¡Por favor, dame un ejemplo!

Los puntos de mejora se encuentran principalmente en los siguientes aspectos :
1. La pendiente de la función de activación ————————————————————————————————— ———————————————————————————————————————————————————— ———————————————————————————————————————————————————— ——————————————————————— Factor, función por partes como función de excitación 2 superficie de error —————cuadrado de error como función objetivo, velocidad de aproximación lenta, sobreajuste — ————————————————— en la función de error estándar Agregar elementos de penalización —————————————————— La relación entre la distancia de información y la generalización habilidad, construyendo una nueva función de aprendizaje de red neuronal 3 Selección de pesos iniciales de red ————— ———Por lo general, elija entre [0,1], fácil de caer en el mínimo local ———————————— ——————El algoritmo compuesto optimiza el peso inicial —————————— ———————La desigualdad de Cauchy y el método del álgebra lineal para obtener el peso inicial óptimo 4 algoritmo de optimización mejorado —————— — Standard BP adopta el método de descenso de gradiente, la convergencia mínima local es lenta —————— ————————— Método de gradiente conjugado, método de Newton, método de Gauss-Ncwton, método Lvenber_Marquardt, algoritmo de propagación rápida ———— ————————————— Algoritmo de aprendizaje de red Feedforward, algoritmo de aprendizaje de segundo orden, algoritmo BP de tres elementos, algoritmo BP para parámetros de aprendizaje óptimos. 5. Optimización de la estructura de la red ———————— Incertidumbre del número de capas de la red, el número de nodos en cada capa y el modo de conexión de los nodos en la estructura topológica —————————— ———————————————————————————————————————————————————— ———————————————————————————————————————————————————— —————————————————— del método de construcción y poda Método de la rama (método de atenuación de peso, método de cálculo de sensibilidad , ———————————— ———————————————————————————————————————————————————— ———————————————————————————————————————————————————— ———————————————————————————————————————————————————— ———————————————————————————————————————————————————— —————————




















———————y algoritmo genético, cálculo evolutivo, algoritmo inmune artificial, algoritmo de colonia de hormigas, algoritmo de enjambre de partículas,
—————— matemáticas difusas, teoría de ondículas, teoría del caos. red neuronal celular

5. Predicción de asentamiento de cimientos de suelos blandos basada en el algoritmo de red neuronal artificial BP mejorado

La predicción mejorada de la red neuronal BP requiere datos a intervalos iguales y utiliza puntos de interpolación Spline para el modelado. Para comparar con el efecto de predicción del método mencionado anteriormente, el volumen de asentamiento de 550-665 d (un total de 24 datos de muestra) aún se selecciona como muestra de entrenamiento, y el volumen de asentamiento de 670-745 d (un total de 16 datos de muestra). data) se reserva como muestra de entrenamiento. Una muestra de prueba para la red neuronal. Tome cada 4 asentamientos consecutivos adyacentes (intervalo de tiempo Δt = 5 d) como una muestra de entrada (S1, S2, S3, S4), y el quinto asentamiento inmediatamente adyacente como la muestra objetivo (S5), de modo que usando 2 Con 4 datos originales puntos, se construyen 21 conjuntos de vectores de entrada de muestra de entrenamiento. El número de unidades de capa de entrada para cada conjunto de muestras de entrenamiento es n=4, el número de unidades de capa de salida es q=1 y la fórmula para determinar el número de unidades de capa oculta p es:

Investigación sobre las características de ingeniería y la ley de liquidación de consolidación del suelo blando del bajío de Wenzhou

En la fórmula: a es una constante entre 1 y 10.

El número de neuronas en la capa oculta está determinado por la fórmula (5.57) como p=3~12. Su valor específico se juzgará por el error de entrenamiento de la red neuronal artificial BP, y se tomará el número de neuronas de capa oculta correspondiente al error de red mínimo.

Este libro compila un programa de red neuronal de BP mejorado basado en MATLAB 7.1 y adopta dos mejoras al algoritmo de red neuronal artificial de BP estándar: el método de agregar impulso y el método de ajustar de forma adaptativa la tasa de aprendizaje. están escalados (procesamiento de normalización), después de la transformación, puede evitar que la salida de la neurona se sature debido a que el valor absoluto de la entrada neta es demasiado grande, y luego hacer que el ajuste de peso ingrese al área plana de la superficie de error. La fórmula de transformación de preprocesamiento normalizada para transformar datos de entrada y salida en valores en el intervalo [0, 1] es

Investigación sobre las características de ingeniería y la ley de liquidación de consolidación del suelo blando del bajío de Wenzhou

En la fórmula: xi son los datos de entrada o salida, xmin y xmax son los valores más;

Valor normalizado para datos de entrada o salida.

La curva de entrenamiento del modelo de red neuronal BP se muestra en la Figura 5.17.

El valor ajustado/predicho y el valor medido del modelo de red neuronal BP mejorado establecido en este libro se enumeran en la Tabla 5.13. La comparación entre la curva ajustada/predicha y la curva medida se muestra en la Figura 5.18, y el diagrama residual se muestra en la figura 5.19.

En la Tabla 5.13 y las Figuras 5.18 y 5.19, se puede ver que el error residual promedio de los resultados de predicción del modelo de red neuronal BP mejorado es de 0,1 cm, y el error relativo promedio es de 0,06 %. Los efectos de ajuste y predicción son muy buenos. . Sin embargo, a diferencia de los métodos de predicción anteriores, el valor predicho del modelo de red neuronal artificial BP mejorado es ligeramente más pequeño que el valor medido. Como el tiempo de predicción está muy lejos de la muestra de entrenamiento, esto hará que el resultado no sea seguro. Por lo tanto, Se recomienda que este método se utilice para pronósticos a corto y mediano plazo. Al mismo tiempo, para aumentar la precisión de la predicción en la etapa posterior, el conjunto de vectores de muestra de entrenamiento debe actualizarse continuamente.

Figura 5.17 Curva de entrenamiento de la red neuronal BP de la sección N5+850

Figura 5.18 Comparación de la curva predicha del modelo mejorado de red neuronal artificial BP y la curva medida en la sección N5+850

Figura 5.19 Diagrama residual de predicción del modelo de red neuronal artificial BP mejorado de la sección N5+850

Tabla 5.13 Comparación del valor predicho de la red neuronal BP mejorada y el valor medido

6. Implementación del lenguaje C*/algoritmo genético mejorado Principio de red neuronal de BP y cómo implementar el algoritmo

Genetic Algorithms tiene una referencia bastante grande. El statu quo de la aplicación del algoritmo genético en los juegos En la codificación genética, las coordenadas de las fichas se utilizan generalmente como genes para la codificación de números reales. El primer gen del cromosoma son las coordenadas del punto de inicio, el último gen son las coordenadas del punto final, y el gen medio es cada Las coordenadas de un mosaico. Al generar un cromosoma, comenzando desde el punto de partida, seleccione aleatoriamente un nodo transitable entre los nodos vecinos del nodo actual y agregue sus coordenadas al cromosoma, y ​​así sucesivamente, hasta que se encuentre el punto de destino y se genere un cromosoma. Repita las operaciones anteriores hasta alcanzar el tamaño de población especificado. Ventajas del algoritmo genético: 1. El algoritmo genético utiliza la codificación de variables de decisión como objeto de operación y puede operar directamente en objetos estructurales como conjuntos, secuencias, matrices, árboles y gráficos. Por un lado, este método ayuda a simular el proceso de los genes biológicos, los cromosomas y la evolución genética, y facilita la aplicación de operadores genéticos. Por otro lado, el algoritmo genético tiene una amplia gama de aplicaciones, como optimización de funciones, programación de producción, control automático, procesamiento de imágenes, aprendizaje automático, minería de datos y otros campos. 2. El algoritmo genético utiliza directamente el valor de la función objetivo como información de búsqueda. Solo utiliza el valor de la función de aptitud para medir el grado excelente del individuo y no involucra el proceso de derivación y diferenciación del valor de la función objetivo. Porque en realidad, muchas funciones objetivo son difíciles de derivar, o incluso no tienen derivada, por lo que esto también hace que el algoritmo genético muestre un alto grado de superioridad. 3. El algoritmo genético tiene la característica de búsqueda grupal. Su proceso de búsqueda parte de un grupo inicial P(0) con múltiples individuos, por un lado, puede evitar efectivamente buscar algunos puntos innecesarios. Por otro lado, debido a que el método tradicional de búsqueda de un solo punto es fácil caer en un punto extremo local de un solo pico cuando se busca en el espacio de búsqueda de distribución de múltiples picos, pero la característica de búsqueda grupal del algoritmo genético puede evitar tales problemas. , por lo que puede Refleja la paralelización del algoritmo genético y una mejor búsqueda global. 4. Los algoritmos genéticos se basan en reglas probabilísticas en lugar de reglas deterministas. Esto hace que la búsqueda sea más flexible y la influencia de los parámetros en su efecto de búsqueda sea lo más pequeña posible. 5. El algoritmo genético tiene escalabilidad y es fácil de mezclar y usar con otras técnicas. Los puntos anteriores son las ventajas del algoritmo genético como algoritmo de optimización. Desventajas del algoritmo genético: el algoritmo genético es propenso a problemas irregulares e inexactos al codificar.

7. El algoritmo genético de Matlab mejora la red neuronal de bp

El código que proporcionó es un proceso básico de capacitación de redes neuronales de BP. Generalmente, GA se usa para entrenar, y luego se usa el método de impulso mejorado para continuar entrenando hasta que finalmente se alcanza la meta.

El Algoritmo Genético (Genetic Algorithm) es un modelo computacional del proceso de evolución biológica que simula la selección natural y el mecanismo genético de la teoría de la evolución biológica de Darwin.Es un método para buscar la solución óptima simulando el proceso de evolución natural. El algoritmo genético comienza con una población que representa el conjunto de soluciones potenciales del problema, y ​​una población consta de un cierto número de individuos codificados por genes. Cada individuo es en realidad una entidad con cromosomas. El cromosoma es el principal portador de material genético, que es una colección de múltiples genes. Su expresión interna (es decir, el genotipo) es una determinada combinación de genes, que determina la expresión externa de la forma de un individuo. Por ejemplo, la característica de el cabello negro está controlado por los cromosomas, un rasgo está determinado por una cierta combinación de genes.

8. Aplicación insuficiente de la red neuronal BP

Las redes neuronales se pueden utilizar para clasificar, agrupar, predecir, etc. La red neuronal necesita una cierta cantidad de datos históricos. A través del entrenamiento de datos históricos, la red puede aprender el conocimiento oculto en los datos. En su problema, primero debe encontrar algunas características de ciertos problemas y los datos de evaluación correspondientes, y usar estos datos para entrenar la red neuronal.
Aunque la red de BP ha sido ampliamente utilizada, también tiene algunos defectos y deficiencias, incluyendo principalmente los siguientes problemas.
Primero, dado que la tasa de aprendizaje es fija, la red converge lentamente y requiere un largo tiempo de entrenamiento. Para algunos problemas complejos, el tiempo de entrenamiento requerido por el algoritmo BP puede ser muy largo, lo que se debe principalmente a la tasa de aprendizaje demasiado pequeña, que se puede mejorar usando una tasa de aprendizaje variable o una tasa de aprendizaje adaptativa.
En segundo lugar, el algoritmo BP puede hacer que el peso converja a un cierto valor, pero no garantiza que sea el mínimo global del plano de error, ya que el método de descenso de gradiente puede producir un mínimo local. Para este problema, se puede utilizar el método de cantidad de movimiento adicional para resolverlo.
En tercer lugar, no existe una guía teórica para la selección del número de capas y el número de unidades en la capa oculta de la red, y generalmente se determina en base a la experiencia o mediante experimentos repetidos. Por lo tanto, a menudo hay una gran redundancia en la red, lo que también aumenta la carga del aprendizaje de la red hasta cierto punto.
Finalmente, el aprendizaje y la memoria de la red es inestable. En otras palabras, si se agregan muestras de aprendizaje, la red entrenada debe entrenarse desde cero y no hay memoria para los pesos y umbrales anteriores. Sin embargo, se pueden guardar mejores ponderaciones para predicción, clasificación o agrupación.

Supongo que te gusta

Origin blog.csdn.net/wenangou/article/details/127460433
Recomendado
Clasificación