2017-07-16 12 views
-1

Ich bin neu in R und Machine Learning. Ich verwende eine KNN-Klassifikation mit der euklidischen Distanz. Ich frage mich, wie kann ich Cosinus und Jaccard Abstand statt Euklidian in R verwenden? Gibt es Pakete, die ich benutzen kann? Dankeknn mit cosine und jaccard entfernung

Antwort

0

vor allem, was Sie innerhalb einer R-Sitzung

library(sos) 

findFn("knn", maxPages=10, sortby="MaxScore") 

ausgeführt tun können, für knn Pakete von MaxScore zu suchen (die Parameter einstellen können entsprechend).

Wenn Sie kein Paket finden, das die Cosinus- oder Jaccard-Entfernung bietet, würde ich vorschlagen, zuerst die Abstandsmatrix zu berechnen und diese dann als Eingabe für die KNN anzugeben.

Es gibt einige Pakete wie kNN oder FastKnn, die eine Entfernungsmatrix als Eingabe akzeptieren (Sie können dies googlen mit: "distance matrix knn r").

Schließlich erlaubt die KernelKnn die Berechnung der jaccard-Entfernung aber nur für binäre Daten (ich bin der Autor, Sie können sich auch die anderen Distanzmetriken ansehen).

Ich hoffe es hilft.