Altifigence Academy

3 / 24 · Concept

Dimensions, pas, remplissage et dilatation

Pour H=7, R=3, un pas de 2, un remplissage supérieur de 0 et inférieur de 1, et une dilatation de 2, calculez Ho et la coordonnée d’entrée pour h=1, r=2.

Le calcul des dimensions détermine l’adressage

Le pas contrôle l’écart entre les origines des fenêtres de sortie. La dilatation contrôle l’écart entre les échantillons dans un noyau. Ils sautent des positions d’entrée dans des termes d’index différents. Un noyau de R échantillons avec une dilatation D couvre D(R−1)+1 positions. Définissez séparément les remplissages supérieur, inférieur, gauche et droit. Ces exercices utilisent un remplissage explicite et des tailles de sortie calculées par partie entière inférieure, sans supposer une convention automatique SAME.

Ho=⌊H+Pt+Pb−Dh(R−1)−1Sh⌋+1H_o=\left\lfloor\frac{H+P_t+P_b-D_h(R-1)-1}{S_h}\right\rfloor+1

Remplacez la hauteur et les paramètres verticaux par leurs équivalents horizontaux pour calculer la largeur de sortie. Notre modèle pédagogique renvoie zéro position de sortie lorsque le noyau effectif dépasse l’entrée remplie. Un opérateur de production doit définir séparément s’il accepte un tenseur vide.

Exemples détaillés

Avec H=5, R=3, un pas de 2, un remplissage supérieur et inférieur de un et une dilatation de un, la hauteur effective vaut trois. La hauteur de sortie vaut floor((5+2−3)/2)+1=3. Passer la dilatation à deux porte la hauteur effective à cinq et donne une hauteur de sortie de deux. Le pas ne change pas ; chaque fenêtre couvre désormais une région plus grande.

Associez une coordonnée de sortie et une coordonnée du noyau avec ih=h×S−Pt+r×D. Pour h=1, r=2, la première configuration lit 3. La configuration dilatée lit 5. Les coordonnées d’entrée valides vont de zéro à quatre : la coordonnée cinq fournit donc du remplissage au lieu de lire hors du tableau. Le remplissage représente le zéro réel ; le stockage quantifié brut peut coder ce zéro avec un code non nul.

L’adresse linéaire NCHW est ((nC+c)H+ih)W+iw. Pour N=1, C=2, H=W=3, la coordonnée (0, 1, 2, 1) correspond à 16 dans un tenseur de 18 éléments. Il s’agit de l’échantillon central de la dernière ligne du deuxième canal. Permuter les axes des canaux et de l’espace conserve le nombre d’éléments mais modifie le calcul.

Avec G groupes, les nombres de canaux d’entrée et de sortie doivent tous deux être divisibles par G. Chaque sortie réduit C/G canaux d’entrée de son groupe. Calculez les tailles de sortie, générez les adresses et vérifiez chaque limite d’entrée dans cet ordre. La spécification officielle de Conv dans ONNX définit les attributs correspondants de remplissage explicite, de pas, de dilatation et de groupe.

Essayez vous-même

Pour H=7, R=3, un pas de 2, un remplissage supérieur de 0 et inférieur de 1, et une dilatation de 2, calculez Ho et la coordonnée d’entrée pour h=1, r=2.

Lire l’explication

La hauteur effective du noyau vaut cinq. Ho=floor((7+1−5)/2)+1=2. La coordonnée d’entrée est 1×2+2×2=6, la dernière ligne valide.

Votre choix s’applique à ce navigateur. Modifiez-le à tout moment en bas de page.