最优化学习笔记(四)——最速下降法

一、最速下降法的理念

     最速下降法是梯度方法的一种实现,它的理念是在每次的迭代过程中,选取一个合适的步长αk,使得目标函数的值能够最大程度的减小。αk可以认为是函数ϕk(α)=f(x(k)αf(x(k)))的极小值点:

αk=argminf(x(k)αf(x(k))),α0

由梯度迭代公式可知: x(k+1)=x(k)αf(x(k)), 上式的解释是找到最优的迭代点 x(k+1), 使得函数 f(x)取得极小值时,求出步长 αk
     概述最速下降法的过程:在每一步的迭代中,从点 x(k)出发,沿着梯度的负方向(求极小值点)展开一维搜索,直到找到步长最优值,确定新的迭代点 x(k+1)最速下降法的相邻搜索方向都是正交的

二、最速下降法的两个命题和停止条件

2.1 最速下降法的两个命题

命题1 利用最速下降法搜索函数f:R2R的极小值点,迭代过程产生的序列为{x(k)}k=0, 那么,x(k+1)x(k)x(k+2)x(k+1)正交对所有k0都成立。

命题2 利用最速下降法搜索函数f:RnR的极小值点,迭代过程产生的序列为{x(k)}k=0, 如果 f(x(k))0, 那么f(x(k+1))<f(x(k))

     命题1说明在迭代过程中,没产生一个新点,对应的目标函数值都会下降。命题2说明了最速下降法的下降特性:只要f(x(k))0, 就有f(x(k+1))<f(x(k))。对于某个k, 如果f(x(k))=0,说明x(k)满足局部极小点的一阶必要条件,此时x(k+1)=x(k),这可以作为停止规则的基础。

2.2 几种停止规则

     在实际中,采用数值计算的方法很难恰好得到梯度为0的结果,因此以梯度为0作为停止规则很不恰当。以下, ϵ>0

1.|f(x(k+1))f(x(k))|<ϵ

2.||x(k+1)x(k)||<ϵ

3.|f(x(k+1))f(x(k))||f(x(k))|<ϵ

4.||x(k+1)x(k)||||x(k)||<ϵ

5.|f(x(k+1))f(x(k))|max{1,|f(x(k))|}<ϵ

6.||x(k+1)x(k)||max{1,||x(k)||}<ϵ

上边的3,4式为1,2式的相对值,而5,6式是为了避免3,4式中的分母过小进行的修改。

三、二次型中最速下降法的应用

     首先,二次型的目标函数为

f(x)=12xTQxbTx

其中, QbRn,xRn,故有:
f(x)=Qxb

令:
g(k)=f(x(k))=Qx(k)b

则,最速下降法的迭代公式:
x(k+1)=x(k)αkg(k)

其中,
αk=argminα0f(x(k)αg(k))ϕk(α)=f(x(k)αg(k))

当目标函数是二次型函数时,可以确定 x(k)处的步长 αk的解析式。当 g(k)=0时,迭代停止,当 g(k)0时,利用局部极小点的一阶必要条件可得:
ϕk(α)=(x(k)αg(k))TQ(g(k))bT(g(k))

ϕk(α)=0时, αg(k)TQg(k)=(x(k)TQbT)g(k),因为 Q对称, Q=QT,得:
x(k)TQbT=g(k)T

所以:
αk=g(k)Tg(k)g(k)TQg(k)

所以,目标函数为二次型函数时,最速下降法的迭代公式为:
x(k+1)=x(k)g(k)Tg(k)g(k)TQg(k)g(k)

其中,
g(k)=f(x(k))=Qx(k)b

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/576636.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于 win7 远程桌面的多用户问题

关于 win7 远程桌面的多用户问题 [转]系统是 64位WIN7 旗舰版 每当我用其它机器连WIN7的3389远程桌面时&#xff0c;WIN7那台机子就会退出到注销用户后的状态了&#xff0c;后来我新建了个用户&#xff0c;用不同用户登陆还是退出&#xff0c;也就是说不能同时2个人操作电脑&am…

ElasticSearch映射Mapping

1.1 什么是映射 (1) 映射(mapping): 定义index的元数据, 指定要索引并存储的文档的字段类型. 也就是说映射决定了Elasticsearch在建立倒排索引、进行检索时对文档采取的相关策略, 如数字类型、日期类型、文本类型等等. 需要注意的是: 检索时用到的分析策略, 要和建立索引时的分…

机器学习笔记(十)——Logistic Function AND Softmax Function

一、说明 在逻辑回归和一些机器学习算法中&#xff0c; Logistic函数和Softmax函数是常用到的&#xff0c;今天就先讨论下这两个函数。 二、Logistic Function Logistic function一般用于二分类问题&#xff0c;它的函数定义如下&#xff1a; f(x)11e−x(1)f(x) = \frac{1}{1…

2012开博

2012是一个新的开始&#xff0c;希望学习更多的新技术&#xff0c;结交更多的新朋友。也将自己的技术博客转到博客园来!转载于:https://www.cnblogs.com/yangjun1120/archive/2012/01/30/2332111.html

kibana客户端工具操作ElasticSearch(增删改查三)

之前一直我们讲的是添加文档和查看文档&#xff0c;下面我们看下怎么修改文档&#xff0c; 第一种方式PUT 覆盖原来的文档 修改文档&#xff08;覆盖原来的&#xff09;&#xff1a; PUT /lib/user/1 {"first_name":"Jane","last_name":"…

