作者thomasflee (Thomas)
看板DataScience
標題[問題] 隨機森林模型問題請益
時間Sun Jun 28 13:46:48 2020
各位大大好
小弟是自學的新手,今天研究python sklearn的隨機森林時,使用jupyter 練習iris的資
料範例,但產生以下的疑問,想請教板上大大的指點:
1. 隨機森林模型accuracy的選擇:
隨機森林因為抽樣的關係,每次跑出的accuracy數值都會不相同(ex., 0.91, 0.95, 0.9
8),一般都是選擇數值最高時產生的模型嗎?
2. 承第1點,訓練好的模型如何存取?
當我有新的資料進來時,我必須每次jupyter重跑一次所有程序(建立模型clf),最後將新
樣本帶入clf跑出預測嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.238.59.57 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/DataScience/M.1593323210.A.3A1.html
1F:推 sxy67230: 1. 你可以選擇最好的模型或是把所有隨機抽樣訓練的模 06/28 16:50
2F:→ sxy67230: 型做ensemble 06/28 16:50
3F:→ sxy67230: 2.用joblib或是pickle freeze整個模塊參數做保存,一般 06/28 16:50
4F:→ sxy67230: 而已joblib的performance比較好 06/28 16:50
5F:→ thomasflee: 感謝大大的指點 06/28 16:53
6F:→ Pieteacher: control random state 06/28 18:31
8F:→ seasa2016: 請教s大,joblib或是pickle 應該都只是存參數的方法吧 06/29 18:07
9F:→ seasa2016: 。如果參數一樣的話為什麼他的結果會有差啊 06/29 18:07
10F:推 sxy67230: joblib有針對numpy array做數據緩存跟壓縮的優化,儲存 06/29 19:07
11F:→ sxy67230: 方式不太一樣,pickle是把整個類對象序列化後保存,在 06/29 19:07
12F:→ sxy67230: 讀取跟儲存上loading會比較久,而且如果緩存序列太大會 06/29 19:07
13F:→ sxy67230: 有memory error的問題,相反joblib則有對此優化。如果你 06/29 19:07
14F:→ sxy67230: 是要用joblib存,pickle讀基本上數據儲存方法不同是沒 06/29 19:08
15F:→ sxy67230: 辦法這樣做的,不曉得有沒有get到你的問題 06/29 19:08
16F:→ seasa2016: 瞭解,感謝您的回答 06/29 20:09
17F:→ loser113: 1.test分數高 2.roc去選 3.看你分類需求 06/30 17:47
18F:推 aidansky0989: 檢查一下你的rf,應該是過擬合 06/30 21:48
19F:→ aidansky0989: 通常是randomsearchcv找出best_est(最佳模型).pre 06/30 21:51
20F:→ aidansky0989: dict一下代入特徵 06/30 21:51
21F:推 aidansky0989: 精度召回率都是用模型預測的y_pred比對label來判斷 06/30 21:57
22F:→ aidansky0989: 你的模型表現好不好,rf非常容易過擬合,需要做好預 06/30 21:57
23F:→ aidansky0989: 剪枝,這點sklearn可以設置 06/30 21:57