美文网首页机器学习
09 回归算法 - 机器学习调参

09 回归算法 - 机器学习调参

作者: 白尔摩斯 | 来源:发表于2018-10-18 18:12 被阅读69次

回顾:同时使用L1正则和L2正则的线性回归模型就称为Elastic Net,\color{red}{弹性网络算法}

在实际工作中,对于各种算法模型(线性回归)来讲,我们需要输入θ、p、λ的值。

θ=(XTX)-1XTY ;算法会自动生成,无需人工干预。
p、λ 都是超参数;需要人工调整。

\color{red}{超参数} 是在开始学习过程之前设置值的参数,而不是通过训练得到的参数数据。通常情况下,需要对超参数进行优化,给学习机选择一组最优超参数,以提高学习的性能和效果。

求解p、λ的过程叫做调参(超参)

如交叉验证:将训练数据分成多份,其中一份进行数据验证,并获取最优的超参:p、λ;常见的方法:k折交叉验证。五折交叉验证 (scikit-learn中默认)

=== 训练集与测试集划分方法 ===

1、留出法 (hold-out) :
一部分为训练集,一部分为测试集。
尽量保证数据分布的一致性,划分比例可以是 2:1 或 4:1
对应函数:train_test_split(X,Y,test_size)

2、交叉验证法 (k-fold cross validation) :
划分为k个互斥子集,用k-1作为训练集,剩下一个为测试集,最终每一个子集都会作为测试集,其余子集作为训练集,共进行k次建模,最终得到测试结果的均值。
k取值一般为10。
随机取k个互斥子集,进行p次,最后p个k-fold cv进行取平均,叫做p次k折交叉验证。
k折交叉验证即能帮我们挑选出最优参数,也能帮我们挑选出最优模型。

3、留一法LOOCV (leave-one-out cross validation):
m个样本,令k=m,作为k折交叉验证的特例。只有1种划分方法,即每个测试集只有一条数据。
优势:每个模型都能很好的反应原始数据集的特性。
劣势:计算量在数据量大的时候会非常大,还不算调参的计算量。
让每一个样本都做一次测试集,其他样本都做训练集。即做一次LOOCV 需要做m次的训练,最后取平均。

4、Bootstrapping(自助法):
设现在有一个数据集D,对D中的m个数据随机取样,接着将数据放回原数据集。然后再一次继续取样,重复m次,产生一个新的数据集D' ,最后取得的数据作为测试集。

D={1,5,2,3} m=4
D‘ 长度也应该等于4 ,所以抽4次
第一次抽到了2,然后吧放回去 D’ = {2}
第二次抽到了2,然后把2放回去 D‘ = {2,2}
第三次抽到了2,然后把2放回去 D‘ = {2,2,2}
第四次抽到了3,然后把3放回去 D‘ = {2,2,2,3}
其中{1,5}没有被抽到,将其作为测试集。

根据概率,未取到的数据占比约为36.8%

相关文章

  • 09 回归算法 - 机器学习调参

    回顾:同时使用L1正则和L2正则的线性回归模型就称为Elastic Net, 在实际工作中,对于各种算法模型(线性...

  • Task4模型调参

    学习目标 了解常用的机器学习模型,并掌握机器学习模型的建模与调参流程 内容介绍 线性回归模型:线性回归对于特征的要...

  • 建模调参总结及实战项目(3)

    根据天池项目建模调参总结而出机器学习算法的基础知识详见: 1.线性回归模型 将训练集分为train_X特征变量,t...

  • 5-1节 Logistic回归|使用 Logistic 回归在简

    文章原创,最近更新:2018-09-19 前言:本文介绍机器学习分类算法中的Logistic回归算法并给出伪代码,...

  • 5-2节 Logistic回归|从疝气病症预测病马的死亡率项目汇

    文章原创,最近更新:2018-09-19 前言:本文介绍机器学习分类算法中的Logistic回归算法并给出伪代码,...

  • 机器学习算法的优缺点

    机器学习算法的优缺点 机器学习算法的优缺点 线性回归 Linear Regression 逻辑回归 Logisti...

  • 2019-10-29

    Day2 简单线性回归模型 机器学习入门--简单线性回归机器学习算法之线性回归算法 导入库matplotlib 绘...

  • 《机器学习(周志华)》学习笔记(三)

    Q:机器学习中最简单的学习算法是什么? A:最简单的机器学习算法莫过于线性回归算法了。线性回归算法的基本形式如下:...

  • 回归算法学习

    回归算法是机器学习中的经典算法之一,本文是对学习线性回归和逻辑回归算法进行的总结,线性回归与逻辑回归算法解决的分别...

  • Python编写线性回归算法

    Python编写线性回归算法 前言 线性回归(Linear Regression)是机器学习的基础,作为机器学习算...

网友评论

    本文标题:09 回归算法 - 机器学习调参

    本文链接:https://www.haomeiwen.com/subject/lqvszftx.html