Je me demande s'il existe des heuristiques sur le nombre de caractéristiques par rapport au nombre d'observations. Évidemment, si un certain nombre de caractéristiques est égal au nombre d'observations, le modèle se surajustera. En utilisant des méthodes clairsemées (LASSO, filet élastique), nous pouvons supprimer plusieurs fonctionnalités pour réduire le modèle.
Ma question est (théoriquement): avant d' utiliser des métriques pour évaluer la sélection du modèle, y a-t-il des observations empiriques qui relient le nombre optimal de caractéristiques au nombre d'observations?
Par exemple: pour un problème de classification binaire avec 20 instances dans chaque classe, y a-t-il une limite supérieure sur le nombre de fonctionnalités à utiliser?
la source
d'après ma propre expérience: dans un cas, j'ai travaillé avec une vraie base de données très petite (300 images) avec de nombreuses classes, un grave problème de déséquilibre des données et j'ai fini par utiliser 9 fonctionnalités: SIFT, HOG, Contexte de forme, SSIM, GM et 4 fonctionnalités basées sur DNN. Dans un autre cas, j'ai travaillé avec une très grande base de données (images> 1 M) et j'ai fini par utiliser uniquement la fonction HOG. Je pense qu'il n'y a pas de relation directe entre le nombre d'instances et le nombre de fonctionnalités nécessaires pour atteindre une grande précision. MAIS: le nombre de classes, la similitude entre les classes et la variation au sein d'une même classe (ces trois paramètres) peuvent affecter le nombre de fonctionnalités. lorsque vous avez une base de données plus grande avec de nombreuses classes et une grande similitude entre les classes et une grande variation au sein de la même classe, vous avez besoin de plus de fonctionnalités pour atteindre une grande précision. RAPPELLES TOI:
la source
Cela dépend ... mais bien sûr, cette réponse ne vous mène nulle part.
Il est une règle de base pour la complexité du modèle: apprendre des données - dimension VC
"Très grossièrement", vous avez besoin de 10 points de données pour chaque paramètre du modèle. Et le nombre de paramètres du modèle peut être similaire au nombre de fonctionnalités.
la source
Un peu tard pour la fête, mais voici quelques heuristiques.
Pour la formation des classificateurs linéaires, 3 à 5 cas indépendants par classe et fonction sont recommandés. Cette limite vous donne des modèles stables et fiables , elle ne garantit pas un bon modèle (ce n'est pas possible: vous pourriez avoir des données non informatives où aucun modèle ne pourrait obtenir de bonnes performances de généralisation)
Cependant, pour des tailles d'échantillon aussi petites que votre scénario, la vérification (validation) plutôt que la formation est le goulot d'étranglement, et la vérification dépend du nombre absolu de cas de test plutôt que des cas relatifs à la complexité du modèle: en règle générale, vous avez besoin de ≈ 100 test cas dans le dénominateur pour estimer une proportion dont l'intervalle de confiance ne dépasse pas 10% de points.
Malheureusement, cela signifie également que vous ne pouvez pas obtenir la courbe d'apprentissage empirique de votre application: vous ne pouvez pas la mesurer avec suffisamment de précision, et dans la pratique, vous auriez de toute façon d'énormes difficultés à l'extrapoler parce que pour la formation, vous réagissez à la petite taille de l'échantillon en restreignant votre modèle. complexité - et vous assoupliriez cela avec l'augmentation de la taille de l'échantillon.
Voir notre article pour plus de détails: Beleites, C. et Neugebauer, U. et Bocklitz, T. et Krafft, C. et Popp, J .: Planification de la taille de l'échantillon pour les modèles de classification. Anal Chim Acta, 2013, 760, 25-33.
DOI: 10.1016 / j.aca.2012.11.007
manuscrit accepté sur arXiv: 1211.1323
Je n'ai jamais rien eu de proche de ces recommandations (données de spectroscopie, également pour des applications médicales). Ce que je fais alors est: je mesure de très près la stabilité du modèle dans le cadre du processus de modélisation et de vérification.
la source