logo

VGG-16 | Model CNN

Una arquitectura de xarxa neuronal convolucional (CNN) és un model d'aprenentatge profund dissenyat per processar dades estructurades en forma de graella, com ara imatges. Consta de diverses capes, incloses les capes convolucionals, d'agrupació i completament connectades. Les CNN són molt efectives per a tasques com la classificació d'imatges, la detecció d'objectes i la segmentació d'imatges a causa de les seves capacitats d'extracció de característiques jeràrquiques.

VGG-16

El model VGG-16 és una arquitectura de xarxa neuronal convolucional (CNN) que va ser proposada pel Visual Geometry Group (VGG) de la Universitat d'Oxford. Es caracteritza per la seva profunditat, que consta de 16 capes, incloses 13 capes convolucionals i 3 capes totalment connectades. VGG-16 és conegut per la seva senzillesa i eficàcia, així com per la seva capacitat d'aconseguir un bon rendiment en diverses tasques de visió per ordinador, inclosa la classificació d'imatges i el reconeixement d'objectes. L'arquitectura del model compta amb una pila de capes convolucionals seguides de capes d'agrupació màxima, amb una profunditat que augmenta progressivament. Aquest disseny permet que el model aprengui representacions jeràrquiques intricades de característiques visuals, donant lloc a prediccions robustes i precises. Malgrat la seva simplicitat en comparació amb arquitectures més recents, VGG-16 segueix sent una opció popular per a moltes aplicacions d'aprenentatge profund a causa de la seva versatilitat i excel·lent rendiment.



L'ImageNet Large Scale Visual Recognition Challenge (ILSVRC) és una competició anual de visió per computador on els equips s'enfronten a tasques com ara la localització d'objectes i la classificació d'imatges. VGG16, proposat per Karen Simonyan i Andrew Zisserman el 2014, va assolir els primers llocs en ambdues tasques, detectant objectes de 200 classes i classificant imatges en 1000 categories.


llista enllaçada i llista de matrius

Arquitectura VGG-16



Aquest model aconsegueix 92,7% dels 5 primers prova la precisió al conjunt de dades ImageNet que conté 14 milions d'imatges pertanyents a 1000 classes.

Objectiu del model VGG-16:

El conjunt de dades ImageNet conté imatges de mida fixa de 224*224 i tenen canals RGB. Per tant, tenim un tensor de (224, 224, 3) com la nostra aportació. Aquest model processa la imatge d'entrada i dóna sortida al vector a 1000 valors:

hat{y} =egin{bmatrix} hat{y_0} hat{y_1} hat{y_2} . . . hat{y}_{999} end{bmatrix}



Aquest vector representa la probabilitat de classificació per a la classe corresponent. Suposem que tenim un model que prediu que la imatge pertany a la classe 0 amb probabilitat 1 , classe 1 amb probabilitat 0.05 , classe 2 amb probabilitat 0.05 , classe 3 amb probabilitat 0.03 , classe 780 amb probabilitat 0.72 , classe 999 amb probabilitat 0.05 i totes les altres classes amb 0 .

per tant, el vector de classificació per a això serà:

cadena com a matriu

hat{y}=egin{bmatrix} hat{y_{0}}=0.1 0.05 0.05 0.03 . . . hat{y_{780}} = 0.72 . . hat{y_{999}} = 0.05 end{bmatrix}

Per assegurar-se que aquestes probabilitats sumen 1 , fem servir la funció softmax.

Aquesta funció de softmax es defineix de la següent manera:

hat{y}_i = frac{e^{z_i}}{sum_{j=1}^{n} e^{z_j}}

Després d'això, agafem els 5 candidats més probables al vector.

C =egin{bmatrix} 780 0 1 2 999 end{bmatrix}

i el nostre vector de veritat terrestre es defineix de la següent manera:

G = egin{bmatrix} G_{0} G_{1} G_{2} end{bmatrix}=egin{bmatrix} 780 2 999 end{bmatrix}

A continuació, definim la nostra funció d'error de la següent manera:

E = frac{1}{n}sum_{k}min_{i}d(c_{i}, G_{k})

conversió de int a cadena en java

Calcula la distància mínima entre cada classe de veritat terrestre i els candidats predits, on la funció de distància d es defineix com:

  • d=0 sic_i=G_k
  • d=1 en cas contrari

Per tant, la funció de pèrdua d'aquest exemple és:

egin{aligned} E &=frac{1}{3}left ( min_{i}d(c_{i}, G_{1}) +min_{i}d(c_{i}, G_{2})+min_{i}d(c_{i}, G_{3}) ight ) &= frac{1}{3}(0 + 0 +0) &=0 end{aligned}

Atès que totes les categories de la veritat del terreny es troben a la matriu dels 5 principals predits, de manera que la pèrdua es converteix en 0.

VGG Arquitectura:

L'arquitectura VGG-16 és una xarxa neuronal convolucional profunda (CNN) dissenyada per a tasques de classificació d'imatges. Va ser introduït pel Grup de Geometria Visual de la Universitat d'Oxford. VGG-16 es caracteritza per la seva simplicitat i arquitectura uniforme, cosa que fa que sigui fàcil d'entendre i implementar.

reemplaça la cadena java

