Exemples: J'ai une phrase dans la description de poste: "Java senior engineer in UK".
Je veux utiliser un modèle d'apprentissage profond pour le prédire en 2 catégories: English
et IT jobs
. Si j'utilise un modèle de classification traditionnel, il ne peut prédire qu'une seule étiquette avec softmax
fonction à la dernière couche. Ainsi, je peux utiliser 2 réseaux de neurones modèles pour prédire "Oui" / "Non" avec les deux catégories, mais si nous avons plus de catégories, c'est trop cher. Avons-nous donc un modèle d'apprentissage en profondeur ou d'apprentissage automatique pour prédire 2 catégories ou plus en même temps?
"Edit": Avec 3 labels par approche traditionnelle, il sera encodé par [1,0,0] mais dans mon cas, il sera encodé par [1,1,0] ou [1,1,1]
Exemple: si nous avons 3 étiquettes, et une phrase peut correspondre à toutes ces étiquettes. Donc, si la sortie de la fonction softmax est [0,45, 0,35, 0,2], devrions-nous la classer en 3 étiquettes ou 2 étiquettes, ou peut-être une seule? le principal problème lorsque nous le faisons est: quel est le bon seuil pour classer en 1, ou 2 ou 3 étiquettes?
la source
Réponses:
Vous pouvez obtenir cette classification multi-étiquettes en remplaçant le softmax par une activation sigmoïde et en utilisant la crossentropie binaire au lieu de la crossentropie catégorielle comme fonction de perte. Ensuite, vous avez juste besoin d'un réseau avec autant d'unités de sortie / neurones que vous avez d'étiquettes.
la source