如何构建机器学习系统?

首先明确:

1.该问题是否为机器学习问题? – 是
2.该问题是机器学习哪方面的问题? – 监督学习、无监督学习
3.当拿到数据之后从下面两个角度思考问题:
1)从数据角度思考:
根据具备的数据看能够做监督学习or无监督学习or半监督学习
2)从业务角度思考:
根据业务部门指定的业务方向,整理数据,从而建模

特征工程

对特征处理
对数据的处理
数据+选择的算法==>模型
通过测试集测试模型,给定最终模型
如果有新数据,通过模型给出预测结果
在这里插入图片描述

当面临这么多的模型需要选择,我们如何选择适合问题的模型呢?

首先看看数据

在这里插入图片描述

再来看,下面哪一条曲线的拟合效果是最好的?

在这里插入图片描述

泛化(防火防盗防拟合)

模型具有好的泛化能力指的是:模型不但在训练数据集上表现得效果很好,对于新数据的适应能力也有很好的效果。
泛化能力的表现:过拟合欠拟合

一.过拟合

在这里插入图片描述
1.过拟合overfitting:模型在训练数据上表现良好,在未知数据或者测试集上表现差。
2.过拟合的出现原因:模型过于复杂,数据不纯,训练数据量太少
3.过拟合的出现场景:出现在模型训练的中后期
过拟合解决方法:
1.针对模型过域复杂的特性,增加正则罚项
2.重新清洗数据
3.增加训练数据量
4.增加正则罚项
5.dropout – 随机丢弃一些点(深度学习)

二.欠拟合

在这里插入图片描述
1.欠拟合underfitting:在训练数据和未知数据上表现都很差
2.欠拟合出现原因:模型过于简单
3.欠拟合出现的场景:模型训练初期
欠拟合解决方法:
1.增加其他特征项:因为特征项不够而导致欠拟合,可以添加其他特征来很好的解决
2.添加多项式特征:可以在线性模型中通过添加二次或三次项使得模型的泛化能力更强
3.减少正则罚项:正则化的目的是用来防止过拟合的,但是现在模型出现了欠拟合,需要减少正则化参数。

模型选择的 – 奥卡姆剃刀原则

给定两个具有相同泛化误差的模型,较简单的模型比较复杂的模型更可取。

奥卡姆剃刀原则是模型选择的基本而且重要的原则。

总结:

在这里插入图片描述

什么是正则化?

正则项
目的:为了降低模型的复杂度
有几个正则项
L1正则+lambda*|w|
L2正则+lambda*|w|**2(在损失项的平方)
在这里插入图片描述

正则化

经验风险较小的模型可能较复杂,这时正则化项的值会很大,正则化的作用就是选择经验风险与模型复杂度同时较小的模型。
正则化符合奥卡姆剃刀原理,在所有可能的模型中,能够很好的解释已知数据并且十分简单的模型才是最好的模型。从贝叶斯估计的角度看,正则化项对应于模型的先验概率,可以假设复杂的模型有较小的概率,简单的模型有较大的先验概率。

什么是交叉验证?

在机器学习中常用的精度测试方法,叫做交叉验证。它的目的是得到可靠稳定的模型,具体做法是拿出大部分数据进行建模,留小部分样本用刚刚简历的模型进行预测,并求出这小部分样本预测的误差,交叉验证在克服过拟合问题上非常有效。

一些常用的交叉验证方法:

1.简单交叉验证

简单交叉验证的方法就是,随机从最初的样本中选择部分,形成验证数据,而剩下的当作训练数据。一般来说,少于三分之一的数据被选作验证数据。

2.10折交叉验证

10折交叉验证是吧样本数据分成10份,轮流将其中9份做训练数据。将剩下的1份当测试数据,10次结果的均值作为对算法精度的估计,通常情况下为了提高精度,还需要做多次的10折交叉验证。
更进一步,还有K折交叉验证,10折交叉验证是它的特殊情况。K折交叉验证就是把样本分为K份,其中K-1份用来做训练建立模型,留剩下的一份来验证,交叉验证重复K次,每个子样本验证一次。

3.留一验证

留一验证只使用样本数据中的一项当作验证数据,而剩下的全作为训练数据,一直重复,直到所有的样本都作验证数据一次。可以看出留一验证实际上就是K折交叉验证,只不过这里的K有点特殊,K为样本数据个数。

总结为:

1.简单交叉验证:将数据集切分为:训练集和测试集=7:3 6:4 8:2

2.K则交叉验证:将数据集平均随机切分为K等分,将其中一份数据作为测试集,其余数据作为训练集,训练K个模型,得到平均准确率

3.留一验证:特殊的K则交叉验证

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值