Problème de classificationSalut à tous, bonne année 2021.
Je travaille sur un problème de classification avec une réponse binaire appelée Groupe (états o et 1) comme indiqué dans le fichier xls joint. Dans l'ensemble, il existe 13 prédicteurs, dont 2 sont catégoriques. Ce tableau est le résultat du nettoyage, de la sélection des fonctionnalités et du regroupement (pour supprimer la collinarité). Étant l'état du groupe 1 fortement déséquilibré par rapport à celui de 0, j'ai utilisé les addins SMOTE + TOMEK pour équilibrer la réponse. Les lignes ajoutées sont reconnaissables par la colonne Source. J'ai couru plusieurs modèles de classification dont les résultats sont dans le fichier ppt ci-joint, le NN est le un avec le R2 le plus élevé et une erreur de classification inférieure tandis que le bayes naïf est le pire avec environ 0,2 erreur de classification. Puisque j'ai peur d'un modèle avec 0 erreur de mauvaise classification (surajustement), lequel, selon vous, est le modèle le plus fiable (celui qui une fois déployé aura la même erreur de classification)?
Merci Felice
AnalytiqueRe: Problème de classificationQuelques petites choses que j'ai remarquées en regardant rapidement vos résultats.
Tout d'abord, il s'agit d'une communauté JMP, donc un fichier JMP serait préférable à un fichier Excel. Après tout, la première chose que j'ai faite est de mettre les données dans JMP pour que je puisse les voir! De plus, vous auriez pu enregistrer vos différents modèles sous forme de scripts qui pourraient être réexécutés afin de voir les options que vous avez essayées.
Je ne sais pas comment vous avez implémenté SMOTE + TOMEK pour équilibrer les réponses, mais il existe d'autres moyens d'essayer d'équilibrer les réponses. Vous pourriez avoir suréchantillonné, ignoré certains des cas les plus courants, affecter des lignes à la formation / validation / test en fonction d'un échantillonnage stratifié de la réponse, etc. sur la façon dont l'équilibrage a été effectué? Si un algorithme effectue l'équilibrage, un modèle / algorithme pourra peut-être l'expliquer.
En supposant que l'équilibrage ne peut pas affecter l'effort de modélisation, vous avez divisé vos données en formation, validation et test. Votre ensemble de test doit être indicatif des performances du monde réel, donc je ne pense pas qu'il y ait de sur-ajustement en cours. L'ensemble de test n'est pas du tout utilisé dans le processus d'ajustement. Si vous pensez que le modèle est trop bon, assurez-vous que vos données (et en particulier l'ensemble de test) sont représentatives de votre processus.
Il y a 89 lignes sans valeur de validation. Pourquoi? Excluez-vous ces lignes de votre analyse? Pourquoi?
Il semble que vous ayez utilisé toutes les valeurs par défaut pour un arbre amélioré. Notez qu'un arbre boosté par défaut a 50 couches et vos résultats finaux montrent que les 50 couches ont été utilisées. Cela signifie que vous pouvez avoir un meilleur arbre en utilisant des couches plus amplifiées. Voici un résultat lorsque j'ai spécifié un nombre très élevé de couches.

La machine à vecteurs de support a également fourni un ajustement parfait en fonction du taux d'erreurs de classification. Pourquoi ne pas envisager cela?
La seule façon d'avoir vraiment confiance dans un modèle est de commencer à l'utiliser sur de nouvelles données. Pourquoi ne pas aller de l'avant avec les trois (arbre boosté plus stratifié, réseau neuronal et machines vectorielles de support) et laisser les données déterminer laquelle fonctionne vraiment le mieux?
Re: Problème de classificationMerci Ciao Dan pour votre courrier.
À propos du fichier xls, vous avez raison. La prochaine fois, je partagerai le fichier jmp au lieu du fichier Excel.
Les modules complémentaires Smoke + tomek n'affectent pas le modèle. Avec et sans elle, les performances sont exactement les mêmes.
Pour certains des modèles que j'ai développés, j'ai utilisé uniquement les valeurs d'hyperparamètres proposées par JMP. Vous avez raison.
Les 89 instances dont vous parlez n'ont pas été utilisées pour développer le modèle.J'ai également vérifié les performances du modèle sur ces 89 exemples non vus (en plus du groupe de test). Dans ce cas également, les modèles ont confirmé les bonnes performances observées sur les groupes d'entraînement / test. Tout semble aller bien.
Peut-être que, comme vous le suggérez, la seule possibilité pour être sûr de la fiabilité des modèles est de faire le déploiement et de vérifier les performances sur des données invisibles.