Wert von k in k-Nächster-Nachbar-Algorithmus
Habe ich 7 Klassen, die Bedürfnisse zu klassifizieren, und ich habe 10 Funktionen. Gibt es einen optimalen Wert für k muss ich in diesem Fall verwenden oder muss ich ausführen, um das KNN für Werte von k zwischen 1 und 10 (um 10) und ermitteln Sie den besten Wert mit Hilfe des Algorithmus selbst?
Vielleicht möchten Sie Blick auf diesem Artikel
oh Nein, leider iam nicht, kompetent genug zu Lesen und zu verstehen, dass das Papier. könnte mir bitte jemand helfen 🙁 ?
oh Nein, leider iam nicht, kompetent genug zu Lesen und zu verstehen, dass das Papier. könnte mir bitte jemand helfen 🙁 ?
InformationsquelleAutor user574183 | 2012-07-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Neben der Artikel ich gepostet in den Kommentaren gibt es diese eine wie gut, dass schlägt:
Es hängt viel von Ihrem einzelnen Fällen ist es manchmal am besten durch die einzelnen möglichen Wert für k und für sich selbst entscheiden.
Du bist die Klassifizierung basiert auf den Funktionen, also n steht für die Anzahl der features.
Wenn ich 93 Funktionen als 97 eine apt Wahl, oder sollte ich wählen, 93^1/2?
Wie gesagt, Sie sollten take-n^0.5 (wobei n=keine Daten-Instanzen, nicht features) als Startwert für k und ändern Sie es entsprechend.
Was bedeutet es, wenn die "optimale k" nicht geben uns die besten Ergebnisse?
InformationsquelleAutor NominSim
Ist es wichtig zu beachten, dass die k-NN-Algorithmus ist der, dass die Anzahl der Funktionen und die Anzahl der Klassen beide nicht spielen eine Rolle bei der Bestimmung der Wert von k in der k-NN-Algorithmus. k-NN-Algorithmus ist eine ad-hoc-Klassifikator zur Klassifikation von Testdaten, basierend auf Distanz-Metrik, ich.e ein test-sample ist klassifiziert als Klasse-1, wenn es mehr Anzahl der Klasse-1-Ausbildung Proben näher an die Probe im Vergleich zu anderen Klassen training Proben. Für Eg: Wenn der Wert von k = 5 die Proben, dann die 5 nächsten training Proben ausgewählt werden basierend auf einer Distanz-Metrik und dann ein voting für die meisten Anzahl der samples, die pro ist Klasse gemacht. Also, wenn 3 Proben gehören zu der Klasse 1 und 2 gehören zu Klasse 5, dann das test-sample ist klassifiziert als Klasse-1. Also der Wert von k gibt die Anzahl der training-samples, die erforderlich sind, um die Klassifizierung der Probe.
Kommen auf Ihre Frage, der Wert von k ist den nicht-parametrischen und eine Faustregel in der Wahl der Wert der k ist k = sqrt(N)/2, wo N steht für die Anzahl der Proben in Ihre Trainings-dataset. Ein weiterer Tipp, den ich vorschlagen, ist zu versuchen und halten den Wert von k ungerade, so dass es kein Band gibt, zwischen der Auswahl einer Klasse ist, sondern, dass Punkte auf die Tatsache, dass die Trainingsdaten eine hohe Korrelation zwischen den Klassen und mit einer einfachen Klassifizierung Algorithmus wie z.B. k-NN, würde das Ergebnis schlechter Klassifizierung Leistung.
InformationsquelleAutor Charan P
Im KNN, Suche nach dem Wert von k ist nicht einfach. Ein kleiner Wert für k bedeutet, dass Lärm einen höheren Einfluss auf das Ergebnis haben und einen großen Wert machen es zu rechenintensiv.
Daten, die Wissenschaftler in der Regel wählen :
1.Eine ungerade Zahl, wenn die Anzahl der Klassen ist 2
2.Ein weiterer einfacher Ansatz zu wählen, k ist die Menge k = sqrt(n).
wobei n = Anzahl der Datenpunkte, die in den Trainingsdaten.
Hoffe, dies wird Ihnen helfen.
InformationsquelleAutor Ashok Lathwal