Lectura del artículo: clasificación de redes de imágenes con redes neuronales convolucionales profundas.

Este artículo fue producido por AlexNet.

En el imagenet lsvrc-2010 de 2010, en la tarea de clasificar 12.000 imágenes de alta resolución de * * * 1.000 categorías, los errores top-1 y top-5 en el conjunto de prueba Las tasas son del 37,5% y 655 respectivamente. De manera similar, el top 1 solo predice 1 categoría para una imagen), y en la competencia ImageNet LSVRC-2012, la tasa de error del top 5 fue del 15,3%. AlexNet tiene 600 millones de parámetros y 650.000 neuronas, e incluye cinco capas convolucionales, algunas de las cuales van seguidas de capas de agrupación máxima y tres capas completamente conectadas. Para reducir el sobreajuste, se utilizan conexiones con fugas en capas completamente conectadas, lo que se describe con más detalle a continuación.

Los datos proceden de ImageNet. El conjunto de entrenamiento contiene 654,38+02.000 imágenes, el conjunto de verificación contiene 50.000 imágenes y el conjunto de prueba contiene 654,38+05.000 imágenes. Estas imágenes se dividen en 654,38+0,000 categorías y tienen muchas resoluciones diferentes, pero el requisito de entrada de AlexNet es una resolución fija. Para solucionar este problema, el equipo de Alex utilizó una frecuencia de muestreo baja, reduciendo la resolución de cada imagen a 256×256. El método específico es dar una imagen rectangular, primero cambiar la escala de la imagen para que la longitud de su lado corto sea 256 y luego recortar una imagen con un tamaño de 256 × 256 desde el centro de la imagen resultante.

La función de activación neuronal estándar en ese momento era la función tanh(). Esta función no lineal saturada es mucho más lenta que la función no lineal no saturada cuando el gradiente disminuye. Por lo tanto, la función ReLU se utiliza como función de activación en AlexNet. La Figura 1 muestra que el uso de la función ReLU en una red convolucional de 4 capas logra una tasa de error de entrenamiento del 25% en el conjunto de datos CIFAR-10, 6 veces más rápido que el uso de la función tanh en la misma red en las mismas condiciones.

AlexNet utiliza dos rutas de entrenamiento paralelas de GTX 580 3G, colocando la mitad de los núcleos o neuronas en cada GPU, y las GPU solo se comunican en capas específicas.

La función ReLU no tiene un rango limitado como tanh y sigmoide, y debe normalizarse después de ReLU. La idea de LRN proviene de un concepto en neurobiología llamado "inhibición lateral", que significa que las neuronas activadas inhiben las neuronas circundantes. Fórmula de cálculo:

Bi x, y representa el valor de activación de la neurona en la posición (x, y) después del cálculo de convolución mediante el núcleo de convolución I-ésimo y luego pasa por ReLU.

Ai x, y representa el valor normalizado.

n representa los k núcleos de convolución adyacentes al núcleo de convolución I. El núcleo de convolución I es un hiperparámetro, generalmente establecido en 5.

n representa el número total de núcleos de convolución.

α = 10?4, y β = 0,75.

Piscinas superpuestas significa que hay superposición entre ventanas de piscinas adyacentes. Más precisamente, la capa de agrupación se puede ver como una cuadrícula de unidades de agrupación espaciadas s. Cada unidad de agrupación resume una vecindad de tamaño z × z centrada en la posición de la unidad fusionada, es decir, el tamaño del grupo es z, El paso. es s. Cuando s

La salida de la última capa (Full8) de la red se alimenta a una capa softmax que contiene 1000 unidades, que se utiliza para predecir 1000 etiquetas. La capa de normalización de respuesta está después de la primera y segunda capa convolucional, la capa de agrupación máxima está después de la capa de normalización de respuesta y la quinta capa convolucional, la función de activación ReLU se aplica a todas las capas convolucionales y a la capa de gráfico completamente conectada.

Al principio, el método más común para reducir el sobreajuste de datos de imágenes era aumentar artificialmente el conjunto de datos. AlexNet utiliza dos métodos para aumentar la cantidad de datos:

Primero, reflexión especular y recorte aleatorio.

Primero refleje la imagen, luego seleccione aleatoriamente bloques de 227×227 de la imagen original y la imagen reflejada (256×256). Con este enfoque, el tamaño del conjunto de entrenamiento aumenta en un factor de 2048, aunque las muestras de entrenamiento resultantes serán altamente interdependientes. Pero no utilizar este enfoque puede provocar un sobreajuste grave, lo que nos obligará a utilizar redes más pequeñas.

Durante la prueba, AlexNet extraerá 5 muestras de prueba y sus imágenes (un total de 10 bloques, cuatro esquinas y posiciones centrales) para la predicción. El resultado de la predicción es el promedio de estos 10 bloques por softmax.

En segundo lugar, cambia la intensidad de los canales RGB en la imagen de entrenamiento.

Realice PCA (análisis de componentes principales) en el conjunto de valores de píxeles RGB de todo el conjunto de entrenamiento de ImageNet. Para cada imagen, los múltiplos de los componentes principales encontrados, cuyas magnitudes son proporcionales a los valores propios correspondientes, se suman y multiplican por una variable aleatoria extraída de una distribución gaussiana con media 0 y desviación estándar 0,1.

Pi y λi son el I-ésimo vector propio y valor propio de la matriz de covarianza 3 × 3 de valores de píxeles RGB, respectivamente. αi es la variable aleatoria mencionada anteriormente. Cada αi se dibuja solo una vez para todos los píxeles de una imagen de entrenamiento particular hasta que la imagen se usa nuevamente para el entrenamiento, momento en el cual se vuelve a dibujar. Este esquema captura aproximadamente una característica importante de las imágenes naturales, es decir, el reconocimiento de objetos no cambia con los cambios en la intensidad de la iluminación y el color.

La probabilidad de desactivación establecida en AlexNet es 0,5. Durante las pruebas, las neuronas usadas se reutilizan, pero sus salidas se multiplican por 0,5.

AlexNet utiliza el algoritmo de descenso de gradiente estocástico, el tamaño del lote es 128, el parámetro de caída del impulso se establece en 0,9 y el parámetro de caída del peso es 0,0005. La atenuación de peso aquí no solo es un normalizador, sino que también reduce el error de entrenamiento del modelo. El proceso de actualización de peso se convierte en: dónde está el índice de iteración, la variable de impulso, la tasa de aprendizaje y el promedio del primer lote de gradientes.

Además, en AlexNet, los pesos de las capas se inicializan según la distribución gaussiana, con una media de 0 y una desviación estándar de 0,001. Los desplazamientos de la segunda, cuarta y quinta capas convolucionales son completos. las capas conectadas se inicializan a 1. . La ventaja de esto es que acelera el aprendizaje temprano al darle a la función ReLU un incentivo positivo. Los desplazamientos de otras capas se inicializan a 0.