D'après ce que je comprends, nous ne pouvons construire qu'une fonction de régression qui se situe dans l'intervalle des données d'entraînement.
Par exemple (un seul des panneaux est nécessaire):
Comment pourrais-je prédire l'avenir en utilisant un régresseur KNN? Encore une fois, il semble ne se rapprocher que d'une fonction qui se situe dans l'intervalle des données d'entraînement.
Ma question: Quels sont les avantages d'utiliser un régresseur KNN? Je comprends que c'est un outil très puissant pour la classification, mais il semble qu'il fonctionnerait mal dans un scénario de régression.
regression
machine-learning
k-nearest-neighbour
gung - Réintégrer Monica
la source
la source
Réponses:
Les méthodes locales comme K-NN ont du sens dans certaines situations.
Un exemple que j'ai fait dans le travail scolaire avait à voir avec la prévision de la résistance à la compression de divers mélanges d'ingrédients de ciment. Tous ces ingrédients étaient relativement non volatils par rapport à la réponse ou l'un à l'autre et KNN a fait des prédictions fiables à ce sujet. En d'autres termes, aucune des variables indépendantes n'avait de variance disproportionnée à conférer au modèle individuellement ou éventuellement par interaction mutuelle.
Prenez cela avec un grain de sel parce que je ne connais pas de technique d'enquête de données qui le montre de manière concluante mais intuitivement il semble raisonnable que si vos caractéristiques présentent un certain degré de variances proportionnelles, je ne sais pas quelle proportion, vous pourriez avoir un Candidat KNN. J'aimerais certainement savoir s'il y a eu des études et des techniques résultantes développées à cet effet.
Si vous y réfléchissez dans une perspective de domaine généralisé, il existe une large classe d'applications où des «recettes» similaires donnent des résultats similaires. Cela semblait certainement décrire la situation de prédire les résultats du mélange de ciment. Je dirais que si vous aviez des données qui se comportaient selon cette description et en plus votre mesure de distance était également naturelle pour le domaine en question et enfin que vous aviez suffisamment de données, j'imagine que vous devriez obtenir des résultats utiles de KNN ou d'une autre méthode locale .
Vous bénéficiez également d'un biais extrêmement faible lorsque vous utilisez des méthodes locales. Parfois, les modèles additifs généralisés (GAM) équilibrent le biais et la variance en ajustant chaque variable individuelle à l'aide de KNN de telle sorte que:
Je n'écrirais pas KNN aussi rapidement. Elle a sa place.
la source
Je n'aime pas le dire, mais en fait, la réponse courte est que "prédire dans le futur" n'est pas vraiment possible, ni avec un knn ni avec aucun autre classificateur ou régresseur existant actuellement.
Bien sûr, vous pouvez extrapoler la ligne d'une régression linéaire ou l'hyperplan d'un SVM mais à la fin vous ne savez pas ce que sera l'avenir, pour tout ce que nous savons, la ligne pourrait juste être une petite partie d'une réalité sinueuse. Cela devient évident lorsque vous regardez des méthodes bayésiennes comme les processus gaussiens par exemple, vous remarquerez une grande incertitude dès que vous quittez le "domaine d'entrée connu".
Bien sûr, vous pouvez essayer de généraliser de ce qui s'est passé aujourd'hui à ce qui se passera probablement demain, ce qui peut facilement être fait avec un régresseur tricoté (par exemple, les numéros de client de l'année dernière pendant la période de Noël peuvent vous donner une bonne idée des chiffres de cette année). Bien sûr, d'autres méthodes peuvent intégrer des tendances, etc., mais à la fin, vous pouvez voir à quel point cela fonctionne en matière de marché boursier ou de prévisions météorologiques à long terme.
la source
D'abord un exemple pour "Comment pourrais-je prédire l'avenir en utilisant un régresseur KNN?".
Ajustez les poids, voir par exemple inverse de la distance pondérée-IDW-interpolation avec python- ,
et la distance métrique pour " le plus proche voisin" dans 7d.
"Quels sont les avantages de l'utilisation d'un régresseur KNN?"
Aux bons commentaires des autres, j'ajouterais facile à coder et à comprendre, et évolue jusqu'au big data.
Inconvénients: sensible aux données et au réglage, peu de compréhension .
Les prévisionnistes appellent cela un modèle ARMA, Autoregressive moving-average_model ou Autoregressive . Voir aussi Analyse de régression .
Ainsi, votre première ligne "nous ne pouvons construire qu'une fonction de régression qui se situe dans l'intervalle des données d'entraînement" semble concerner le mot déroutant "régression".)
la source
From An Introduction to Statistical Learning, section 3.5:
Mais il y a des contraintes (pas du manuel, juste ce que j'ai conclu):
la source