Cross_validation.train_test_split 中 stratify这个参数的意义是什么?
生活随笔
收集整理的這篇文章主要介紹了
Cross_validation.train_test_split 中 stratify这个参数的意义是什么?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
比單獨使用train_test_split來劃分數據更嚴謹
?
?
stratify是為了保持split前類的分布。比如有100個數據,80個屬于A類,20個屬于B類。如果train_test_split(... test_size=0.25, stratify = y_all), 那么split之后數據如下:?
training: 75個數據,其中60個屬于A類,15個屬于B類。?
testing: 25個數據,其中20個屬于A類,5個屬于B類。?
用了stratify參數,training集和testing集的類的比例是 A:B= 4:1,等同于split前的比例(80:20)。通常在這種類分布不平衡的情況下會用到stratify。
這個參數sklearn的文檔4中講的不是太清楚
幫助文檔
http://scikit-learn.org/stable/modules/generated/sklearn.cross_validation.train_test_split.html
總結
以上是生活随笔為你收集整理的Cross_validation.train_test_split 中 stratify这个参数的意义是什么?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java生成大素数_代码优化 - 生成素
- 下一篇: Rollback Protection