2016-04-15 67 views
0

我正在使用Weka IBk進行文本分類。每個文件基本上是一個簡短的句子。訓練數據集包含15,000個文檔。在測試時,我可以看到k = 1給出了最好的精度?這怎麼解釋?爲什麼KNN中k = 1的精度最高?

回答

1

如果您使用與k = 1相同的數據集來查詢您的學習者,那麼輸出值應該是完美的,除非您有具有不同結果值的相同參數的數據。對KNN學習者適用過度擬合。

如果您使用與您一起訓練的相同數據集進行查詢,則查詢將針對每個學習者提供一些給定的參數值。由於該點存在於學習者的訓練數據集中,因此學習者將匹配該訓練點與參數值最接近,因此輸出該訓練點存在的任何Y值,在這種情況下,該值與您的點相同質疑。

+0

感謝您的回答。我用測試數據查詢學習者,而不是用訓練數據集。 – Chechi

0

的可能性是:

  1. 數據訓練數據的測試是相同的數據
  2. 數據測試與訓練數據相似度較高
  3. 類之間的界限是很清楚的

K的最佳值取決於數據。一般來說,k的值可以減少噪聲對分類的影響,但是使得每個分類之間的邊界變得更加模糊。

相關問題