請問將資料集分組之後再分別訓練,可以得到更好的結果嗎?為什麼?

時間 2021-06-02 08:49:00

1樓:江申

假設你用的是決策樹模型,比較方便後面的解釋。另外假設你按某特徵a>0和a<=0分為兩組,第1組和第2組分別訓練出模型A和B。

來看看你最後得到的決策樹是怎麼樣的,最上面一層是按特徵a>0和a<=0進入兩個子節點,每個子節點再用模型A和模型B得到最後的預估值。可見我們可以把最上面一層和模型A和B看成乙個整體的決策樹C。

那麼這個決策樹C和你用全部資料直接訓練得到的決策樹D有什麼區別呢?區別就在於第一層是你人工指定的,你人工干預了模型的訓練過程。那麼結論就很清晰了,如果你人工指定是根據先驗或者專家知識(總之是訓練資料裡體現不出來的知識),那麼人工指定了頂層結點的C就比整體訓練的模型D好。

如果第一層是你亂指定的,或者你指定的時候依據的資訊已經在訓練資料裡有體現,那麼C不一定比D更好。

2樓:邵浩博士

比喻一下,如果你想做乙個分類器,分類一群動物

如果這一群動物都是同類的小狗,那麼分組訓練提公升不大

如果這一群動物,有小狗,有雞,小狗裡面還有純色的和帶斑點的,那麼按特徵分組(比如說有無翅膀),再去訓練那麼效果應該會有提公升

將資料集分為訓練集和測試集,訓練集上網格搜尋調參,得到最優引數,能用到在訓練集交叉驗證上嗎?

liaoyanjun 我理解你的意思是先做網格搜尋,選擇一組引數,然後做交叉驗證是不。答案是完全可以,你得到的就是一組引數對應的交叉驗證的均值。交叉驗證的均值好,引數就說明優秀。但是如果資料很大,程式會很慢。 哈哈祥 GridSearchCV,它存在的意義就是自動調參,只要把引數輸進去,就能給出最優...

請問r語言中如何將資料分組

Winmin x rnorm 1000,0,1 x1 sort x,decreasing F for i in 1 10 a x1 1 i 1 100 i 100 print names table a which.max table a zhuobie 我說乙個比較簡單的辦法。將x1轉化為100 ...

資料集的benchmark和baseline指的是什麼,一般有什麼區別?

巧克力工廠的查理 Abaselineis a measurement or state at a point in time.Abenchmarkis a measurement of an industry standard,best practice or competitor.Baseline...