2013-06-18 49 views
0

我有一些問題。randperm在訓練和測試數據中的作用是什麼?

  1. randperm在訓練數據和測試中的功能是什麼?這就像這個例子Multi-Class SVM(one versus all)我還不明白爲什麼它應該使用randperm?

  2. 如果我有一個像手寫字母表這樣的數據,我可以使用randperm作爲示例鏈接嗎?

是否有任何資源/文件可以作爲背景這個問題用?我需要一些幫助,謝謝。

+0

如果您的數據是位置相關的,例如:如果您有來自移動車輛的視頻並且地形正在改變,那麼您必須對數據進行洗牌,以便從數據集中獲得代表性的測試和訓練數據分割。這就是說,這可能更適合http://stats.stackexchange.com/ – alrikai

回答

0

我只能回答1.

訓練集的一點是要開發一個概括,然後您可以用測試設置來測試你的推廣測試。如果您調整了有關您的學習算法的任何內容,並在不創建新的培訓和測試集的情況下重新訓練/重新測試,那麼您只是在學習測試集,而不是開發泛化。

如果您的結果在整理培訓和測試數據時保持穩定,那麼您很可能已經學會了一個很好的概括。

這被稱爲重複保持方法 - 參見http://www.umiacs.umd.edu/~joseph/classes/459M/year2010/Chapter5-testing-4on1.pdf以簡要討論幾種方法。正如alrikai在評論中所建議的那樣,這是在stats.stackexchange.com上討論的那種材料。例如:https://stats.stackexchange.com/questions/19048/what-is-the-difference-between-test-set-and-validation-set

+0

如果數據的分佈不完美,我的意思是randperm的概率結果。例如測試數據中的數據A編號爲3,測試數據中只有訓練數據中沒有數據B? –

+0

你提出一個好的觀點,你需要每個字母的訓練數據和測試數據。隨着隨機選擇的直線上升,有一個機會,你不會有足夠的給定集合和更聰明的隨機分區可以緩解這一點。在分區和重新分區之後,如果它不好(比如,'a'不足夠的例子),那麼它可能只是一種驗證。 –

相關問題