数据挖掘 建模调参 Datawhale 零基础入门数据挖掘-Task4 建模调参

**

Datawhale 零基础入门数据挖掘-Task4 建模调参

参考文章

4.2 内容介绍

推荐:各种机器学习的实例应用场景

1. 线性回归模型;

自己理解:本次建模就采用了一种最为简单且基础的线性回归模型,简单而基础的东西往往也最重要,应不断加强理解。本次x变量选了除[‘price’,‘brand’,‘model’,‘brand’]以外的所有变量,y为预测变量price,分别用线性回归模型简单建模,后续调整。

线性回归有很多种推广形式,本质上它是一系列特征的线性组合,在二维空间中,你可以把它视作一条直线,在三维空间中可以视作是一个平面。
线性回归最普通的形式是 f(x)=w*x+b
其中x向量代表一条样本{x1,x2,x3…xn},其中x1,x2,x3代表样本的各个特征,w是一条向量代表了每个特征所占的权重,b是一个标量代表特征都为0时的预测值,可以视为模型的basis或者bias。看起来很简单的。

- 线性回归对于特征的要求;

看了一些文章,主要有:
推荐: 回归分析的五个基本假设

“多元线性回归一般要求应变量为连续性变量,而且是服从正态分布;对自变量没有要求,可以是连续变量,可以是分类变量,或者有序变量。"

线性回归使用的基本条件:线性、独立、正态、齐性。
(1)自变量与因变量之间存在线性关系 这可以通过绘制”散点图矩阵”进行考察因变量随各自变量值的变化情况。如果因变量Yi 与某个自变量X i 之间呈现出曲线趋势,可尝试通过变量变换予以修正,常用的变量变换方法有对数变换、倒数变换、平方根变换、平方根反正弦变换等。
(2)各观测间相互独立 任意两个观测残差的协方差为0 ,也就是要求自变量间不存在多重共线性问题。对于如何处理多重共线性问题,请参考《多元线性回归模型中多重共线性问题处理方法》
(3)残差e 服从正态分布N(0,σ2) 。其方差σ2 = var (ei) 反映了回归模型的精度, σ 越小,用所得到回归模型预测y的精确度愈高。
(4) e 的大小不随所有变量取值水平的改变而改变,即方差齐性。
原文链接:https://blog.csdn.net/ziyue246/article/details/80940024

处理长尾分布;

本次建模过程是取log,使之更类似于正态分布 (因为不满足数据误差项符合正态分布,也就是不满足上面线性回归使用的第(3)个基本条件)

理解线性回归模型;

基本思路: 回归–>检验–>预测
相关概念抛出:训练集,假设函数,线性拟合,代价函数,目标函数,梯度下降法…
在这里插入图片描述
参考文章:我对线性回归的理解

2. 模型性能验证:

评价函数与目标函数在这里插入图片描述
交叉验证方法;

本次建模使用了: 五折交叉验证
在使用训练集对参数进行训练的时候,经常会发现人们通常会将一整个训练集分为三个部分(比如mnist手写训练集)。一般分为:训练集(train_set),评估集(valid_set),测试集(test_set)这三个部分。这其实是为了保证训练效果而特意设置的。其中测试集很好理解,其实就是完全不参与训练的数据,仅仅用来观测测试效果的数据。而训练集和评估集则牵涉到下面的知识了。

因为在实际的训练中,训练的结果对于训练集的拟合程度通常还是挺好的(初始条件敏感),但是对于训练集之外的数据的拟合程度通常就不那么令人满意了。因此我们通常并不会把所有的数据集都拿来训练,而是分出一部分来(这一部分不参加训练)对训练集生成的参数进行测试,相对客观的判断这些参数对训练集之外的数据的符合程度。这种思想就称为交叉验证(CrossValidation)
将数据集分成十分,轮流将其中9份作为训练数据,1份作为测试数据,进行试验。每次试验都会得出相应的正确率(或差错率)。10次的结果的正确率(或差错率)的平均值作为对算法精度的估计,一般还需要进行多次10折交叉验证(例如10次10折交叉验证),再求其均值,作为对算法准确性的估计。

之所以选择将数据集分为10份,是因为通过利用大量数据集、使用不同学习技术进行的大量试验,表明10折是获得最好误差估计的恰当选择,而且也有一些理论根据可以证明这一点。但这并非最终诊断,争议仍然存在。而且似乎5折或者20折与10折所得出的结果也相差无几。

留一验证方法;

留一法就是每次只留下一个样本做测试集,其它样本做训练集,如果有k个样本,则需要训练k次,测试k次。
留一发计算最繁琐,但样本利用率最高。适合于小样本的情况

针对时间序列问题的验证;

用于时间序列的嵌套交叉验证
1.预测后一半(Predict Second Half) 2.日前向链(Day Forward-Chaining)
多时序嵌套交叉验证
常规嵌套交叉验证和群体知情嵌套交叉验证。
对应时间序列的数据集如何做交叉验证?

绘制学习率曲线;

