机器学习算法中经常碰到非线性优化问题,如 Sparse Filtering 算法,其主要工作在于求解一个非线性极小化问题.在具体实现中,大多调用的是成熟的软件包做支撑,其中最常用的一个算法是 L-BFGS.为了解这个算法的数学机理,这几天做了一些调研,现把学习过程中理解的一些东西整理出来. 目录链接 (1) 牛顿法 (2) 拟牛顿条件 (3) DFP 算法 (4) BFGS 算法 (5) L-BFGS 算法 作者: peghoty 出处: http://blog.csdn.net/itplus/…
一.梯度下降法 梯度:如果函数是一维的变量,则梯度就是导数的方向:      如果是大于一维的,梯度就是在这个点的法向量,并指向数值更高的等值线,这就是为什么求最小值的时候要用负梯度 梯度下降法(Gradient Descent) 梯度下降法是最早最简单,也是最为常用的最优化方法.梯度下降法实现简单,当目标函数是凸函数时,梯度下降法的解是全局解.一般情况下,其解不保证是全局最优解,梯度下降法的速度也未必是最快的.梯度下降法的优化思想是用当前位置负梯度方向作为搜索方向,因为该方向为当前位置的最快下…
拟牛顿法/Quasi-Newton,DFP算法/Davidon-Fletcher-Powell,及BFGS算法/Broyden-Fletcher-Goldfarb-Shanno 转载须注明出处:http://www.codelast.com/ 在最优化领域,有几个你绝对不能忽略的关键词:拟牛顿.DFP.BFGS.名字很怪,但是非常著名.下面会依次地说明它们分别“是什么”,“有什么用” 以及 “怎么来的”. 但是在进入正文之前,还是要先提到一个概念上的区别,否则将影响大家的理解:其实DFP算法.B…
目录 一.先定个小目标 二.层次分析法部分 2.1 思路总括 2.2 构造两两比较矩阵 2.3 权重计算方法 2.3.1 算术平均法求权重 2.3.2 几何平均法求权重 2.3.3 特征值法求权重 2.3.4 归一化处理过程 2.4 一致性检验 2.5 对一级指标求解 2.6 对二级指标求解 三.模糊综合评测法部分 3.1 整体思路阐述 3.2 模型的建立和求解 3.2.1 模型的建立 3.2.2 模型的举例求解 四.MATLAB代码 4.1 层次分析法-MATLAB代码 4.2 模糊综合评测法…
java科学计数法转换成普通计数法: String sjiachun = "12345E-10"; BigDecimal db = new BigDecimal(sjiachun); String ii = db.toPlainString(); ii的值为:0.0000012345 转自:http://blog.sina.com.cn/s/blog_6b0ad4a60101divy.html…
牛顿法 考虑如下无约束极小化问题: $$\min_{x} f(x)$$ 其中$x\in R^N$,并且假设$f(x)$为凸函数,二阶可微.当前点记为$x_k$,最优点记为$x^*$. 梯度下降法用的是一阶偏导,牛顿法用二阶偏导.以标量为例,在当前点进行泰勒二阶展开: $$\varphi(x)=f(x_k)+f'(x_k)(x-x_k)+\frac{1}{2}f''(x_k)(x-x_k)^2$$ 极小值点满足$\varphi'(x)=0$,求得: $$x_{k+1}=x_k-\frac{f'(x…
简介:最近在看逻辑回归算法,在算法构建模型的过程中需要对参数进行求解,采用的方法有梯度下降法和无约束项优化算法.之前对无约束项优化算法并不是很了解,于是在学习逻辑回归之前,先对无约束项优化算法中经典的算法学习了一下.下面将无约束项优化算法的细节进行描述.为了尊重别人的劳动成果,本文的出处是:http://blog.csdn.net/itplus/article/details/21896453 . 从这里我们可以看出:要想迭代出Xk+1,就只需要计算Dk+1即可.DFP算法是对Dk+1的一个近似…
一直记不住这些算法的推导,所以打算详细点写到博客中以后不记得就翻阅自己的笔记. 泰勒展开式 最初的泰勒展开式,若  在包含  的某开区间(a,b)内具有直到n+1阶的导数,则当x∈(a,b)时,有: 令可得到如下式子: 泰勒展开式,我的理解就有两个式子.上述的是当x是标量时的展开式,当x是多元时可以根据以下公式进行推导: 舍去二阶项以上的项可以得到: 参考文献: 1. http://baike.baidu.com/link?url=E-D1MzRCjDi8qrlh2Cn64fwtz703bg-h…
在<统计学习方法>这本书中,附录部分介绍了牛顿法在解决无约束优化问题中的应用和发展,强烈推荐一个优秀博客. https://blog.csdn.net/itplus/article/details/21896453…
一.牛顿法 对于优化函数\(f(x)\),在\(x_0\)处泰勒展开, \[f(x)=f(x_0)+f^{'}(x_0)(x-x_0)+o(\Delta x) \] 去其线性部分,忽略高阶无穷小,令\(f(x) = 0\)得: \[x=x_0-\frac{f(x_0)}{f^{'}(x_0)} \] 得牛顿法迭代公式: \[x^{k+1}=x^k-\frac{f(x^k)}{f^{'}(x^k)} \] 对于最优化问题 令导数等于零,得最优解,所以迭代公式为 \[x^{k+1}=x^k-\fra…