Est-ce que je viens d'inventer une méthode bayésienne pour l'analyse des courbes ROC?

21

Préambule

Ceci est un long post. Si vous relisez ceci, veuillez noter que j'ai révisé la partie question, bien que le matériel de base reste le même. De plus, je pense avoir conçu une solution au problème. Cette solution apparaît au bas de l'article. Merci à CliffAB d'avoir souligné que ma solution d'origine (éditée à partir de ce post; voir l'historique des modifications pour cette solution) a nécessairement produit des estimations biaisées.

Problème

Dans les problèmes de classification d'apprentissage automatique, une façon d'évaluer les performances du modèle consiste à comparer les courbes ROC ou l'aire sous la courbe ROC (AUC). Cependant, je constate qu'il y a très peu de discussion sur la variabilité des courbes ROC ou des estimations de l'ASC; c'est-à-dire que ce sont des statistiques estimées à partir de données, et ont donc une erreur qui leur est associée. La caractérisation de l'erreur dans ces estimations aidera à caractériser, par exemple, si un classificateur est effectivement supérieur à un autre.

J'ai développé l'approche suivante, que j'appelle l'analyse bayésienne des courbes ROC, pour résoudre ce problème. Il y a deux observations clés dans ma réflexion sur le problème:

  1. Les courbes ROC sont composées de quantités estimées à partir des données et se prêtent à l'analyse bayésienne.

    La courbe ROC est composée en traçant le vrai taux positif contre le taux faux positif , chacun étant lui-même estimé à partir des données. Je considère les fonctions et de , le seuil de décision utilisé pour trier la classe A de B (votes d'arbre dans une forêt aléatoire, distance d'un hyperplan dans SVM, probabilités prédites dans une régression logistique, etc.). La variation de la valeur du seuil de décision renverra différentes estimations de et . De plus, nous pouvons considérerF P R ( θ ) T P R F P R θ θ T P R F P R T P R ( θ ) T PTPR(θ)FPR(θ)TPRFPRθθTPRFPRTPR(θ)être une estimation de la probabilité de succès dans une séquence d'essais de Bernoulli. En fait, TPR est défini comme qui est aussi le MLE de la probabilité de succès binomiale dans une expérience avec succès et essais au total.TPTP+FN>0TPTP+FN,TPTP+FN>0

    Donc, en considérant la sortie de et comme des variables aléatoires, nous sommes confrontés à un problème d'estimation de la probabilité de réussite d'une expérience binomiale dans laquelle le nombre de succès et d'échecs est connu exactement (étant donné par , , et , qui je suppose sont tous fixes). Classiquement, on utilise simplement le MLE, et suppose que TPR et FPR sont fixes pour des valeurs spécifiques deF P R ( θ ) T P F P F N T N θ θTPR(θ)FPR(θ)TPFPFNTNθ. Mais dans mon analyse bayésienne des courbes ROC, je dessine des simulations postérieures des courbes ROC, qui sont obtenues en tirant des échantillons de la distribution postérieure sur les courbes ROC. Un modèle bayésien standard pour ce problème est une vraisemblance binomiale avec un bêta avant sur la probabilité de succès; la distribution postérieure sur la probabilité de succès est également bêta, donc pour chaque , nous avons une distribution postérieure des valeurs TPR et FPR. Cela nous amène à ma deuxième observation.θ

  2. Les courbes ROC ne sont pas décroissantes. Donc, une fois que l'on a échantillonné une certaine valeur de et , il n'y a aucune probabilité d'échantillonner un point dans l'espace ROC "au sud-est" du point échantillonné. Mais l'échantillonnage à contraintes de forme est un problème difficile.F P R ( θ )TPR(θ)FPR(θ)

L'approche bayésienne peut être utilisée pour simuler un grand nombre d'AUC à partir d'un seul ensemble d'estimations. Par exemple, 20 simulations ressemblent à ceci par rapport aux données d'origine. Courbes ROC simulées

Cette méthode présente un certain nombre d'avantages. Par exemple, la probabilité que l'ASC d'un modèle soit supérieure à celle d'un autre peut être directement estimée en comparant l'ASC de leurs simulations postérieures. Les estimations de la variance peuvent être obtenues par simulation, qui est moins coûteuse que les méthodes de rééchantillonnage, et ces estimations ne posent pas le problème des échantillons corrélés qui découlent des méthodes de rééchantillonnage.

Solution

J'ai développé une solution à ce problème en faisant une troisième et quatrième observation sur la nature du problème, en plus des deux ci-dessus.

  1. F P R ( θ )TPR(θ) et le ont des densités marginales qui se prêtent à la simulation.FPR(θ)

    Si (vice ) est une variable aléatoire bêta-distribuée avec les paramètres et (vice et ), nous pouvons également considérer ce que la densité de TPR est en moyenne sur plusieurs valeurs différentes qui correspondent à notre analyse. Autrement dit, nous pouvons considérer un processus hiérarchique où l'on échantillonne une valeur partir de la collection de valeurs obtenues par nos prédictions de modèle hors échantillon, puis échantillonne une valeur de . Une distribution sur les échantillons résultants deF P R ( θ ) T P F N F P T N θ ˜ θ θ T P R ( ˜ θ ) T P R ( ˜ θ ) θ T P R ( θ ) c θ 1 / cTPR(θ)FPR(θ)TPFNFPTNθθ~θTPR(θ~)TPR(θ~)valeurs est une densité du vrai taux positif qui est inconditionnelle sur lui-même. Parce que nous supposons un modèle bêta pour , la distribution résultante est un mélange de distributions bêta, avec un nombre de composants égal à la taille de notre collection de , et des coefficients de mélange .θTPR(θ)cθ1/c

    Dans cet exemple, j'ai obtenu le CDF suivant sur TPR. Notamment, en raison de la dégénérescence des distributions bêta où l'un des paramètres est zéro, certains des composants du mélange sont la fonction delta de Dirac à 0 ou 1. C'est ce qui provoque les pointes soudaines à 0 et 1. Ces «pointes» impliquent que ces densités ne sont ni continues ni discrètes. Un choix d'a prior qui est positif dans les deux paramètres aurait pour effet de "lisser" ces pointes soudaines (non représentées), mais les courbes ROC résultantes seront tirées vers l'a prior. La même chose peut être faite pour FPR (non illustré). Le prélèvement d'échantillons à partir des densités marginales est une application simple de l'échantillonnage par transformée inverse.

CDF de TPR

  1. Pour résoudre l'exigence de contrainte de forme, il suffit de trier TPR et FPR indépendamment.

    L'exigence non décroissante est la même que l'exigence que les échantillons marginaux de TPR et de FPR soient triés indépendamment - c'est-à-dire que la forme de la courbe ROC est complètement déterminée par l'exigence que la plus petite valeur de TPR soit couplée avec le plus petit FPR et ainsi de suite, ce qui signifie que la construction d'un échantillon aléatoire à contrainte de forme est ici triviale. Pour la précédente incorrecte , les simulations fournissent la preuve que la construction d'une courbe ROC de cette manière produit des échantillons dont l'ASC moyenne converge vers l'AUC d'origine dans la limite d'un grand nombre d'échantillons. Voici un KDE de 2000 simulations.Beta(0,0)

entrez la description de l'image ici

Comparaison avec le Bootstrap

Dans une longue discussion par chat avec @AdamO (merci, AdamO!), Il a souligné qu'il existe plusieurs méthodes établies pour comparer deux courbes ROC, ou pour caractériser la variabilité d'une seule courbe ROC, parmi lesquelles le bootstrap. Donc, à titre expérimental, j'ai essayé d'amorcer mon exemple qui, en tant que observations dans l'ensemble d'exclusion, et de comparer les résultats à la méthode bayésienne. Les résultats sont comparés ci-dessous (l'implémentation du bootstrap ici est le bootstrap simple - échantillonnage aléatoire avec remplacement de la taille de l'échantillon d'origine. approche appropriée.)n=20

entrez la description de l'image ici

Cette démonstration montre que la moyenne du bootstrap est biaisée en dessous de la moyenne de l'échantillon d'origine et que le KDE du bootstrap donne des "bosses" bien définies. La genèse de ces bosses n'est guère mystérieuse - la courbe ROC sera sensible à l'inclusion de chaque point, et l'effet d'un petit échantillon (ici, n = 20) est que la statistique sous-jacente est plus sensible à l'inclusion de chaque point point. (Surtout, ce modèle n'est pas un artefact de la bande passante du noyau - notez le tracé du tapis. Chaque bande est constituée de plusieurs répliques de bootstrap qui ont la même valeur. Le bootstrap a 2000 répliques, mais le nombre de valeurs distinctes est clairement beaucoup plus petit. Nous peut conclure que les bosses sont une caractéristique intrinsèque de la procédure de bootstrap.) En revanche, les estimations moyennes de l'ASC bayésienne ont tendance à être très proches de l'estimation initiale,

Question

Ma question révisée est de savoir si ma solution révisée est incorrecte. Une bonne réponse prouvera (ou réfutera) que les échantillons résultants des courbes ROC sont biaisés, ou prouvera ou réfutera également d'autres qualités de cette approche.

Sycorax dit de réintégrer Monica
la source
1
Je pense que vous faites trop confiance aux courbes ROC. Je n'ai pas vu un seul cas où ils conduisent à des idées. J'ai vu de nombreux cas où ils conduisent à des seuils, ce qui est vraiment une mauvaise idée.
Frank Harrell
1
@FrankHarrell Merci pour la note, Dr. Harrell. Mais pour mes clients, je suis chargé de développer des classificateurs qui prendront des décisions de manière autonome dans de très grands ensembles de données. J'apprécie que dans un contexte médical, cela soit très improductif, mais l'analyse d'utilité / coût par des experts pour chaque observation est tout simplement impossible lorsque nous devons prendre des décisions sur des milliers de points de données. Nous devons faire des choix quant au modèle à mettre en œuvre pour accomplir cette tâche, et le ROC / AUC aide à prendre cette décision.
Sycorax dit Réintégrer Monica le
2
Puisque vous avez prédit des probabilités, vous n'utilisez pas de toute façon un classificateur, au moins au début de votre processus. Les services publics prendraient de meilleures décisions, mais si vous ne parvenez pas à obtenir des services publics, vous pouvez toujours y penser différemment des courbes ROC en utilisant des courbes de portance et des seuils de risque de décision. Ce n'est pas vraiment un problème médical.
Frank Harrell
3
Pour démontrer, supposons que nous ayons que et nous savons que marginalement, Unif (0,1) (c'est-à-dire bêta (1,1)). Il s'agit d'une contrainte de forme similaire à votre problème (légèrement modifiée, mais votre problème peut être vu de cette façon). Notez que cela ne caractérise pas pleinement la probabilité conjointe. Et nous pouvons voir que votre schéma d'échantillonnage conduirait à des distributions totalement différentes si nous par ou (c'est-à-dire que celui avec lequel nous avons commencé serait, en moyenne, plus grand que l'autre). X 1 , X 2X 1 X 2X1+X2<1X1,X2X1X2
Cliff AB
3
Commencez avec mes notes de cours - voir biostat.mc.vanderbilt.edu/CourseBios330 . Consultez également Biostatistique pour la recherche biomédicale disponible sur biostat.mc.vanderbilt.edu/ClinStat , en particulier le chapitre sur la perte d'informations et le début du chapitre 10.
Frank Harrell

Réponses:

7

Tout d'abord, il n'existe aucun moyen accepté «d'analyser» une courbe ROC: il s'agit simplement d'un graphique qui représente la capacité prédictive d'un modèle de classification. Vous pouvez certainement résumer une courbe ROC à l'aide d'une statistique c ou de l'ASC, mais le calcul des intervalles de confiance et la réalisation d'inférences à l'aide de statistiques sont bien compris en raison de sa relation avec la statistique U de Wilcoxon.c

Il est généralement assez bien accepté que vous pouvez estimer la variabilité des courbes ROC en utilisant le bootstrap cf Pepe Etzione Feng . C'est une bonne approche car la courbe ROC est une estimation empirique et le bootstrap n'est pas paramétrique. Paramétrer quoi que ce soit de cette manière introduit des hypothèses et des complications telles que "un avant plat est-il vraiment non informatif?" Je ne suis pas convaincu que ce soit le cas ici.

Enfin, il y a le problème de la pseudo-vraisemblance. Vous pouvez induire une variabilité dans les courbes ROC en mettant un a priori sur qui, dans toute l'utilisation de ROC, est la seule chose qui n'est généralement pas considérée comme une variable aléatoire. Vous avez ensuite supposé que la variabilité du TPR et du FPR induite par la variabilité du est indépendante . Ils ne sont pas. En fait, ils sont complètement dépendants. Vous calculez en quelque sorte un postérieur bayésien pour votre propre poids en kilogrammes et en livres et dites qu'ils ne dépendent pas les uns des autres.θθθ

Prenons, par exemple, un modèle avec une discrimination parfaite . En utilisant votre méthode, vous constaterez que les bandes de confiance sont le carré de l'unité. Ils ne sont pas! Il n'y a pas de variabilité dans un modèle à discrimination parfaite. Un bootstrap vous le montrera.

Si l'on devait aborder la question de l '"analyse" ROC dans une perspective bayésienne, il serait peut-être plus utile d'aborder le problème de la sélection des modèles en mettant un prior sur l'espace des modèles utilisés pour l'analyse. Ce serait un problème très intéressant.

AdamO
la source
Je ne suis pas sûr que cette réponse réponde au contenu du message. Par exemple, je viens de simuler des courbes ROC pour un modèle avec une discrimination parfaite. Ces courbes sont toutes concentrées dans le coin extrême nord-ouest de l'espace ROC, et un intervalle central autour des simulations AUC est des nombres très proches de 1. Ceci est en contradiction directe avec l'affirmation dans la réponse, qui prétend que les simulations doivent se situer sur toute la place de l'unité.
Sycorax dit Réintégrer Monica le
1
J'aimerais toutefois savoir pourquoi TPR et FPR ne sont pas indépendants. Je peux comprendre pourquoi TP et FN, ou FP et TN, sont complètement dépendants (chaque paire résumera toujours au même nombre). Les valeurs de TP et al sont supposées fixes dans mon analyse. Mais n'est pas supposé être un rv, et je ne place aucun prior sur ; je suppose plutôt que les résultats du et du sont des RVθ T P R ( θ ) F P R ( θ )θθTPR(θ)FPR(θ)
Sycorax dit Reinstate Monica
@ user777 juste pour être clair, vous avez mis un prior sur le seuil, que vous appelez et rien d'autre, non? θ
AdamO
θθ fait uniquement référence au seuil. Je n'ai pas mis de priorité sur le seuil . θ
Sycorax dit Réintégrer Monica le
@ user777 qu'est-ce qui a exactement un prior dessus?
AdamO