回溯线搜索 Backtracking line search
来源:互联网 发布:中文分词最大匹配算法 编辑:程序博客网 时间:2024/05/23 16:55
回溯线搜索 Backtracking line search
机器学习中很多数值优化算法都会用到线搜索(line search)。线搜索的目的是在搜索方向上找到是目标函数f(x)最小的点。然而,精确找到最小点比较耗时,由于搜索方向本来就是近似,所以用较小的代价找到最小点的近似就可以了。 Backtracking Line Search(BLS)就是这么一种线搜索算法。
BLS算法的思想是,在搜索方向上,先设置一个初始步长α0,如果步长太大,则缩减步长,知道合适为止。
上面的想法要解决两个问题:
1. 如何判断当前步长是否合适 (Armijo–Goldstein condition)
f(x+αp)≤f(x)+αcm
m=pT∇f(x)
其中,p是当前搜寻方向,α是步长,c是控制参数,需要根据情况人工核定。
从上式可以看出,当前点的斜率越小,f(x+αp)−f(x)的要求越小,步长就越小。对于一般的凸问题,搜寻点越接近最优点,原函数的斜率越较小,因此步长越小,这也是符合直觉的。
2. 如何则缩减步长
搜索步长的缩减通过τ参数来控制,主要通过人工核定,既αj=ταj−1
总结一下BLS算法的流程如下:
1. 设置初始步长α0
2. 判断f(x+αp)≤f(x)+αcm是否满足,如果满足,停止;否则3:
3. αj=ταj−1,重复2
阅读全文
0 0
- 回溯线搜索 Backtracking line search
- 线搜索(line search)方法
- BackTracking回溯
- 重新发现梯度下降法--backtracking line search
- Search line by line (按行搜索)
- LeetCode 回溯算法 backtracking
- 回溯法(Backtracking)
- 回溯法(Backtracking)
- 回溯(Backtracking)
- 深度搜索与回溯方法不同点 Difference between DFS and Backtracking
- backtracking 回溯法题目总结
- 回溯法概述—BackTracking
- (M)Backtracking:79. Word Search
- 回溯法(backtracking)解决平衡集合问题
- 回溯算法(BackTracking)--八皇后问题
- 回溯算法(BackTracking)--八皇后问题
- 回溯算法(Backtracking)说明与实例
- 排列组合问题的回溯(Backtracking) 思想总结
- 浅析Javascript匿名函数与自执行函数 (闭包)
- Spring MVC框架搭建扩展--多数据源配置(一)
- 判断链表是是否是回文
- POJ 2955 Brackets 【区间DP】
- js事件冒泡和事件捕获详解
- 回溯线搜索 Backtracking line search
- 定时器
- Laravel修改器取出原始值
- Hyperledger Fabric SDK 示例fabric-samples-《balance-transfer》之三《加入到Channel》
- string,stringBuilder,字符串的常用方法,键盘录入字符串,string的构造方法,string类的各种判断功能,string类的各种获取功能,string类的转换功能,切割方法
- QT实现CSDN上传资源管理助手Demo之(4)请求网络图片SVG并显示
- LCP
- Vue基础知识学习(一)
- Uniblocks Voxel Terrain我的世界地图生成原理