Classification

稀疏的訓練集會對 SVM 產生不利影響嗎?

  • February 9, 2012

我正在嘗試使用 SVM 將消息分類為不同的類別。我已經從訓練集中編制了一份理想的單詞/符號列表。

對於表示消息的每個向量,1如果存在該單詞,我將相應的行設置為:

“語料庫”是:[mary, little, lamb, star, twinkle]

第一條消息:“瑪麗有一隻小羊羔”-> [1 1 1 0 0]

第二條消息:“閃爍的小星星”-> [0 1 0 1 1]

我認為這是 SVM 相當常見的設置,但我的問題是,在集合中有數千個單詞時,如果每條消息實際顯示的只有 1-2 個單詞怎麼辦?我的訓練向量集的線性相關性是否會對算法的收斂能力產生不利影響?

稀疏性和線性相關性是兩個不同的東西。線性相關意味著某些特徵向量是其他特徵向量的簡單倍數(或同樣適用於示例)。在您描述的設置中,我認為線性相關性不太可能(這意味著兩個術語在所有文檔中具有相同的頻率(或其倍數))。簡單地具有稀疏特徵不會對 SVM 造成任何問題。看到這一點的一種方法是您可以對坐標軸進行隨機旋轉,這將使問題保持不變並給出相同的解決方案,但會使數據完全不稀疏(這部分是隨機投影的工作原理)。

此外,您似乎在談論primal中的 SVM 。請注意,如果您使用內核 SVM,僅僅因為您擁有稀疏數據集並不意味著內核矩陣將是稀疏的。然而,它可能是低等級的。在這種情況下,您實際上可以利用這一事實進行更有效的訓練(例如,參見使用低秩內核表示的高效 svm 訓練)。

引用自:https://stats.stackexchange.com/questions/23470

comments powered by Disqus