DBSCANのeps
を見積もる次のコードがあります。コードが正常であれば、knn distance plot
を取得しました。コードは次のとおりDBSCANでknn距離プロットを使用してepsを推定する方法
data
は、画素位置(行と列)のアレイである
ns = 4
nbrs = NearestNeighbors(n_neighbors=ns).fit(data)
distances, indices = nbrs.kneighbors(data)
distanceDec = sorted(distances[:,ns-1], reverse=True)
plt.plot(indices[:,0], distanceDec)
。私はプロットを取得したが、私はeps
をどのようにして決定するのか分からない。 DBSCAN
紙によると、
閾値点が ソートK-distのグラフ
の最初の谷の最初の点である私は、コードでそれを実装するのですか知りません。また、ns = 4
は私のminPts
ですか、minPts
をeps
から推定する方法はありますか?
knnプロットを視覚化するコードは正しいですか? –
あなたはおそらくn-1位の近所を見ているでしょうし、あなたのコードは常に最初の距離として0を返すと仮定しています。また、プロットのxの選択は私には意味がありません。 –