用于控制模型学习的进度
学习曲线: 画出不同训练集大小时训练集和交叉验证的准确率,可以看到模型在新数据上的表现,进而来判断模型是否方差偏高或偏差过高,以及增大训练集是否可以减小过拟合
参见:学习率曲线绘制

绘制验证曲线;

推荐绘制分数以评估模型
机器学习的学习曲线和验证曲线
模型评估和验证——过拟合、欠拟合、学习曲线、验证曲线

3. 嵌入式特征选择:

特征选择——嵌入式选择
嵌入式特征选择法使用机器学习模型进行特征选择。特征选择过程与学习器相关,特征选择过程与学习器训练过程融合,在学习器训练过程中自动进行特征选择。 自己理解: “在学习的过程中认识与发现”
这里是引用

Lasso回归;
Ridge回归;

过拟合
机器学习中正则化项L1和L2的直观理解

在这里插入图片描述

决策树;

基于树模型的特征选择法
决策树可用于特征选择,树节点的划分特征所组成的集合就是选择出的特征子集。
树模型即可用于分类问题,又可用于回归问题

4.模型对比:

模型的分类与对比
参数模型 vs 非参数模型:局部适用性vs全局普适性
数据模型 vs 算法模型:可解释性 vs 精确性
生成模型 vs 判别模型:联合分布 vs 条件分布

常用线性模型;

线性模型
其中线性有两重含义,一是自变量的线性,即自变量和因变量是一次函数关系,另一个是参数的线性,即因变量与模型的各个参数是一次函数关系,其中第二点最重要,当自变量不满足条件时,我们可以通过变量变换使其满足条件,而参数不满足线性条件时,往往不能通过变量变换解决(也有例外),因此我们将参数为线性的模型称为线性模型。
最小二乘法线性回归(Oridinary Least Squares, OLS)
岭回归(Ridge regression)
套索回归(Lasso)
Elastic Net
前向逐步回归
最小角度回归(Least Angle Regression, LARS)
局部加权线性回归(Locally Weighted Linear Regression, LWLR)
常用线性回归小结
控制预测(MFC)中常用线性模型
自回归模型(Auto-regressive Model)
线性差分方程
自回归滑动平均模型(auto-regressive moving average, ARMA)

常用非线性模型;

同理,因变量与各模型参数是非线性关系的模型为非线性模型。

非线性模型的形式多种多样, 依建立模型的方法不同可分为:①推理模型。根据具体学科理论揭示的变量间相互关系用数学分析的方法建立模型, 如Logistic模型等,这类模型具有一定的生物学基础,其参数具有确定的生物学意义。②经验模型。对某些变量无法推理方法得到或经推理得到但过于复杂的变量间关系,可利用适当的数学关系式直接拟合变量间关系,建立纯经验性模型,如奶牛泌乳曲线等,这类模型的参数多数没有直接的生物学意义, 使模型的应用受到一定的限制。
依描述变量间关系的常用数学函数形式分为:指数模型、对数模型、幂函数模型、Logistic模型、二次函数模型以及由此构成的复合模型等。
处理非线性模型首先是建立或选择适当的模型,然后是确定模型中所包含的参数, 其参数估计的基本原则仍是最小二乘估计,方法通常有三种:①变量变换法。通过某种数学转换将非线性模型化为线性模型,即“曲线改直”或利用线性多项式逼近,该法简单易行,具有一定的实用价值。②非线性回归法。根据最小二乘原则使误差平方和最小,对非线性模型直接求解,常用的是Gauss-Newton法及在此基础上改进的Marquardt法,可通过各种迭代法直接估计模型常数,这是处理非线性模型最为常用的方法。③直接优化法。直接利用非线性模型计算剩余平方和并以其最小为优化目标函数寻求最优回归系数

  1. 模型调参:
    贪心调参方法;
    网格调参方法;

网格搜索 调参数

贝叶斯调参方法;

自动贝叶斯调参

4.3 相关原理介绍与推荐
由于相关算法原理篇幅较长,本文推荐了一些博客与教材供初学者们进行学习。
4.3.1 线性回归模型
4.3.2 决策树模型
4.3.3 GBDT模型
4.3.4 XGBoost模型
4.3.5 LightGBM模型

4.3.6 推荐教材:
《机器学习》 https://book.douban.com/subject/26708119/ (https://book.douban.com/subject/26708119/)
《统计学习方法》 https://book.douban.com/subject/10590856/
(https://book.douban.com/subject/10590856/)
《Python大战机器学习》 https://book.douban.com/subject/26987890/
(https://book.douban.com/subject/26987890/)
《面向机器学习的特征工程》 https://book.douban.com/subject/26826639/
(https://book.douban.com/subject/26826639/)
《数据科学家访谈录》 https://book.douban.com/subject/30129410/
(https://book.douban.com/subject/30129410/)
《解释性机器学习》笔记(一):理解线性回归模型中的权重、特征和结果](https://blog.csdn.net/qq_34813925/article/details/104434832)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值