【机器学习总结】线性回归

   线性回归是机器学习里面最常见的学习模型。

基本线性方程:

1.思想:
  用一个线性组合的方程去拟合数据,系数则可以告诉我们哪些特征有用,哪些没用。
2.基本形式:

微分形式: y=a1x1+a2x2+...+adxd+d

矩阵形式: y=WTX+b 。其中 W=(w1;w2;...;wd)

3.求解方法:
  我们假设线性方程为:
   f(x)=a1x1+a2x2+...+adxd+d=WTX t 为数据目标值
  这里我们使用最小二乘方法求系数W
Loss=ni=1(tif(xi))2

  然后我们目标就是让其最小 minLoss 函数,所以我们想到求导,让它最小。
  求导: dLossdw=0
  矩阵形式: W^=(W;b) , X=(X;1) (之所以加了1是为了考虑W中的b)。
E(x)=(tXW^)T(tXW^)

dE(x)dw=2XT(XW^t)

   如果X是个满秩的,那么我们就可以直接得出 W^=(XTX)1XTt
注:之所以要满秩是因为我们要求逆,但是如果不满秩,我们也可以引入二范式来使其满秩。

对数回归:

  之前我们看到的是最简单的线性方程来拟合,但是有的时候,数据并不呈现一个线性关系,那么应该怎么办呢,这里我们就考虑对数回归
  对数回归就是在线性回归的模型上面加一个非线性的映射:

y=ewTx+b

   在这里特别说明一下,虽然在这里已经看不出是一个线性的关系了,但是在我们取了对数以后,就可以发现还是一个 lnY X 的关系还是线性关系,所以对数回归还是归根到底是一个线性回归:
lnY=WTX+b
广义的模型:
Y=g1(WTX+b)

逻辑回归:

逻辑回归是线性回归扩展出来非常重要的一个模型算法。逻辑回归主要是用于分类问题。在这里,我们以二分数为主来讨论。
首先,我们先看一下逻辑回归的方程:

y=11+e(wTx+b)

这是,我们就有一个问题:为什么选softmax函数呢?
以下是我的个人理解:
在我们想用线性回归来分类的时候,我们最容易想到的当X是正类时,Y=1,当X是负类时,那么Y=0,这样其实是一个阶跃函数(sign函数这种,有点像感知机),但是这种函数有个很大的问题就是不连续,当其在X=0时,到底取什么值呢?所以这样就很不好处理,这时我们就需要一个连续型可以替代阶跃函数的函数,这样我们就想到了softmax函数。我们就可以根据函数的值来区分类别了。
第二个问题是,逻辑回归我们能否用概率论来解释它的物理意义呢?
我觉得是可以的,因为在逻辑函数我们可以看出它的值已经被限制在了0~1之间,而概率的要求也正好是0~1之间。(也许你觉得这样说有点牵强,但是我们当时选softmax时,其实就是为了让它有一种解释来帮助你分类,所以你才让输出的值是0~1。)
为什么会讨论是否能用概率论来解释呢,因为下面要用到概率论中一个重要的求解方法。这也是为了方便记住这种方法。
参数求解:
这里用到的是最大似然函数:(下面方程已经对似然函数取了对数)
L(w,b)=ln(11+e(wTx+b))

接下来就是用梯度下降或者最速下降法就可以求出最佳的参数。

线性判别模型:

线性判别模型的英文是Linear Discriminant Analysis,也叫LDA。
1.思想:
线性判别模型的思想很简单,就是将数据投射到一条线上,然后希望同类的距离尽量小,组间距离尽量大。
2.方法:
我们现在就是要找到这么一条线,达到之间我们希望的那样。所以我们现在就要寻找那根线。
这是,我们用一个指标:
J=||wTx0¯wTx1¯||22wT(σ0+σ1)w
J=wT(x0¯x1¯)(x0¯x1¯)TwwT(σ0+σ1)w
说明一下,这个 x¯ 表示组间的距离。 σ 表示组内方差。
我们现在写成矩阵的形式 。
类内散度矩阵:

Sw=σ0+σ1=(xx0¯)(xx0¯)T+(xx1¯)(xx1¯)T

类间散度矩阵:
Sb=(x0¯x1¯)(x0¯x1¯)T

现在我们重写
J=WTSbWWTSwW

我们为了让J最大,但是这个函数不好求呀,这个时候我们就求助于拉格朗日大神了!
我们假设 WTSwW=1 ,所以我们就可以把上面问题转化为下面形式:
maxWTSbW=λ(WTStW1)

对w求导:
SbW=λ(SwW)

接下来用特征值方程:
SbW=(x0¯x1¯)(x0¯x1¯)TW=(x0¯x1¯)λw

(这个解释是说 Sb 的方向始终为 x0¯x1¯ ,但是我不是很理解……)
最后我们就能写出W的方程:
W=S1w(x0¯x1¯)

我们也能扩展到LDA多分类问题
假定存在N个类,第i类表示为 mi ,全局散度矩阵:
St=Sb+Sw 一阶方差分析

=mi=0(xix¯)(xix¯)T

Sw=Ni=1Swi

Swi=xxi(xxi¯)(xxi¯)T

Sb=StSw=Ni=1mi(xi¯x¯)(xi¯x¯)T

目标: maxtr(wTSbW)tr(wTSwW)
W=S1wSb

3.LDA总结:
LDA不仅可以用于二分类,同样可以用于多分类问题,在多分类问题解出W时,通常维度小于原始的,所以也可以用于降维。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值