J'ai actuellement des entrées de texte représentées par un vecteur et je souhaite classer leurs catégories. Parce que ce sont des catégories à plusieurs niveaux, je voulais utiliser Hierarchical Softmax
.
Example:
- Computer Science
- Machine Learning
- NLP
- Economics
- Maths
- Algebra
- Geometry
Je ne sais pas comment l'implémenter dans Tensorflow. Tous les exemples que j'ai rencontrés utilisent d'autres cadres.
Merci
Enfin, j'ai changé pour utiliser Pytorch. C'est plus facile et plus simple que Tensorflow.
Pour toute personne intéressée par l'implémentation de HS, vous pouvez consulter mes exemples d'instructions: https://Gist.github.com/paduvi/588bc95c13e73c1e5110d4308e6291ab
Pour quiconque veut toujours une implémentation Tensorflow, celle-ci est pour vous: https://github.com/tansey/sdp/blob/87e701c9b0ff3eacab29713cb2c9e7181d5c26aa/tfsdp/models.py#L205 . Mais c'est un peu compliqué, et l'auteur a recommandé d'utiliser Pytorch ou un autre cadre graphique dynamique
Pratiquement si votre nombre total de catégories se situe dans la fourchette de centaines à milliers (moins de 50 000), vous n'avez pas besoin d'envisager d'utiliser le softmax hiérarchique, qui est conçu pour exécuter la formation plus rapidement pour le classement en millions de catégories (par exemple, le nombre de mots dans un vocabulaire).
D'après mon expérience (avec les réseaux naïfs bayésiens et neuronaux), l'utilisation de la structure hiérarchique au moment de la formation n'améliore pas nécessairement la qualité de votre classification.
Cependant, si vous êtes intéressé à implémenter Hierarchical Softmax de toute façon, c'est une autre histoire.