我是相對較新的Python中的數據科學,並在探索數據科學方面的一些競爭,我對「訓練數據集」和「測試數據集」感到困惑。有些項目已經合併,有些則保持分開。有兩個數據集的基本原理是什麼?任何建議將有幫助,謝謝數據科學中的訓練數據和測試數據
回答
「培訓數據」和「測試數據」是指您希望分析的數據的子集。如果監督式機器學習算法被用於對數據做某些事情(例如將數據點分爲羣集),則該算法需要被「訓練」。
監督機器學習算法的一些示例是支持向量機(SVM)和線性迴歸。它們可用於對具有多個維度的數據進行分類或聚類,從而使我們能夠聚合相似的數據點。
這些算法需要在被用於「測試集」之前,使用正在分析的數據子集(「訓練集」)進行訓練。從本質上講,培訓爲算法提供了一個機會來推導出它所呈現的一些新數據的一般解決方案,這與我們作爲人類訓練的方式非常相似,因此我們可以在將來處理新的情況。
希望這會有所幫助!
真的很好的解釋,最後一個問題,爲什麼在一些模型人合併培訓和測試數據,有些則保持獨立。感謝你的幫助。 – iahmed
據我所知,您的測試和培訓數據應該始終保持分開。原因是當你訓練你的算法時,應該保持對應該是「未知」的數據的無知。如果訓練集包含測試集中的元素,則會受到污染。 –
數據集是行的列表,可以分爲訓練和測試段。這樣做的原因是在代碼的訓練過程中使用的數據行之間保持CLEAR分隔(認爲它就像您用來「訓練」嬰兒學習對象的閃卡)和數據行(當你測試寶寶學習物體時)。您希望它們分開以便獲得算法執行得如何的準確評分(例如,當測試時,嬰兒得到9/10正確)。如果您將訓練排和試驗碼混合在一起,您不會知道寶寶是否記住了訓練結果,或者實際上知道如何識別9/10張新圖像。
通常,數據集是作爲一個集合給出的,因爲在代碼執行過程中,通過隨機選擇行來隨機選擇訓練和測試集是很好的。這樣,您可以多次運行培訓並進行不同時間的測試,並且可以取平均值。例如,寶寶可能首次獲得9/10,下一個6/10,最後7/10。平均準確率將達到73.3%。這是一個比只嘗試一次更好的表示方式(正如你所看到的並不完全準確)。
列車數據集用於訓練您的模型,並在訓練完成後如何檢查訓練好的模型有多準確?爲此,我們使用測試數據集,我們通常將可用數據分爲兩部分,一部分用於訓練,一部分用於測試。
- 1. 在MATLAB中將數據拆分爲訓練/測試數據集?
- 2. 在Matlab中訓練數據集,驗證數據集,測試數據集
- 3. 訓練數據集
- 4. Tesseract訓練數據
- 5. randperm在訓練和測試數據中的作用是什麼?
- 6. 訓練數據和測試數據之間的一次編碼映射問題
- 7. 在Postgres中將數據集分成訓練和測試集
- 8. 在R中創建訓練和測試數據集
- 9. 在Pandas中創建訓練和測試數據集
- 10. 訓練數據集羣的BOW預測
- 11. 科學數據
- 12. 將分區數據集拆分爲訓練和測試(訓練數據每個類有200個示例)
- 13. Python:如何將數據採樣到測試和訓練數據集?
- 14. 用MAHOUT測試和訓練不同的數據集
- 15. R mlr - 從訓練數據子集和整個測試數據(不是整個訓練數據)創建學習曲線?
- 16. 隨機分割訓練和測試數據
- 17. Pyspark - 從數據框創建訓練集和測試集
- 18. 擅長分裂訓練和測試數據嗎?
- 19. 什麼是訓練和測試數據集
- 20. 將數據分割爲訓練和測試
- 21. 生成keras訓練數據
- 22. FANN訓練數據集
- 23. 如何在caffe中訓練/測試我自己的數據集?
- 24. 將預測數據放入訓練數據集是否有效?
- 25. 標準化訓練數據後預測使用sklearn新數據
- 26. 如何將訓練數據轉換爲weka分類器的測試數據?
- 27. 批量訓練但在Tensorflow中測試單個數據項目?
- 28. 我可以重複使用測試數據作爲訓練數據嗎?
- 29. Pandas使用訓練數據框列選擇測試數據幀列
- 30. HMM - 訓練數據和格式
https://stats.stackexchange.com/questions/19048/what-is-the-difference-between-test-set-and-validation-set – languitar