《机器学习实战》笔记(第二部分 利用回归预测数值型数据)

采用书籍《机器学习实战》,人民邮电出版社,2013年6月第1版。在线资料:英文资料,中文资料,后者中可以找到源代码和勘误。关于机器学习实战的博客已经有很多,所以本博文仅将书中的知识点进行整理和扩展。

第二部分 利用回归预测数值型数据

第8章 预测数值型数据:回归

  1. 分类预测的目标变量是标称型数据,而本章的回归预测的目标变量是连续型数据。回归的目的是预测数值型的目标值,方法是训练(拟合)已有数据找到最佳回归系数。一旦有了回归系数,就可以对其他输入进行预测了。
  2. 回归分为线性回归和非线性回归。本章只介绍线性回归,非线性回归不做讨论。
  3. 优点:结果易于理解,计算上不复杂;缺点:对非线性的数据拟合不好;适用数据类型:数值型和标称型数据,标称型数据需要转成二值型数据。
  4. 线性回归的目标:最小化误差平方和,误差是指用回归系数预测的y值与真实y值之间的差值。误差平方和的普通表示和矩阵表示:
    i=1m(xTiθyi)2,(XθY)T(XθY) ∑ i = 1 m ( x i T θ − y i ) 2 , ( X θ − Y ) T ( X θ − Y )
    对w求导,得到 XT(YXw) X T ( Y − X w ) ,令其等于0,解出 θ=(XTX)1XTy θ = ( X T X ) − 1 X T y ,此时的解w表示为当前可以估计出的最优解。公示中包含对矩阵求逆,因此这个方程只在逆矩阵存在的时候使用,不存在的话就不能用这种方法。
  5. 线性回归的一个问题是有可能出现欠拟合现象,因为它求的是具有最小均分误差的无偏估计。如果模型欠拟合将不能取得最好的预测效果,有些方法允许在估计中引入一些偏差,从而降低预测的均方误差。其中的一个方法叫做局部加权线性回归(Locally Weighted Linear Regression):给待预测点附近的每个点赋予一定的权重,在这个子集上基于最小均方差进行普通的回归。局部线性回归增加了计算量,对每个点进行预测时都必须使用整个数据集拟合一次回归系数,提高了拟合程度但降低了效率。
  6. LWLR使用“核”来对附近的点赋予更高的权重,核的类型可以自由选择,最常用的核就是高斯核:
    W(i,i)=exp(|x(i)x|2k2) W ( i , i ) = e x p ( | x ( i ) − x | − 2 k 2 )
    W是只有对角元素的权重矩阵。x与训练数据x(i)距离越小,权重W(i,i)将会越大;需要人工指定的参数k也决定了权重大小:k越小,权重越小。
  7. 缩减系数来理解数据:如果特征比样本点还多,说明输入数据的矩阵X不是满秩矩阵。岭回归(Ridge regression)用来解决这个问题,也叫做线性回归的L2正则化。它在一般线性回归的损失函数上增加了一个L2正则化的惩罚项( ||θ||2 | | θ | | 2 表示系数向量中每个元素的平方和再求平方根):
    J(θ)=12(XθY)T(XθY)+12λ||θ||22 J ( θ ) = 1 2 ( X θ − Y ) T ( X θ − Y ) + 1 2 λ | | θ | | 2 2
    求解回归系数:
    θ=(XTX+αE)1XTY θ = ( X T X + α E ) − 1 X T Y
    Ridge回归在不抛弃任何一个特征的情况下,缩减了回归系数,使得模型相对而言比较的稳定,但和Lasso回归比,这会使得模型的特征留的特别多,模型解释性差。为了使用岭回归和缩减技术,需要对数据特征进行归一化处理
  8. 缩减系数的另一种方法:lasso回归,也叫做线性回归的L1正则化。它在一般线性回归损失函数上增加了一个L1正则化的项( ||θ||1 | | θ | | 1 表示系数向量中每个元素的绝对值之和),L1正则化的项有一个常数系数α来调节损失函数的均方差项和正则化项的权重:
    J(θ)=12(XθY)T(XθY)+α||θ||1 J ( θ ) = 1 2 ( X θ − Y ) T ( X θ − Y ) + α | | θ | | 1
    Lasso回归可以使得一些特征的系数变小,甚至还是一些绝对值较小的系数直接变为0,增强模型的泛化能力。前向逐步回归算法可以得到与lasso差不多的效果,而且更加简单:贪心算法,每一步都尽可能减小误差,帮助人们理解现有的模型。
  9. 还有其他缩减方法,如Lar,PCA回归等等。使用缩减方法使得模型增加了偏差(bias),但减小了模型的方差(variance)。方差衡量了模型的复杂度,训练样本数据返回模型的变化程度(比如线性回归,用数据集的不同样本进行拟合得到不同的回归系数,系数间的差异大小也就是模型方差大小的反映)。参考1.机器学习中的偏差(bias)和方差(variance) 参考2.偏差和方差有什么区别?
  10. 小结:回归是统计学中最有力的工具之一。在回归方程里,求最佳回归系数的方法是最小化误差平方和。岭回归是缩减系数的一种方法,对回归系数进行了限制;lasso也是一种很好的缩减发,虽然难以求解,但可以使用见百年的逐步线性回归方法求得近似结果。

第9章 树回归

  1. 回归树用的是CART(Classification And Regression Tree)算法,分类回归树,该算法不仅能进行回归,也能进行分类。生活中很多问题都是非线性的,不可能使用全局线性模型。一种可行的方法是将数据集切分成很多份易建模的数据,然后利用线性回归技术建模。如果首次切分后仍难以拟合线性模型就继续切分,在这种切分模式下,树结构和回归法相当有用。
  2. 之前介绍的决策树构建算法是ID3。ID3每次选取当前最佳的特征来分割数据,并按照该特征的所有可能来切分。这种切分过于迅速,CART是二元切分法,它易于对树构建过程进行调整以处理连续性特征。ID3不能处理连续性特征,除非进行离散化处理,而二元切分则易于处理连续型数据。
  3. 优点:可以对复杂和非线性的数据建模;缺点:结果不易理解;适用数据类型:数值型和标称型数据。
  4. 树回归的一般方法:
    (1)收集数据:采用任意方法收集数据
    (2)准备数据:需要数值型的数据,标称型数据应该映射成二值型数据
    (3)分析数据:会出数据的二位可视化显示结果,以字典方式生成树
    (4)训练算法:大部分时间都花费在姐也点树模型的构建上
    (5)测试算法:使用测试数据上的R2值来分析模型的效果
    (6)使用算法:使用训练出的树做预测,预测结果还可以用来做很多事情
  5. CART可以构建两种数:一种是回归树,每个叶节点包含单个值;第二种是模型书,每个叶节点包含一个线性方程(分段线性函数),模型树由多个线性片段组成。
  6. 一棵树如果节点过多,表明该模型可能对数据进行了“过拟合”。通过降低决策树的复杂度来避免过拟合的过程称为剪枝(pruning)。树剪枝技术可以防止树的过拟合:预剪枝和后剪枝。
  7. 小结:对于非线性关系,可以使用树来对预测值分段,包括分段常数和分段直线。叶节点使用的模型是分段常数则成为回归树,叶节点使用的模型是线性回归方程则称为模型数。CART算法可以用于构建二元树并处理离散型或连续性数据。树回归学习不深,参考其他博客吧,尴尬

参考资料:

  1. 线性回归原理小结
  2. 机器学习中的偏差(bias)和方差(variance)
  3. 偏差和方差有什么区别?
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值