Description du problème
Je commence la construction d'un réseau pour un problème qui, selon moi, pourrait avoir une fonction de perte bien plus perspicace qu'une simple régression MSE.
Mon problème concerne la classification multi-catégories ( voir ma question sur SO pour ce que je veux dire par là), où il y a une distance définie ou une relation entre les catégories qui devrait être prise en compte.
Un autre point est que l'erreur ne doit pas être due au nombre de catégories de tir présentes. C'est-à-dire que l'erreur pour 5 catégories de tir chacune de 0,1, devrait être la même que 1 catégorie de tir de 0,1. (en tirant, je veux dire qu'ils sont non nuls ou supérieurs à un certain seuil)
Points clés
- classification multi-catégories (plusieurs tirs à la fois)
- relations entre les catégories
- le nombre de catégories de tir ne devrait pas affecter la perte
Ma tentative
L'erreur quadratique moyenne semble être un bon point de départ:
Ceci considère simplement la catégorie par catégorie, qui est toujours valable dans mon problème mais manque une grande partie de l'image.
Voici ma tentative de rectifier l'idée de distance entre les catégories. Ensuite, je voudrais prendre en compte le nombre de catégories de tir ( appelez-le: v )
Ma question
J'ai une très faible formation en statistiques; en conséquence, je n'ai pas beaucoup d'outils dans ma ceinture pour aborder un problème comme celui-ci. Le sujet général de ce que je demande semble être "Lors de la formation d'une fonction de coût, comment procéder pour combiner plusieurs mesures de coût? Ou quelles techniques peut-on appliquer pour le faire?" . J'apprécierais également que tout défaut de mon processus de pensée soit exposé et amélioré.
J'apprécie qu'on m'apprenne pourquoi mes erreurs sont des erreurs, par opposition à ce que quelqu'un les corrige uniquement sans explication.
Si un élément de cette question manque de clarté ou pourrait être amélioré, faites-le moi savoir.
la source
Réponses:
Vous pouvez utiliser la perte de charnière qui est une limite supérieure de la perte de classification; c'est-à-dire qu'il pénalise le modèle si le label de la catégorie ayant le score le plus élevé est différent du label de la classe de vérité terrain.
Pour plus de détails sur la relation entre la perte de classification et la perte de charnière, vous pouvez lire la section 2 de cet article impressionnant de CNJ Yu et T. Joachims.
En résumé, il y a une perte de tâche , généralement désignée parΔ(yi,y^(xi)) , qui mesure la pénalité pour prédire la production y^(xi) pour entrée xi lorsque la sortie attendue (vérité du sol) est yi . La perte de tâche pour la classification multiclasse est généralement définie commeΔ(yi,y^(xi))=1{yi≠y^(xi)} . Cependant, tant queΔ ne dépend que des deux labels y et y^ , vous pouvez le définir comme vous le souhaitez. En particulier, on peut voirΔ comme arbitraire K×K matrice où K est le nombre de catégories et Δ(a,b) indique la pénalité de classer une entrée de catégorie a comme appartenant à la catégorie b .
Par exemple:input data:{(x1,y1),(x2,y2),(x3,y3)},xi∈Rd,yi∈Y={c1,c2,c3,c4}network predictions:y^(x1)=c2,y^(x2)=c1,y^(x3)=c3task loss matrix:⎡⎣⎢⎢⎢⎢Δ(y1,y1)Δ(y2,y1)Δ(y3,y1)Δ(y4,y1)Δ(y1,y2)Δ(y2,y2)Δ(y3,y2)Δ(y4,y2)Δ(y1,y3)Δ(y2,y3)Δ(y3,y3)Δ(y4,y3)Δ(y1,y4)Δ(y2,y4)Δ(y3,y4)Δ(y4,y4)⎤⎦⎥⎥⎥⎥=⎡⎣⎢⎢⎢0123101221013210⎤⎦⎥⎥⎥classification loss assuming y1=c4,y2=c1,y3=c4:Δ(y1,y^(x1))=Δ(c4,c2)=2Δ(y2,y^(x2))=Δ(c1,c1)=0Δ(y3,y^(x3))=Δ(c4,c3)=1
la source