机器学习笔记一:线性回归

“回归”一词的来历:

  原本是用来根据双亲的身高预测其一下代的身高,如果双亲高度高于平均值,其子女身高也倾向于比平均值高,但低于双亲身高。而双亲身高低于平均值的,子女身高倾向于比均值低,但是高于双亲身高。 预测值的两类都倾向于回归到均值,而不是与父母身高相同。Galton在多项研究中都注意到了这个现象。后来用这种方式来寻找一堆测量数据点的数学关系,而不是均值回归,但这种方法仍被称为回归。虽然这个单词与数值预测没有关系。

线性回归:

  简单的理解就是寻找一条直线或曲线来拟合数据点。
  假设我们有一个数据集 D={(x1,y1),(x2,y2)...(xm,ym)} (m =样本数量), xi,yi 是数据集中第 i 样本。x是该样本的特征集 x=(x1,x2...xn) (n=) xRn ,y是该样本的值 yR
那么用来进行学习的假设函数:

       f(x)=wTx+b=w1x1+w2x2...+wnxn+b

  (在ANA的机器学习课程里直接用 θ 来表示参数 w,b , θn+1 : f(x)=θ0+θ1x+θ2θn=θTx )*

  接下来寻找最佳拟合线:(调参)
  首先,评估一个模型好坏,要先看预测值 f(x) 与真实值 y 之间差,误差越小模型预测准确度越高。线性回归里,即数据点到拟合线距离和最小。一般用SSER2score来评估线性回归模型的表现。由此得到代价函数,而寻找最优拟合线的过程即 minJ(θ) .
  
       

J(θ)=1mi=1n(f(xi)yi)2

  
   在ANA的课程里,采用了梯度下降法来寻找最优参数解。
  算法先要初使化赋值如图红圈位置,我们的目的是使其下降到低部最低值。通过对代价函数求导的方式来确定移动的方向,这里切线的斜率就是这个点的导数,而下降多少用 α 来控制, α 称为learning rate。如果 α 过大,可能会错过最低值而无法收敛。如果过小,过程会很慢。下降的过程重复下列公式直到收敛到低部某个最小值。在更新 θ 时,需要同步更新所有 θ 值。
  
        θj=θjαθjJ(θ0,θ1)(j:
       
   图片来自cousera上斯坦福机器学习课程
          (图片和公式来自cousera上斯坦福机器学习课程)

注:由图可知,不同初始点下降的最终位置也不同,这代表梯度下降有可能是局部最小值而不是全局。

  梯度下降应用到线性回归上,代入公式:

   

{ θ0=θ0α1mi=1m(fθ(xi)yi)
 
θ1=θ1α1mi=1m(fθ(xi)yi)xi }

 这里分开了 θ0θ1 ,第二项乘 xi 是求偏导的结果。因为 J 本身是一个 二次凸函数,结果最终会收敛于全局最低点。(注:需补知识点:凸函数) 
 以下是来自c站ANA课程的对J(θ)单个样本的求导过程。

单个例子

 
 凸函数:对区间[a,b]上定义的函数,如果它对区间 的任意两点 x1,x2 均满有 f(x1+x22)f(x1)+f(x2)2 , 则称 f 为区间[a,b]上的凸函数。对实数集上的函数,可通过二阶求导来判断:若结果在区间上非负,则为凸函数,为0则为严格凸函数。(引自周志华《机器学习》)


另一种最小化θor(w,b)的方法叫最小二乘法(不仅限于线性回归)。(这部分笔记是汇总优达课程和机器学习书)

  求解

minE(w,b)=i=1m(yif(x)i)2=i=1m(yiwxib)2

  如果用向量和矩阵分别表示参数和数据集,方程可表示为:
  
       Ew^=(yXw^)T(yXw^)
  
  对 w^ 求导为零后可得:
  
       w^=(XTX)1XTy
  
  

相关知识点:

SSE=mi=1(f(x)y)2

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值