无约束极值、线性分类器和线性回归基础

原创 2016年05月30日 10:12:09

总结无约束极值的基本内容以及线性分类器和回归的基础知识,包含梯度下降

使用梯度法解决无约束极值问题

相比于约束极值问题,无约束极值问题去掉了约束,因此表述方式非常简单:

minf(X),XEn(1)

现假设f(X)有一阶连续偏导,极小值点为XX(k)为第k次接近。在X(k)点沿着方向P(k)做射线,有:

X(k+1)=X(k)+λP(k),(λ0)(2)

对上面式子进行泰勒展开:

f(X(k+1))=f(X(k)+λP(k))=f(X(k))+λf(X(k))TP(k)+o(λ)(3)

limλ0o(λ)λ=0

只要有

f(X(k))TP(k)<0

即可有

f(X(k)+λP(k))<f(X(k))

f(X(k))TP(k)=f(X(k))P(k)cosθ

θ为180°的时候,上式取最小值,这说明负梯度方向函数下降最快。

计算过程大体如下:

X0开始,如果f(X(0))2<ε,退出。
否则X(1)=X(0)λ0f(X(0))

这里会有λ的选择问题。如果λ具有二阶导数,那么可以对f(X(k)λf(X(k))进行泰勒展开:

f(X(k)λf(X(k))f(X(k)f(X(k))Tλf(X(k))+12λf(X(k))TH(X(k))λf(X(k))(4)

λ求导数,并令其为0,可以得到:

λk=f(X(k))Tf(X(k))f(X(k))TH(X(k))f(X(k))(5)

其中:

H(X)=2f(X)x21...2f(X)xnx1.........2f(X)x1xn...2f(X)x2n(6)

线性分类器

对于一个线性分类器,假设数据集均可正确分类,那么我们只需找到一个分类超平面,使得所有的错分点到分类超平面的距离最短即可。

我们假设分类超平面的公式如下:

g(x)=ωTx=0(7)

那么点到直线的距离可以用ωTx来表示。现在我们可以构建一个无约束极值问题,并使用梯度下降法来寻找分类超平面的问题。

代价函数定义为:

J(ω)=xY(δxωTx)(8)

其中Y代表分类错误集,δx定义为:xω1,δx=1;xω2,δx=1ωx>0,xω1

因此代价函数即是保证每项因子为正的情况下最小化各个错分类的点到分类超平面的距离。

这里我们使用梯度下降法来计算最优的ω,即:

ω(t+1)=ω(t)ρtJ(ω)ωω=ω(t)(9)

其中

J(ω)ω=xYδxx(10)

最小二乘法–误差平方和估计

同样考虑上述分类问题,如果类不是线性可分的情况下,那么可以使用最小二乘法来解决问题,使期望值和输出值之间的误差平方和达到最小,从而构建这么一个最优分类器。其中损失函数定义如下:

J(ω)=i=1N(yiωTix)2i=1N(e2i)(11)

J(ω)ω=0,我们可以得到:

i=1Nxi(yixtiω)=0(i=1Nxixti)ω=i=1N(xiyi)(11)

X=x11...xN1.........x1L...xNLY=y1...yN

那么我们可以得到下列公式:

(XTX)ω^=XTYω^=(XTX)1XTY(12)

上述最小二乘内容其实可以通用于分类和回归。也就是Y不同而已。

随机梯度下降

在实际使用中(例如Spark等集群计算中),对于回归等的计算过程仍然使用梯度下降法进行计算,其原因是求(XTX)1的时候很有可能矩阵的逆不存在,而使用伪逆进行运算的话如果矩阵奇异,那么结果十分不可信,会得到错误的结论(ELM极限学习机就是一个非常现实的例子)。但是在Spark中使用了随机梯度下降法,每次并不需要将整个测试集带入来求得ω,而是随机选取一个点进行相应梯度的下降。

通过上述公式9,并将J(ω)替换为最小二乘法中的损失函数,我们可以得到如下内容:

ω(t+1)=ω(t)i=1Nρxi(yixtiω)(13)

也就是说,调整权值使用了所有测试集中的点。

随机梯度下降就是仅仅使用了随机的一个点进行权值的调整。

版权声明:写着玩儿,有任何问题希望能够交流

无约束问题的极值条件

有时候,我们希望根据一定的条件找到优化问题的极值点;另外一些时候,我们得到若干候选解,希望判断候选解中哪些是真正的极值点。这其中涉及非线性规划的极值条件问题。所谓非线性规划的极值条件,是指非线性规划模...
  • u014170677
  • u014170677
  • 2014年03月25日 18:37
  • 1272

[CO] 无约束极值问题的解法

华电北风吹 最后修改日期 2015/11/7无约束极值问题可以表述为 minf(X),X∈Rnmin f(X), X \in R^n 对于这类问题的求解一般要用到迭代法。迭代法可分为两大类。一类是...
  • zhangzhengyi03539
  • zhangzhengyi03539
  • 2015年11月07日 20:57
  • 690

MATLAB学习笔记06——无约束一维极值问题(三)优化工具箱及工具箱函数fminbnd的改进

利用工具箱求解 一、fminbnd函数 fminbnd函数用法 [x,fval,exitflag,output]=fminbnd(fun,x1,x2,option); x:极小值点,fval:...
  • u014798883
  • u014798883
  • 2016年08月22日 14:46
  • 644

MATLAB学习笔记03——无约束一维极值问题(一)进退法和黄金分割法

无约束一维极值问题求解时一般采用一维搜索法,,其中方法包括多种,线性搜索:黄金分割、斐波那契法、牛顿法等,非线性包括抛物线法和三次插值法。 进退法是一种缩小极值区间的算法,算出的结果是一个包含极值的...
  • u014798883
  • u014798883
  • 2016年08月20日 20:07
  • 890

(理解)线性回归, 逻辑回归和线性分类器,Softmax回归。

(理解)线性回归, 逻辑回归和线性分类器,Softmax回归。
  • tsq292978891
  • tsq292978891
  • 2017年06月26日 21:01
  • 464

拉格朗日乘数法解带约束的极值问题

拉格朗日乘数法是用来求条件极值的,极值问题有两类,其一,求函数在给定区间上的极值,对自变量 没有其它要求,这种极值称为无条件极值。其二,对自变量有一些附加的约束条件限制下的极值,称为 条件极值。例...
  • PeterZhuGe
  • PeterZhuGe
  • 2016年03月12日 22:35
  • 1438

【机器学习详解】解无约束优化问题:梯度下降、牛顿法、拟牛顿法

无约束优化问题是机器学习中最普遍、最简单的优化问题。 x∗=minx f(x),x∈Rnx^*=min_{x}\ f(x),x\in R^n1.梯度下降梯度下降是最简单的迭代优化算法,每一次迭代需求...
  • luoshixian099
  • luoshixian099
  • 2016年07月06日 20:58
  • 5817

线性回归, 逻辑回归和线性分类器

本文系转载,原文地址:http://blog.csdn.net/weixin_35653315/article/details/54599771  线性回归, Linear Regressi...
  • aaa111
  • aaa111
  • 2017年09月01日 18:02
  • 377

从简单的线性回归入门机器学习

  虽然本文从一开始就限定了机器学习的方法——线性回归,但是在大多数情况下,解决问题的主要难点在于**寻找合适的机器学习方法**上。而这方面需要长期的积累,所以显然不是本文要讲的内...
  • hustqb
  • hustqb
  • 2017年10月10日 15:52
  • 456

MATLAB 无约束一维极值问题

无约束一维极值问题   极值问题表达式:min f(x)  x,x[ x1 x2];   一维极值的搜索方式包括线性搜索和非线性搜索,线性搜索包含黄金分割法、斐波那契法和牛顿法,非线性方法包含...
  • qq_18343569
  • qq_18343569
  • 2015年08月01日 15:19
  • 346
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:无约束极值、线性分类器和线性回归基础
举报原因:
原因补充:

(最多只允许输入30个字)