Régression logistique multi-étiquettes

8

Existe-t-il un moyen d'utiliser la régression logistique pour classer les données multi-étiquetées? Par multi-étiqueté, je veux dire des données qui peuvent appartenir à plusieurs catégories simultanément.

Je voudrais utiliser cette approche pour classer certaines données biologiques.

user721975
la source
1
Vous semblez décrire une régression logistique multinomiale. Il existe de nombreux fils ici qui traitent de ce sujet: stats.stackexchange.com/search?q=multinomial+logistic
Macro
3
Ou voulez-vous dire qu'une seule donnée peut appartenir à plusieurs catégories?
onestop
@onestop: Oui, je voulais dire qu'un point de données peut appartenir à n'importe quel nombre de catégories simultanément.
user721975
@macro: Régression logistique multinomiale multi-étiquettes :-)
user721975
Regardez la littérature économétrique, par exemple McFadden.
Frank Harrell

Réponses:

11

Je principe, oui - je ne suis pas sûr que ces techniques soient encore appelées régression logistique.

En fait, votre question peut faire référence à deux extensions indépendantes des classificateurs habituels:

  1. Vous pouvez exiger que la somme de toutes les appartenances pour chaque cas soit une ("monde clos" = le cas habituel)
    ou supprimer cette contrainte (parfois appelée "classificateurs à une classe").
    Cela pourrait être formé par plusieurs modèles LR indépendants bien qu'une classe les problèmes sont souvent mal posés (cette classe contre toutes sortes d'exceptions qui pourraient se situer dans toutes les directions) et alors LR n'est pas particulièrement bien adapté.

  2. appartenances aux classes partielles: chaque cas appartient à l'appartenance à chaque classe, similaire aux appartenances dans l'analyse de cluster floue: Supposons qu'il y a 3 classes A, B, C. Ensuite, un échantillon peut être étiqueté comme appartenant à la classe B. Cela peut également être écrit comme vecteur d'appartenance . Dans cette notation, les appartenances partielles seraient par exemple etc.[0,1]nclasses
    [A=0,B=1,C=0][A=0.05,B=0.95,C=0]

    • différentes interprétations peuvent s'appliquer, selon le problème (appartenances floues ou probabilités):

      • floue: un cas peut appartenir à moitié à la classe A et à la moitié à la classe C: [0,5, 0, 0,5]
      • probabilité: la référence (par exemple un expert classant les échantillons) est certaine à 80% d'appartenir à la classe A mais dit qu'il y a 20% de chances qu'il soit de classe C tout en étant sûr qu'il ne s'agit pas de classe B (0%): [0.8, 0 , 0,2].
      • une autre probabilité: votes d'experts: 4 experts sur 5 disent "A", 1 dit "C": encore [0.8, 0, 0.2]
    • pour la prédiction, par exemple les probabilités postérieures sont non seulement possibles mais en fait assez courantes

    • il est également possible de l'utiliser pour la formation
    • et même la validation

    • L'idée générale est que pour les cas limites, il peut ne pas être possible de les assigner sans ambiguïté à une classe.

    • À vous de décider si et comment vous voulez «durcir» une prédiction douce (par exemple la probabilité postérieure) en une étiquette de classe «normale» qui correspond à 100% d'appartenance à cette classe. Vous pouvez même retourner le résultat "ambigu" pour les probabilités postérieures intermédiaires. Ce qui est raisonnable dépend de votre application.

En R par exemple, nnet:::multinomqui fait partie de MASS, accepte ces données pour la formation. Un ANN avec sigmoïde logistique et sans couche cachée est utilisé dans les coulisses.
J'ai développé un package softclassvalpour la partie validation.

Les classificateurs à une classe sont bien expliqués dans Richard G.Brereton: Chemometrics for Pattern Recognition, Wiley, 2009.

Nous donnons une discussion plus détaillée des adhésions partielles dans cet article: Claudia Beleites, Kathrin Geiger, Matthias Kirsch, Stephan B Sobottka, Gabriele Schackert & Reiner Salzer: Classement spectroscopique Raman des tissus d'astrocytome: en utilisant des informations de référence souples. Anal Bioanal Chem, 2011, vol. 400 (9), pp. 2801-2816

cbeleites mécontents de SX
la source
Peux-tu élaborer?
user721975
@ user721975: Je faisais toujours ça ...
cbeleites mécontent de SX
Merci pour votre réponse. Si je vous comprends bien, l'option 1 signifie que vous construisez une série de classificateurs LR binaires (1 contre tous). Je ne pense pas que j'obtiens l'option 2. Me demandez-vous de construire un LR sinlge qui donne une distribution de probabilité sur toutes les classes? La question est alors de savoir comment décider à quelles classes affecter les données? Une sorte de seuillage? Lequel / comment?
user721975
@ user721975: partie 1: oui. partie 2: je vais modifier la réponse pour être plus clair.
cbeleites mécontents de SX
@ user721975: (2) LR "simple" est un peu ambigu: au moins s'il y a plus de 2 classes, vous auriez un modèle multinomial. Vous devrez peut-être nous en dire plus sur votre candidature afin d'obtenir des réponses plus détaillées.
cbeleites mécontents de SX
1

Une façon simple de procéder à une classification multi-étiquettes avec un classificateur multi-classes (comme la régression logistique multinomiale) consiste à attribuer chaque affectation possible d'étiquettes à sa propre classe. Par exemple, si vous effectuez une classification binaire multi-étiquettes et que vous avez 3 étiquettes, vous pouvez attribuer

[0 0 0] = 0
[0 0 1] = 1
[0 1 0] = 2

et ainsi de suite, résultant en classes.23=8

Le problème le plus évident avec cette approche est que vous pouvez vous retrouver avec un grand nombre de classes même avec un nombre relativement petit d'étiquettes (si vous avez étiquettes, vous aurez besoin de classes). Vous ne pourrez pas non plus prédire les affectations d'étiquettes qui ne sont pas présentes dans votre jeu de données, et vous ferez un usage assez médiocre de vos données, mais si vous avez beaucoup de données et une bonne couverture des affectations d'étiquettes possibles , ces choses peuvent ne pas avoir d'importance.n2n

Au-delà de cela et de ce qui a été suggéré par d'autres, vous voudrez probablement regarder des algorithmes de prédiction structurés tels que des champs aléatoires conditionnels.

alto
la source
0

Ce problème est également lié à un apprentissage sensible aux coûts où la prédiction d'une étiquette pour un échantillon peut avoir un coût. Pour les échantillons à étiquettes multiples, le coût de ces étiquettes est faible tandis que celui des autres étiquettes est plus élevé.

Vous pouvez jeter un œil à ce tutoriel dont vous pouvez également trouver les diapositives correspondantes ici .

Cendre
la source