Réseaux neuronaux Multi-classes: Softmax

Rappelons que la régression logistique produit une décimale entre 0 et 1.0. Par exemple, une sortie de régression logistique de 0,8 à partir d’un classificateur d’e-mails suggère 80% de chances que l’e-mail soit du spam et 20% de chances qu’il ne soit pas du spam. De toute évidence, la somme des probabilités qu’un e-mail soit spam ou non spam est de 1,0.

Softmax étend cette idée à un monde multi-classes. Autrement dit, Softmax attribue des probabilités décimales à chaque classe dans un problème multi-classes.Ces probabilités décimales doivent totaliser 1,0. Cette contrainte supplémentaire aide la formation à converger plus rapidement qu’elle ne le ferait autrement.

Par exemple, en revenant à l’analyse d’image que nous avons vue sur la figure 1, Softmaxmight produit les probabilités suivantes d’une image appartenant à une classe aparticulaire:

Classe Probabilité
apple 0.001
ours 0.04
bonbons 0.008
chien 0,95
oeuf 0,001

Softmax est implémenté via une couche de réseau neuronal juste avant la sortie couche. Le calque Softmax doit avoir le même nombre de nœuds que le calque de sortie.

Un réseau neuronal profond avec une couche d'entrée, deux couches cachées indéfinissables, puis une couche Softmax, et enfin une couche de sortie avec le même nombre de nœuds que la couche Softmax.

Figure 2. Une couche Softmax au sein d’un réseau neuronal.

Cliquez sur l’icône plus pour voir l’équation Softmax.

L’équation Softmax est la suivante :

$$p(y=j|\textbf{x})= \frac{e^{(\textbf{w}_j^{T}\textbf{x}+b_j) }} {\sum_{k\in K} {e^{(\textbf{w}_k^{T}\textbf{x}+b_k) }} }$$

Notez que cette formule étend essentiellement la formule de logisticregression en plusieurs classes.

Options Softmax

Considérez les variantes suivantes de Softmax:

  • Full Softmax est le Softmax dont nous avons discuté; autrement dit, Softmax calcule une probabilité pour chaque classe possible.

  • L’échantillonnage candidat signifie que Softmax calcule une probabilité pour toutes les étiquettes positives, mais uniquement pour un échantillon aléatoire d’étiquettes négatives. Par exemple, si nous sommes intéressés à déterminer si une image d’entrée est un beagle ou un limier, nous n’avons pas de probabilités pour fournir des probabilités pour chaque exemple non doggy.

Full Softmax est assez bon marché lorsque le nombre de classes est petit, mais devient prohibitif lorsque le nombre de classes grimpe.L’échantillonnage des candidats peut améliorer l’efficacité des problèmes ayant un grand nombre de classes.

Une étiquette par rapport à plusieurs Étiquettes

Softmax suppose que chaque exemple est un membre d’exactement une classe.Certains exemples, cependant, peuvent être simultanément membres de plusieurs classes.Pour de tels exemples :

  • Vous ne pouvez pas utiliser Softmax.
  • Vous devez compter sur plusieurs régressions logistiques.

Par exemple, supposons que vos exemples soient des images contenant exactement un élément — chacun des fruits. Softmax peut déterminer la probabilité que celui-ci soit une poire, une orange, une pomme, etc. Si vos exemples sont des images contenant toutes sortes de choses — des bols de différents types de fruits — alors vous devrez utiliser plusieurs régressions logistiques à la place.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.