Que signifie «partager les paramètres entre les fonctionnalités et les classes»

20

Lors de la lecture de cet article , une ligne indique que "les classificateurs linéaires ne partagent pas les paramètres entre les fonctionnalités et les classes". Quelle est la signification de cette déclaration? Cela signifie-t-il que les classificateurs linéaires tels que la régression logistique ont besoin de caractéristiques qui sont mutuellement indépendantes?

joydeep bhattacharjee
la source

Réponses:

22

Je vais essayer de répondre à cette question par la régression logistique , l'un des classificateurs linéaires les plus simples.

Le cas le plus simple de régression logistique est si nous avons une tâche de classification binaire ( et une seule fonction d'entrée ( ). Dans ce cas, le résultat de la régression logistique serait:x Ry{0,1})xR

y^=σ(wx+b)
w et b sont tous deux scalaires . La sortie du modèle y^[0,1] correspond à la probabilité que x soit de classe 1 .

Nous allons essayer de décomposer la phrase "les classificateurs linéaires ne partagent pas les paramètres entre les fonctionnalités et les classes" en deux parties. Nous examinerons séparément les cas de plusieurs fonctionnalités et plusieurs classes pour voir si la régression logistique partage des paramètres pour ces tâches:

Les classificateurs linéaires partagent-ils les paramètres entre les entités?

Dans ce cas, pour chaque exemple, y est un scalaire qui prend des valeurs binaires (comme avant), tandis que x est un vecteur de longueur N (où N est le nombre d'entités). Ici, la sortie est une combinaison linéaire des caractéristiques d'entrée (c'est-à-dire une somme pondérée de ces caractéristiques plus les biais).

y^=σ(iN(wixi)+b)orσ(wx+b)
où et sont des vecteurs de longueur . Le produit produit un scalaire. Comme vous pouvez le voir ci-dessus, il existe un poids séparé pour chaque caractéristique d'entrée et ces poids sont indépendants par tous les moyens. De cela, nous pouvons conclure qu'il n'y a pas de partage de paramètres entre les fonctionnalités .xwNxw wixi

Les classificateurs linéaires partagent-ils les paramètres entre les classes?

Dans ce cas, est un scalaire, mais est un vecteur de longueur (où est le nombre de classes). Pour résoudre ce problème, la régression logistique produit essentiellement une sortie séparée pour chacune des classes. Chaque sortie est un scalaire et correspond à la probabilité que appartienne à la classe .xyMMyjMyj[0,1]xj

y^=wx+b,wherey^=y^1,y^2,...,yM

La façon la plus simple de penser à cela est que régressions logistiques indépendantes simples chacune avec un résultat de:M

y^j=σ(wjx+bj)

De ce qui précède, il est évident qu'aucun poids n'est partagé entre les différentes classes .

multifonction et multi-classe :

En combinant les deux cas ci-dessus, nous pouvons enfin atteindre le cas le plus général de plusieurs fonctionnalités et plusieurs classes:

y^=σ(Wx+b)
où est un vecteur de taille , est un vecteur de taille , est un vecteur de taille et est une matrice de taille .y^MxNbMW(N×M)

Dans tous les cas, les classificateurs linéaires ne partagent aucun paramètre entre les entités ou les classes .

Pour répondre à votre deuxième question, les classificateurs linéaires ont une hypothèse sous-jacente selon laquelle les fonctionnalités doivent être indépendantes , mais ce n'est pas ce que l'auteur de l'article avait l'intention de dire.

Djib2011
la source
1
Belle explication. :)
joydeep bhattacharjee