Cette question fait suite à stats.stackexchange.com/q/233658
Le modèle de régression logistique pour les classes {0, 1} est
Clairement, ces probabilités sont à 1. En définissant nous pourrions également définir la régression logistique comme
Cependant, la deuxième définition est rarement utilisée car les coefficients et ne sont pas uniques. En d'autres termes, le modèle n'est pas identifiable, tout comme la régression linéaire avec deux variables qui sont multiples l'une de l'autre.
Question
En apprentissage automatique, pourquoi le modèle de régression softmax pour les classes {0, 1, ..., K - 1} est-il généralement défini comme suit?
Ne devrait-il pas plutôt être
Note latérale: En statistique, la régression softmax est appelée régression logistique multinomiale et les classes sont {1, ..., K}. Je trouve cela un peu gênant car lorsque K = 2, les classes sont {1, 2} au lieu de {0, 1} donc ce n'est pas exactement une généralisation de la régression logistique.
Réponses:
Oui, vous avez raison de dire qu'il y a un manque d'identifiabilité à moins qu'un des vecteurs coefficents ne soit fixé. Il y a certaines raisons qui ne le mentionnent pas. Je ne peux pas expliquer pourquoi ils omettent ce détail, mais voici une explication de ce que c'est et comment y remédier.
La description
Supposons que vous ayez des observations et des prédicteurs , où passe de à et désigne le numéro / indice d'observation. Vous devrez estimer les vecteurs coefficient dimensionnel .yje∈ { 0 , 1 , 2 , … , K- 1 } X⊺je∈Rp je 1 n K p β0,β1, … ,βK- 1
La fonction softmax est en effet définie comme qui a de belles propriétés telles que la différentiabilité, il se résume à , etc.softmax ( z)je=exp(zje)∑K- 1l = 0exp(zl), 1
La régression logistique multinomiale utilise la fonction softmax pour chaque observation sur le vecteurje ⎡⎣⎢⎢⎢⎢⎢X⊺jeβ0X⊺jeβ1⋮X⊺jeβK- 1,⎤⎦⎥⎥⎥⎥⎥
ce qui signifie⎡⎣⎢⎢⎢⎢⎢P(yje= 0 )P(yje= 1 )⋮P(yje= K- 1 )⎤⎦⎥⎥⎥⎥⎥=⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢exp[X⊺jeβ0]∑K- 1k = 0exp[X⊺jeβk]exp[X⊺jeβ1]∑K- 1k = 0exp[X⊺jeβk]⋮exp[X⊺jeβK- 1]∑K- 1k = 0exp[X⊺jeβk]⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥.
Le problème
Cependant, la probabilité n'est pas identifiable car plusieurs collections de paramètres donneront la même probabilité. Par exemple, décaler tous les vecteurs de coefficient par le même vecteur produira la même probabilité. Cela peut être vu si vous multipliez chacun le numérateur et le dénominateur de chaque élément du vecteur par une constante , rien ne change:c exp[ -X⊺jec ]
Le réparer
La façon de résoudre ce problème consiste à contraindre les paramètres. La correction de l'un d'entre eux entraînera une identifiabilité, car le déplacement de tous ne sera plus autorisé.
Il y a deux choix communs:
L'ignorer
Parfois, cependant, la restriction n'est pas nécessaire. Par exemple, si vous vouliez former un intervalle de confiance pour la quantité , alors c'est la même chose que , donc relativement les quantités n'ont pas vraiment d'importance. De plus, si votre tâche est la prédiction au lieu de l'inférence de paramètres, vos prédictions ne seront pas affectées si tous les vecteurs de coefficient sont estimés (sans en contraindre un).β01-β21 β01- c - [β21- c ]
la source