web-dev-qa-db-fra.com

Comment calculer le nombre de paramètres de AlexNet?

je n'ai pas trouvé de calcul de paramètres (poids + biais) de AlexNet alors j'ai essayé de le calculer, mais je ne suis pas sûr qu'il soit correct:

conv1: (11 * 11) * 3 * 96 + 96 = 34944

conv2: (5 * 5) * 96 * 256 + 256 = 614656

conv3: (3 * 3) * 256 * 384 + 384 = 885120

conv4: (3 * 3) * 384 * 384 + 384 = 1327488

conv5: (3 * 3) * 384 * 256 + 256 = 884992

fc1: (6 * 6) * 256 * 4096 + 4096 = 37752832 

fc2: 4096 * 4096 + 4096 = 16781312

fc3: 4096 * 1000 + 1000 = 4097000

il en résulte un nombre total de 62378344 paramètres. Ce calcul est-il correct?

14
Tobi

Vos calculs sont corrects. Nous avons créé le même numéro de manière indépendante en écrivant cet article de blog . J'ai aussi ajouté la table finale du post 

 enter image description here

2
Satya Mallick

La diapositive 8 de cette présentation indique qu’elle dispose de 60 M de paramètres, je pense donc que vous êtes au moins dans le stade. http://vision.stanford.edu/teaching/cs231b_spring1415/slides/alexnet_tugce_kyunghee.pdf

3
Alex Klibisz

Selon le diagramme présenté dans leur document, certaines des couches utilisent le regroupement. Par conséquent, toutes les fonctionnalités d'une couche ne communiquent pas avec la suivante. Cela signifie par exemple pour conv2, vous ne devez avoir que (5 * 5) * 48 * 256 + 256 = 307 456 fonctions.

Je ne sais pas si toutes les nouvelles implémentations incluent le regroupement. C’était une optimisation qui permettait au réseau de s’entraîner en parallèle sur deux GPU, mais les GPU modernes disposent de plus de ressources pour la formation et s’adaptent facilement au réseau, sans regroupement.

1
Sven Zwei