Comment dériver des règles de mise à jour catégoriques d'entropie croisée pour la régression logistique multiclasse

Nov 25 2020

Je suis conscient qu'il existe un article similaire: Vectorisation de la perte d'entropie croisée

Mais en y regardant pendant quelques heures, je ne comprends toujours pas ce qu'ils essaient de dire.

J'essaie de trouver les règles de mise à jour pour utiliser la fonction d'entropie croisée dans la régression logistique multiclasse, ici pour 10 classes.

Je ne comprends même pas ce que cela implique - est-ce le coût de l'ensemble de données ou simplement le coût d'un seul exemple? Je ne sais pas si y et yhat sont des scalaires et que la sommation passe par un seul exemple ou que y et yhat sont des vecteurs et que l'indexation i signifie qu'elle traverse l'ensemble complet.

En supposant que cela passe par l'ensemble de l'entraînement, comment le dériver avec tous les thetas? comment le vectoriser et proposer une règle de mise à jour générale pour tous les poids?

Je serais très reconnaissant d'avoir une réponse - j'ai essayé avec un stylo et du papier pendant longtemps et je ne l'ai pas encore obtenue.

Merci

Réponses

1 gunes Nov 25 2020 at 16:12

Ce n'est pas sur l'ensemble de l'ensemble de formation. C'est pour un seul exemple,$i$représente l'index de la classe. Donc, si vous avez$n$ Des classes, $\mathbf y$ et $\mathbf{ \hat y}$ sont $n\times 1$ de vrais vecteurs. $\mathbf y$ est la vérité terrain, donc ce sera un vecteur binaire avec l'index correspondant à la classe correcte pour l'échantillon étant $1$ et d'autres étant $0$.

Pour trouver les dégradés, vous pouvez supposer un seul échantillon, puis additionner les dégradés pour chaque échantillon d'apprentissage. Donc, pour simplifier, faites la différenciation en utilisant cette formulation, c'est-à-dire$\frac{\partial L}{\partial \theta}$, où $y=\sigma( \theta^Tx+b)$.