2017-08-13 17 views
-1

は、私は自分の一部のデータで、この例に従うことをしようとしていますtrue_labels 。ここDBSCAN評価の必要性は

は、最初にそれを必要とするラインである。

print("Homogeneity: %0.3f" % metrics.homogeneity_score(labels_true, labels)) 

私は次のように私が使用してい緯度&経度列とデータを持っている:

coords = X_train.as_matrix(columns=['latitude', 'longitude']) 

kms_per_radian = 6371.0088 
epsilon = 1.5/kms_per_radian 
db = DBSCAN(eps=epsilon, min_samples=1, algorithm='ball_tree', metric='haversine').fit(np.radians(coords)) 
cluster_labels = db.labels_ 
num_clusters = len(set(cluster_labels)) 
clusters = pd.Series([coords[cluster_labels == n] for n in range(num_clusters)]) 
print num_clusters 
#get returned 60 

print("Homogeneity: %0.3f" % metrics.homogeneity_score(coords, cluster_labels)) 

は私にとってはうまくいかない行です。

X_train.head():

bathrooms bedrooms building_id  description  features interest_level latitude longitude manager_id price 
10 1.5  3.0  53a5b119ba8f7b61d4e010512e0dfc85 A Brand New 3 Bedroom 1.5 bath ApartmentEnjoy ... [] medium 40.7145  -73.9425 5ba989232d0489da1b5f2c45f6688adc 3000.0 
10000 1.0  2.0  c5c8a357cba207596b04d1afd1e4f130  [Doorman, Elevator, Fitness Center, Cats Allow... low  40.7947  -73.9667 7533621a882f71e25173b27e3139d83d 5465.0 
100004 1.0  1.0  c3ba40552e2120b0acfc3cb5730bb2aa Top Top West Village location, beautiful Pre-w... [Laundry In Building, Dishwasher, Hardwood Flo... high 40.7388  -74.0018 d9039c43983f6e564b1482b273bd7b01 2850.0 
100007 1.0  1.0  28d9ad350afeaab8027513a3e52ac8d5 Building Amenities - Garage - Garden - fitness... [Hardwood Floors, No Fee] low  40.7539  -73.9677 1067e078446a7897d2da493d2f741316 3275.0 
100013 1.0  4.0  0 Beautifully renovated 3 bedroom flex 4 bedroom... [Pre-War] low  40.8241  -73.9493 98e13ad4b495b9613cef886d79a6291f 3350.0 

私は理解しているように、各点があまりにも属し予測クラスタ#db.labels_です。予測された60個のクラスターラベルを持つ新しいコード配列と、各点の古い緯度/経度の代わりに、真の60個のクラスターラベルを持つメトリクスを返すようにしたいと思います。

+0

[このページ](http://scikit-learn.org/stable/modules/clustering.html#clustering-performance-evaluation)を参照し、グラウンドトゥルースデータを必要としないメトリックを探します。 –

答えて

0

db.labels_は予測されるラベルですが、 'homogeneity_score'関数では、クラスタリングする前にグラウンド真理値ラベルを予測クラスタと比較する必要があります。

あなたはスコア関数に 'labels_true'入力として完全なトレーニングセットを使用することによって関数を誤用しています。訓練データにラベルを付けた場合は、グラウンド真理値ラベルだけを 'ラベル_true'入力として含めます。トレーニングデータのグラウンドトゥルーラベルがない場合は、 'homogeneity_score'関数を使用することはできません。

0

リアクタクラスタリングを行うときにtrue_labelsがありません。

したがって、均質性などは使用できません。

"デモンストレーション"データセットでのみ機能します。 のラベルがある場合、クラスタリングではなく分類を使用します。

関連する問題