Qu'est-ce que le normalisateur de gradient-log?

9

Dans le wiki, la fonction softmax est définie comme le normalisateur de gradient-log de la distribution de probabilité catégorielle . Une explication partielle du normalisateur de journal se trouve ici , mais que signifie normalisateur de journal de gradient ?

tashuhka
la source

Réponses:

5

En utilisant la notation de la page wikipedia ( https://en.wikipedia.org/wiki/Exponential_family ), une famille exponentielle est une famille de distributions de probabilités qui ont pmfs / pdfs qui peuvent être écrites comme (notant que θ , x peut être valeur du vecteur):

fθ(x)=h(x)exp[η(θ)Tt(x)A(θ)]
η(θ)=η sont les les paramètres naturels, t(x) sont les statistiques suffisantes, et A(θ) est le normalisateur de journal (parfois appelé la fonction de partition de journal). La raison pour laquelle A(θ) est appelé le normalisateur de journal, car il peut être vérifié que, dans le cas continu, pour que ce soit un pdf valide, nous devons avoir
A(θ)=log[h(x)exp[η(θ)Tt(x)]dx],
et dans le cas discret, pour que ce soit un pmf valide , nous devons avoir Dans chaque cas, nous remarquons que et sont les constantes de normalisation des distributions, d'où le nom du normalisateur de journaux.
A(θ)=log[xh(x)exp[η(θ)Tt(x)]].
h(x)exp[η(θ)Tt(x)]dxxh(x)exp[η(θ)Tt(x)]

Maintenant, pour voir la relation spécifique entre la fonction softmax et la distribution catégorielle dimensionnelle, nous devrons utiliser une paramétrisation spécifique de la distribution. A savoir, que soit tel que et , et définissez (en laissant ). Le pmf pour cette distribution est (en laissant être un seul vecteur chaud, c'est-à-dire et pour ): kθ1,,θk10<θ1,,θk1i=1k1θi<1θk=1i=1k1θiθ=(θ1,,θk)x=(x1,,xk)xi=1xj=0ij

fθ(x)=i=1kθixi.
Pour écrire ceci comme une famille exponentielle, notez que , , et , donc: h(x)=1η(θ)=(log[θ1/θk],,log[θk1/θk],0)t(x)=(x1,,xk)A(θ)=log[θk]
fθ(x)=exp[(log[θ1/θk],,log[θk1/θk],0)T(x1,,xk)(log[θk])].

maintenant de manière suggestive , afin que nous puissions écrire . Le normalisateur de journal devient alors En prenant la dérivée partielle par rapport à , nous trouvons révélant que le gradient du normalisateur de log est en effet la fonction softmax: η(θi)=log[θi/θk]=ηiθi=eηij=1keηj

A(η)=log[eηkj=1keηj]=log[1j=1keηj]=log[j=1keηj].
ηi
ηiA(η)=eηij=1keηj,
A(η)=[eη1j=1keηj,,eηkj=1keηj].
aleshing
la source
Sensationnel!! Ce fut une excellente explication et a tout à fait sens. Merci :)
tashuhka
Je cherche cette dérivation depuis longtemps! Je me demande, dans quel contexte avez-vous eu à développer ces connaissances? Avez-vous vu cela dans le cadre d'un cours ou d'un manuel? J'ai continué à trouver des références à cette relation sur Internet, mais personne n'a vraiment donné les détails.
zipzapboing
1
@zipzapboing En fait, je ne connaissais pas cette propriété du softmax jusqu'à ce que je voie la question d'OP! Cependant, j'avais un cours de statistiques de niveau casella et berger (où les familles exponentielles et certaines de leurs autres propriétés sont présentées) à mon actif, ce qui m'a permis de savoir que prouver la propriété ne serait pas si difficile avec le bon paramétrage.
aleshing