AIDGE IN SPACE
Banc d'essai de compression d'image apprise pour l'embarqué
Chargement...
Recherche...
Aucune correspondance
Référence de la classe aidge_in_space.nn.GDN

Generalized Divisive Normalization (Ballé et al. Plus de détails...

Graphe d'héritage de aidge_in_space.nn.GDN:
[légende]

Fonctions membres publiques

 __init__ (self, ch, inverse=False, beta_min=1e-6, gamma_init=0.1, reparam_offset=2 **-18, symmetric=False)
 Crée une GDN initialisée à beta = 1, gamma = gamma_init * identité.
 effective_params (self)
 Paramètres effectifs après re-paramétrisation.
 forward (self, x)
 Applique la (I)GDN à un tenseur B x C x H x W.
 extra_repr (self)
 Paramètres affichés par print(module).

Attributs publics

 ch
 Nombre de canaux, GDN inverse (IGDN), gamma symétrisé.
 inverse
 Nombre de canaux, GDN inverse (IGDN), gamma symétrisé.
 symmetric = ch, inverse, symmetric
 Nombre de canaux, GDN inverse (IGDN), gamma symétrisé.
int pedestal = reparam_offset ** 2
 Piédestal de la re-paramétrisation (offset²).
tuple beta_bound = (beta_min + self.pedestal) ** 0.5
 Borne inférieure du paramètre brut beta.
 gamma_bound = reparam_offset
 Borne inférieure du paramètre brut gamma.
 beta = nn.Parameter(torch.sqrt(torch.ones(ch) + self.pedestal))
 Paramètre brut de beta (forme C) ; valeur effective : effective_params().
 gamma = nn.Parameter(torch.sqrt(gamma_init * torch.eye(ch) + self.pedestal))
 Paramètre brut de gamma (forme C x C) ; valeur effective : effective_params().

Description détaillée

Generalized Divisive Normalization (Ballé et al.

2016).

y_i = x_i / sqrt(beta_i + sum_j gamma_ij x_j^2), ou x_i * sqrt(...) pour la GDN inverse (IGDN). beta et gamma sont re-paramétrés (racine carrée + piédestal) pour rester positifs.

Documentation des constructeurs et destructeur

◆ __init__()

aidge_in_space.nn.GDN.__init__ ( self,
ch,
inverse = False,
beta_min = 1e-6,
gamma_init = 0.1,
reparam_offset = 2 ** -18,
symmetric = False )

Crée une GDN initialisée à beta = 1, gamma = gamma_init * identité.

Paramètres
chNombre de canaux.
inverseTrue pour l'IGDN (multiplication au lieu de division).
beta_minValeur minimale de beta.
gamma_initValeur initiale de la diagonale de gamma.
reparam_offsetDécalage de la re-paramétrisation (piédestal = offset²).
symmetricTrue pour symétriser gamma (variante du notebook).

Documentation des fonctions membres

◆ effective_params()

aidge_in_space.nn.GDN.effective_params ( self)

Paramètres effectifs après re-paramétrisation.

Renvoie
Couple (beta de forme C, gamma de forme C x C).

La documentation de cette classe a été générée à partir du fichier suivant :
  • nn.py