Altifigence Academy

3 / 24 · Concetto

Forme, passo, riempimento e dilatazione

Per H=7,R=3,passo 2,riempimento superiore 0,inferiore 1,dilatazione 2, calcola Ho e la coordinata di ingresso per h=1,r=2.

Il calcolo della forma guida l'indirizzamento

Il passo controlla la distanza tra le origini delle finestre di uscita. La dilatazione controlla la distanza tra i campioni all'interno di un kernel. Saltano posizioni di ingresso in termini diversi degli indici. Un kernel di R campioni con dilatazione D occupa D(R−1)+1 posizioni. Specifica indipendentemente riempimento superiore, inferiore, sinistro e destro. Questi esercizi usano riempimento esplicito e dimensioni di uscita basate sull'arrotondamento per difetto, anziché presumere una convenzione SAME automatica.

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

Sostituisci altezza e parametri verticali con i loro corrispettivi orizzontali per la larghezza di uscita. Il nostro modello didattico restituisce zero posizioni di uscita quando il kernel effettivo supera l'ingresso con riempimento. Un operatore di produzione deve definire separatamente se accetta un tensore vuoto.

Esempi svolti

Con H=5, R=3, passo 2, riempimento superiore e inferiore uno e dilatazione uno, l'altezza effettiva è tre. L'altezza di uscita è floor((5+2−3)/2)+1=3. Cambiare la dilatazione a due porta l'altezza effettiva a cinque e dà altezza di uscita due. Il passo non è cambiato; ogni finestra ora occupa una regione più grande.

Associa una coordinata di uscita e una del kernel usando ih=h×S−Pt+r×D. Per h=1,r=2, la prima configurazione legge 3. Quella dilatata legge 5. Le coordinate valide di ingresso vanno da zero a quattro, quindi la coordinata cinque fornisce riempimento anziché leggere oltre l'array. Il riempimento rappresenta zero reale; la memoria quantizzata grezza può codificare quello zero con un codice diverso da zero.

L'indirizzo lineare NCHW è ((nC+c)H+ih)W+iw. Per N=1,C=2,H=W=3, la coordinata (0,1,2,1) corrisponde a 16 in un tensore di 18 elementi. È il campione centrale dell'ultima riga del secondo canale. Scambiare gli assi di canale e spazio conserva il numero di elementi ma cambia il calcolo.

Con G gruppi, i conteggi dei canali sia di ingresso sia di uscita devono essere divisibili per G. Ogni uscita riduce C/G canali di ingresso appartenenti al proprio gruppo. Calcola le dimensioni di uscita, genera gli indirizzi e verifica ogni limite di ingresso in quest'ordine. La specifica ufficiale ONNX Conv definisce i corrispondenti attributi espliciti di riempimento, passo, dilatazione e gruppi.

Prova tu

Per H=7,R=3,passo 2,riempimento superiore 0,inferiore 1,dilatazione 2, calcola Ho e la coordinata di ingresso per h=1,r=2.

Leggi la spiegazione

L'altezza effettiva del kernel è cinque. Ho=floor((7+1−5)/2)+1=2. La coordinata di ingresso è 1×2+2×2=6, l'ultima riga valida.

La scelta vale per questo browser. Puoi modificarla in qualsiasi momento dal piè di pagina.