2013-02-21 53 views
0

當我預測,在scikit所屬的圖像中SVM類學習如何檢索支持向量機類中的大部分相似圖像?

... 
print "Predicting on 1 sample" 
print "Input features:" 
fv = [0.16666666666628771, 5.169878828456423e-26, 2.584939414228212e-22, 1.0, 1.0000000000027285] 
print fv 
print "Predicted class index:" 
print clf.predict([fv]) 

輸出:

Predicted class index: 
[5] 

我怎樣才能得到它的類中最5張類似的圖片?

回答

1

我不是你可以得到樣本之間的SVM相似性度量,只有從樣本到用於分類的超平面的距離。

您可以使用scipy.spatial.distance.pdist方法計算圖像特徵向量之間的歐式距離。與目標圖像距離最短的5幅圖像可以認爲是最相似的。我希望有所幫助。

+0

Scikit-learn的'sklearn.metrics'還包含一堆距離和相似性度量,其中包括SVM用於計算相似度的內核。 – 2013-02-21 10:55:20

+0

如果我在我的svc中使用rbf內核,您正在http://scikit-learn.org/dev/modules/generated/sklearn.metrics.pairwise.rbf_kernel.html#sklearn.metrics.pairwise.rbf_kernel上進行嘗試。 ? – postgres 2013-02-22 02:02:41