Word2Vec学习笔记(一)

目录 Word2Vec基本数学内容语言模型Hierarchical Softmax 模型Negative Sampling 模型 一、Word2Vec基本数学内容 1. Sigmod 函数 &absp;&absp;&absp;&absp;Sigmod函数通常在二分类中应用。它将样本映射后投影在[0, 1]范围内&#xff0c;对应样本所属的类的…

SQL Tuning Advisor简单使用

SQL Tuning Advision是Oracle提供的一个功能包&#xff0c;可以针对有性能问题的SQL给出优化建议。可以作为调优的辅助手段。 建立测试表和索引create table t_1 as select * from dba_objects;create table t_2 as select * from dba_tables;create index idx_t_2_ts on t_2(t…

Multi GET API介绍

#先添加几个文档 PUT /lib/user/1 {"first_name":"Jane","last_name":"Smith","age":36,"about":"I like to collect rock albums","interests":["music"] }PUT /lib/user/2 {&qu…

Word2Vec学习笔记(二)

二、语言模型 语言模型可以分为文法型模型和统计语言模型。在实际应用中语言识别、手写体文字识别、机器翻译、键盘输入、信息检索等研究领域都用到了语言模型。文法型语言模型是人工编制的语言学文法&#xff0c;文法规则来源于语言学家掌握的语言学知识和领域知识&#xff0c…

echo中使用逗号和句号的区别

echo中是可以用逗号来连接字符串的.经过测试.这样的连接字符串方式要比直接用点号要快. //PHP是先连接字符串再进行加法计算了.按照从左向右的方向进行的。//如果将一个字符串强制转换成一个数字.PHP会去搜索这个字符串的开头.如果开头是数字就转换.如果不是就直接返回0echo 51…

Multi GET  API

Multi GET API介绍 GET /lib/user/_mget {"docs":[{"_id":1},{"_type":"user","_id":2}] } #返回值 {"docs" : [{"_index" : "lib","_type" : "user","_id&qu…

Word2Vec学习笔记(三)

三、Hierarchical Softmax模型 3.1 词向量 词向量目前常用的有2种表示方法&#xff0c;One-hot representation 和 distributed representation. 词向量&#xff0c;顾名思义就是将一个词表示为向量的形式&#xff0c;一个词&#xff0c;怎么可以将其表现为向量呢&#xff1f;…

Thrift 教程 开发 笔记 原理 资料 使用 范例 示例 应用

在这里汇总一下&#xff1a;thrift版本差异和源码及jar包下载。文档&#xff0c;示例(脚本、代码、)&#xff0c;白皮书&#xff0c;常见问题。 有很内容是重复的&#xff0c;给位看官自行过滤。 英文资料 API 使用介绍 原理简介(推荐阅读) 和 简单范例 IBM developerWorks 详细…

Bulk API实现批量操作

Bulk 批量操作 &#xff08;1&#xff09; 比如&#xff0c;我这里&#xff0c;在$ES_HOME里&#xff0c;新建一文件&#xff0c;命名为requests。&#xff08;这里为什么命名为request&#xff0c;去看官网就是&#xff09;在Linux里&#xff0c;有无后缀没区别。 1 2 3 4 5…

Word2Vec学习笔记(三)续

三、&#xff08;续&#xff09;Skip-gram模型介绍 Skip-gram模型并不是和CBOW模型相反的&#xff0c;它们的目的都是计算出词的向量&#xff0c;只不过在作者的论文中给出的图看样子是反的而已。Skip-gram模型是用每个当前词去预测一定范围内除当前词之外前后的词。同样的&…

三省吾身

自尊心极强&#xff0c;极其自信又极其自卑极其理性又极其感性&#xff0c;平时把自卑隐藏在自信中&#xff0c;因为自卑和感性易冲动发火脾气暴躁&#xff0c;性格非常矛盾。知己知彼。 成熟包容宽恕平和气定神闲。 每日看此&#xff0c;三省吾身。 一定要宽容&#xff0c;如果…

我的博客开通了

一直都比较关注博客园&#xff0c;也一直很想写博客&#xff0c;最近几年发现自己做了很多项目&#xff0c;但好多东西没有很多的积累下来&#xff0c;每次都要从网上搜索别人的东西&#xff0c;感觉太失败&#xff01; 从今天开始&#xff0c;我也要做一个有故事的程序员&…

ElasticSearch关于映射mapping介绍

#首先我们还是先增加几个文档 PUT /myindex/article/1 {"post_date": "2020-03-14","title": "Java","content": "java is the best language","author_id": 119 }PUT /myindex/article/2 {"post…

最优化学习笔记(五)——牛顿法(多维数据)

在最优化学习系列中&#xff0c;第一次就说的是牛顿法&#xff0c;但是那是在一维搜索上的&#xff0c;它其实就是将函数f在x处利用泰勒公式展开&#xff0c;得到它的近似函数&#xff0c;进而求解最小值。本节内容主要说明牛顿法在多维数据上的迭代公式。最优化学习笔记中讲到…

ElasticSearch的Object数据类型

上一篇mapping文章我们知道数字类型和日期类型要精确查找&#xff0c;以及mapping的两个重要的作用。 所以创建索引的时候,是不是可以预先定义字段的类型以及相关属性&#xff0c;这样就能够把日期字段处理成日期&#xff0c;把数字字段处理成数字&#xff0c;把字符串字段处理…