python sklearn包——3.1cross validation笔记
2016-02-27 11:06
1741 查看
preface:做实验少不了交叉验证,平时常用from sklearn.cross_validation import train_test_split,用train_test_split()函数将数据集分为训练集和测试集,但这样还不够。当需要调试参数的时候便要用到K-fold。scikit给我们提供了函数,我们只需要调用即可。
sklearn包中cross validation的介绍:在这里。其中卤煮对3.1.2. cross validation iterators这一小节比较注意。先做这一小节的笔记,后续再添加。cross_validation函数下的函数如下图所示。
Figure 1: cross validation下的函数
3.1.2.1. k-fold
将样例划分为K份,若K=len(样例),即为留一交叉验证,K-1份作为训练。从sklearn中自带的KFold函数说明中也可以看到其用法。其中n_folds默认为3折交叉验证,2/3作为训练集,1/3作为测试集。
Figure 3-1-2-1-1:KFold用法
Figure 3-1-2-1-2: KFold使用例子
3.1.2.2. Stratified k-fold
StratifiedKFold()这个函数较常用,比KFold的优势在于将k折数据按照百分比划分数据集,每个类别百分比在训练集和测试集中都是一样,这样能保证不会有某个类别的数据在训练集中而测试集中没有这种情况,同样不会在训练集中没有全在测试集中,这样会导致结果糟糕透顶。
Figure 3-1-2-2-1:StratifiedKFold函数使用
3.1.2.3. Label k-fold
LabelKFold()函数则是根据样例label来交叉验证,某个样例的数据必须是属于训练集或者测试集时,可用这个函数。奇怪的是卤煮在sklearn中使用异常,没有这个函数。。。
Figure 3-1-2-3:LabelKFold()函数使用
其他函数没怎么用上,也就暂时不花费时间整理。
sklearn包中cross validation的介绍:在这里。其中卤煮对3.1.2. cross validation iterators这一小节比较注意。先做这一小节的笔记,后续再添加。cross_validation函数下的函数如下图所示。
Figure 1: cross validation下的函数
3.1.2.1. k-fold
将样例划分为K份,若K=len(样例),即为留一交叉验证,K-1份作为训练。从sklearn中自带的KFold函数说明中也可以看到其用法。其中n_folds默认为3折交叉验证,2/3作为训练集,1/3作为测试集。
Figure 3-1-2-1-1:KFold用法
Figure 3-1-2-1-2: KFold使用例子
3.1.2.2. Stratified k-fold
StratifiedKFold()这个函数较常用,比KFold的优势在于将k折数据按照百分比划分数据集,每个类别百分比在训练集和测试集中都是一样,这样能保证不会有某个类别的数据在训练集中而测试集中没有这种情况,同样不会在训练集中没有全在测试集中,这样会导致结果糟糕透顶。
Figure 3-1-2-2-1:StratifiedKFold函数使用
3.1.2.3. Label k-fold
LabelKFold()函数则是根据样例label来交叉验证,某个样例的数据必须是属于训练集或者测试集时,可用这个函数。奇怪的是卤煮在sklearn中使用异常,没有这个函数。。。
Figure 3-1-2-3:LabelKFold()函数使用
其他函数没怎么用上,也就暂时不花费时间整理。
相关文章推荐
- 在centOS上离安装Python2.7以及numpy,scipy,matplot,sklearn等
- python2.7 sklearn 使用报错ImportError: DLL load failed: 找不到指定模块
- text_mining_tutorial
- [sklearn学习]linear_model.LinearRegression
- ubuntu14.04 安装 sklearn
- Scikit-learn Preprocessing 预处理
- python sklearn画ROC曲线
- 《机器学习实战》笔记之八——预测数值型数据:回归
- python一些包的说明文档/教程链接
- [kaggle实战] Digit Recognizer -- 从KNN,LR,SVM,RF到深度学习
- python 分词计算文档TF-IDF值并排序
- Installing scikit-learn note
- sklearn特征选择和分类模型
- 一个超级简单的多分类多标签值例子
- Python机器学习库sklearn的安装
- python:sklearn学习笔记
- sklearn:Python语言开发的通用机器学习库
- 逻辑回归(Logistic Regression)
- 机器学习python库sklearn安装
- UndefinedMetricWarning: Precision is ill-defined and being set to 0.0 in labels with no predicted sa