Existe-t-il un moyen de générer des intervalles de confiance pour un modèle SVM ?
Bonjour @CentroidError56
Je suis désolé que vous n'ayez pas encore reçu de réponse. J'ai effectué des recherches dans la littérature et il semble que la solution la plus simple pour se rapprocher du résultat souhaité soit de calculer un intervalle bootstrap (il ne semble pas y avoir d'intervalles de confiance avec les SVM).
On pourrait imaginer calculer des intervalles comme dans la régression généralisée SVEM, le processus serait donc le suivant :
- Créez un nouveau tableau avec des bootstraps à pondération fractionnaire via un tableau d'autovalidation .
- Exécutez l'analyse SVM avec « Poids valide » comme rôle de fréquence et « Ensemble valide » comme rôle de validation.
- Une fois le modèle obtenu, enregistrez la formule de prédiction de la colonne.
- Créez des permutations des valeurs de pondération valides (ouvrez la formule de la colonne et cochez/décochez l'évaluation de la formule pour forcer la réévaluation de la formule afin de générer de nouvelles pondérations), puis relancez l'analyse SVM.
- Enregistrez la nouvelle formule de prédiction de colonne et répétez le processus (100 à 200 fois comme dans SVEM).
- Une fois toutes les formules de prédiction de colonne enregistrées dans le tableau, créez une nouvelle colonne qui correspond à la moyenne de toutes les formules de rééchantillonnage précédentes, et une nouvelle colonne qui correspond à l'erreur standard de votre réponse prédite en calculant l'écart type des formules de rééchantillonnage individuelles.
- Ensuite, vous pouvez utiliser le Profiler et utiliser ces deux colonnes nouvellement créées (moyenne et écart type des formules de rééchantillonnage), spécifier « Développer la formule intermédiaire » et cliquer sur OK lorsque JMP demande si la colonne StdError peut être utilisée pour créer des intervalles.
Comme vous pouvez l'imaginer, il n'existe pas de méthode simple pour réaliser cette opération uniquement par clics (le processus est assez fastidieux à répéter). Je recommande donc d'essayer de le faire par script (mais je ne suis clairement pas développeur de scripts). À titre d'exemple, j'ai testé cette méthode sur l'ensemble de données Diabetes avec une SVM RBF (coût = 0,265 et gamma = 0,09) en répétant le processus seulement 4 fois (soit 5 formules de rééchantillonnage, fichier joint).

Une fois mes colonnes moyenne et erreur type créées à partir de ces 5 formules de rééchantillonnage, je peux utiliser le Profiler avec ces deux colonnes :

Peut-être qu'un membre de la communauté ou de l'équipe JMP pourrait aider à concevoir ce script JSL ?
Vous pouvez également, en attendant, ajouter ce besoin d'intervalles à la liste de souhaits JMP .
J'espère que cette réponse vous sera utile.