La configuració del VGG-16 normalment consta de 16 capes, incloses 13 capes convolucionals i 3 capes completament connectades. Aquestes capes s'organitzen en blocs, amb cada bloc que conté múltiples capes convolucionals seguides d'una capa d'agrupació màxima per al mostreig inferior.

Mapa d'arquitectura VGG-16

Aquí teniu un desglossament de l'arquitectura VGG-16 basat en els detalls proporcionats:

  1. Capa d'entrada:
    1. Dimensions d'entrada: (224, 224, 3)
  2. Capes convolucionals (64 filtres, filtres 3×3, mateix farciment):
    • Dues capes convolucionals consecutives amb 64 ​​filtres cadascuna i una mida de filtre de 3×3.
    • S'aplica el mateix farciment per mantenir les dimensions espacials.
  3. Capa d'agrupació màxima (2×2, pas 2):
    • Capa d'agrupació màxima amb una mida de piscina de 2 × 2 i un pas de 2.
  4. Capes convolucionals (128 filtres, filtres 3×3, mateix farciment):
    • Dues capes convolucionals consecutives amb 128 filtres cadascuna i una mida de filtre de 3×3.
  5. Capa d'agrupació màxima (2×2, pas 2):
    • Capa d'agrupació màxima amb una mida de piscina de 2 × 2 i un pas de 2.
  6. Capes convolucionals (256 filtres, filtres 3×3, mateix farciment):
    • Dues capes convolucionals consecutives amb 256 filtres cadascuna i una mida de filtre de 3×3.
  7. Capes convolucionals (512 filtres, filtres 3×3, mateix farciment):
    • Dos conjunts de tres capes convolucionals consecutives amb 512 filtres cadascun i una mida de filtre de 3×3.
  8. Capa d'agrupació màxima (2×2, pas 2):
    • Capa d'agrupació màxima amb una mida de piscina de 2 × 2 i un pas de 2.
  9. Pila de capes convolucionals i agrupació màxima:
    • Dues capes convolucionals addicionals després de la pila anterior.
    • Mida del filtre: 3×3.
  10. Aplanament:
    • Aplaneu el mapa de característiques de sortida (7x7x512) en un vector de mida 25088.
  11. Capes totalment connectades:
    • Tres capes totalment connectades amb activació ReLU.
    • Primera capa amb mida d'entrada 25088 i mida de sortida 4096.
    • Segona capa amb mida d'entrada 4096 i mida de sortida 4096.
    • Tercera capa amb mida d'entrada 4096 i mida de sortida 1000, corresponent a les 1000 classes del repte ILSVRC.
    • L'activació Softmax s'aplica a la sortida de la tercera capa totalment connectada per a la seva classificació.

Aquesta arquitectura segueix les especificacions proporcionades, inclòs l'ús de la funció d'activació ReLU i les probabilitats finals de sortida de la capa totalment connectada per a 1000 classes mitjançant l'activació softmax.

Configuració VGG-16:

La principal diferència entre les configuracions C i D de VGG-16 rau en l'ús de mides de filtre en algunes de les capes convolucionals. Tot i que ambdues versions utilitzen principalment filtres 3×3, a la versió D, hi ha casos en què s'utilitzen filtres 1×1. Aquesta lleugera variació dóna lloc a una diferència en el nombre de paràmetres, amb la versió D amb un nombre de paràmetres lleugerament superior en comparació amb la versió C. No obstant això, ambdues versions mantenen l'arquitectura i els principis generals del model VGG-16.

Configuració VGG diferent

Localització d'objectes a la imatge:

Per realitzar la localització, hem de substituir la puntuació de la classe per les coordenades d'ubicació del quadre delimitador. La ubicació d'una caixa delimitadora es representa amb el vector 4-D (coordenades centrals (x, y), alçada, amplada). Hi ha dues versions d'arquitectura de localització, una és que el quadre delimitador es comparteix entre diferents candidats (la sortida és 4 vector de paràmetres) i l'altre és un quadre delimitador és específic de la classe (la sortida és 4000 vector paràmetre). El document va experimentar amb els dos enfocaments sobre l'arquitectura VGG -16 (D). Aquí també hem de canviar la pèrdua de la pèrdua de classificació a les funcions de pèrdua de regressió (com ara MSE ) que penalitzen la desviació de la pèrdua prevista de la veritat bàsica.

Resultats: VGG-16 va ser una de les arquitectures de millor rendiment en el repte ILSVRC 2014. Va ser el segon classificat a la tasca de classificació amb un error de classificació entre els 5 primers. 7.32% (només darrere de GoogLeNet amb un error de classificació de 6.66% ). També va ser el guanyador de la tasca de localització amb 25.32% error de localització.

Limitacions de VGG 16:

  • És molt lent per entrenar (el model VGG original es va entrenar a la GPU Nvidia Titan durant 2-3 setmanes).
  • La mida dels pesos imageNet entrenats VGG-16 és 528 MB. Per tant, es necessita força espai en disc i amplada de banda, cosa que el fa ineficient.
  • 138 milions de paràmetres condueixen a un problema de gradients explosius.

Avenços addicionals: s'introdueixen resnets per evitar problemes de gradients explosius que es van produir a VGG-16.