4_单机优化(确定性算法,优化框架)

news2024/10/6 10:37:06

优化框架

  • 机器学习的优化框架
    • 正则化经验风险最小化
    • 优化算法的收敛速率
    • 假设条件
      • 凸函数定义
      • 强凸函数定义
      • 光滑函数定义
  • 优化算法的分类

机器学习的优化框架

正则化经验风险最小化

有监督的机器学习问题:

假设输入输出数据 S n = { ( x i , y i ) ; i = 1 , . . . , n } S_n = \left\{(x_i, y_i); i = 1, ..., n\right\} Sn={(xi,yi);i=1,...,n} 是依据输入输出空间 X × Y X \times Y X×Y 上的真实分布 P x , y P_{x,y} Px,y 独立同分布地随机生成的。

学习的目标:找到输入输出之间的函数映射关系,即预测模型 g ( ⋅ ; w ) g(· ; w) g(⋅;w) ,其中w是模型g的参数。
为方便叙述,有时会把参数w所对应的预测模型简称为模型w。

对于新的输入x,希望所习得的模型g能够给出足够接近真实输出y的预测结果 g ( x ; w ) g(x; w) g(x;w)
预测的好坏:用损失函数 l ( w ; x , y ) l(w ; x,y) l(w;x,y) 来衡量。

对于真实分布 P x , y P_{x,y} Px,y未知,我们依据训练数据 S n S_n Sn来学习预测模型g。 假设训练过程遵循正则化经验风险最小化原则,也就是,我们希望预测模型g在训练数据上的平均损失函数值(即经验风险)尽可能小;同时,我们对模型g的复杂度进行惩罚,防止过拟合。
正则化经验风险最小化(R-ERM)问题的目标函数可以表达如下:
l ^ n ( w ) = 1 n ∑ i = 1 n l ( w ; x i , y i ) + λ R ( w ) \hat{l}_n(w) = \frac{1}{n} \sum_{i=1}^{n}l(w;x_i,y_i)+\lambda R(w) l^n(w)=n1i=1nl(w;xi,yi)+λR(w)
其中, R ( ⋅ ) R(·) R()是对于模型w的正则项(比如 L 2 L_2 L2正则 R ( w ) = ∣ ∣ w ∣ ∣ 2 2 R(w)=||w||_{2}^{2} R(w)=∣∣w22

由于在优化算法的运行过程中,训练数据已经生成并保持固定,为了讨论方便且在不影响严格性的情形下,我们将上述R-ERM目标函数关于训练数据的符号进行简化,如下:
f ( w ) = 1 n ∑ i = 1 n f i ( w ) f(w) = \frac{1}{n} \sum_{i=1}^{n}f_i(w) f(w)=n1i=1nfi(w)
其中, f i ( w ) = l ( w ; x i , y i ) + λ R ( w ) f_i(w) = l(w;x_i,y_i)+\lambda R(w) fi(w)=l(w;xi,yi)+λR(w) 是模型w在第i各训练样本 ( x i , y i ) (x_i, y_i) (xi,yi)上的正则损失函数。不同的优化算法采用不同的方法对上述目标函数进行优化,以寻找最优的预测模型。

看似殊途同归,但实践中的性能和效果可能有很大差别。其中,最主要的是优化算法的收敛性收敛速率

优化算法的收敛速率

假设优化算法在其结束时的第T步迭代中输出的模型是 w T w_T wT,R-ERM问题的最优模型为 w ∗ = arg ⁡ min ⁡ w f ( w ) w^*=\arg \min_wf(w) w=argminwf(w)
一个有效的的优化算法会随着迭代的进行使输出的模型 w T w_T wT越来越接近于最优模型 w ∗ w^* w
二者的接近程度通常用它们在参数空间中的距离或者它们对应的正则化经验风险的差值来衡量,即
E = ∣ ∣ w T − w ∗ ∣ ∣ 2 ⩽ ε ( T ) E =||w_T-w^*||^2 \leqslant \varepsilon (T) E=∣∣wTw2ε(T) 或者 E f ( w T ) − f ( w ∗ ) ⩽ ε ( T ) Ef(w_T) - f(w^*) \leqslant \varepsilon (T) Ef(wT)f(w)ε(T)

如果 ε ( T ) → 0 \varepsilon (T)\rightarrow0 ε(T)0,那么优化算法是收敛的。对于收敛的优化算法,它们的收敛速率可能并不相同。通常,用 log ⁡ ε ( T ) \log \varepsilon (T) logε(T) 的衰减速率来定义优化算法的收敛速率:

  1. 如果 log ⁡ ε ( T ) \log \varepsilon (T) logε(T)与-T同阶,称该算法具有线性收敛速率;
  2. 如果 log ⁡ ε ( T ) \log \varepsilon (T) logε(T)比-T衰减速度慢,称该算法具有次线性收敛速率;
  3. 如果 log ⁡ ε ( T ) \log \varepsilon (T) logε(T)比-T衰减速度快,称该算法具有超线性收敛速率;
  4. 如果 log ⁡ log ⁡ ε ( T ) \log\log \varepsilon (T) loglogε(T)与-T同阶,称该算法具有二阶收敛速率。

然而,正则化风险最小化的优化算法并不一定总是收敛的,需要目标函数具有相对良好的性质,为此要引入一些基本的假设条件。

假设条件

目前大多数关于优化算法的收敛性质都需要依赖目标函数具有某些良好的数学属性,比如凸性和光滑性。
凸性:刻画的是函数的一种几何性质:直观上,凸性要求函数在自变量的任何取值处的切线都在函数曲面下方。
光滑性:刻画了函数变化的缓急程度。直观上,如果自变量的微小变化只会引起函数值的微小变化,则称这个函数是光滑的。对于可导和不可导函数,这个直观性质有不同的数学定义。对于不可导函数,通常用Lipschitz性质来描述光滑性。

凸函数定义

考虑实值函数 f : R d → R f: R^d\rightarrow R f:RdR,如果对任意自变量w, v ∈ R d v \in R^d vRd都有下面不等式成立:
f ( w ) − f ( v ) ⩾ ▽ f ( v ) T ( w − v ) f(w) -f(v) \geqslant \triangledown f(v)^T(w-v) f(w)f(v)f(v)T(wv)
则称函数f是凸的。
凸性会给优化带来很大的方便:凸函数的任何一个局部极小值都是全局最优解。

强凸函数定义

考虑实值函数 f : R d → R f: R^d\rightarrow R f:RdR R d R^d Rd上的模 || · ||,如果对任意自变量w, v ∈ R d v \in R^d vRd都有下面不等式成立:
f ( w ) − f ( v ) ⩾ ▽ f ( v ) T ( w − v ) + α 2 ∣ ∣ w − v ∣ ∣ 2 f(w) -f(v) \geqslant \triangledown f(v)^T(w-v)+ \frac{\alpha }{2}||w-v||^2 f(w)f(v)f(v)T(wv)+2α∣∣wv2
则称函数 f f f关于模 || · || 是 α − \alpha- α 强凸的。
函数 f f f α − \alpha- α 强凸的当且仅当 f − α 2 ∣ ∣ ⋅ ∣ ∣ 2 f-\frac{\alpha }{2}||·||^2 f2α∣∣2是凸的。
在这里插入图片描述

光滑函数定义

考虑实值函数 f : R d → R f: R^d\rightarrow R f:RdR R d R^d Rd上的模 || · ||,如果存在常数 β > 0 \beta >0 β>0,对任意自变量w, v ∈ R d v \in R^d vRd都有下面不等式成立:
f ( w ) − f ( v ) ⩾ ▽ f ( v ) T ( w − v ) + β 2 ∣ ∣ w − v ∣ ∣ 2 f(w) -f(v) \geqslant \triangledown f(v)^T(w-v)+ \frac{\beta }{2}||w-v||^2 f(w)f(v)f(v)T(wv)+2β∣∣wv2
则称函数 f f f关于模 || · || 是 β − \beta- β 光滑的。

凸函数 f f f β − \beta- β 光滑的充分必要条件为其导数 ▽ f \triangledown f f β − L i p s c h i t z \beta- Lipschitz βLipschitz 连续的。
所以, β − \beta- β光滑的函数的光滑性质比Lipschitz联系的函数的光滑性质要更好。

优化算法的分类

随着机器学习问题中数据规模不断增大,优化问题的复杂度不断增高,越来越多的优化算法发展出随机版本和并行化版本。
为更好地对众多优化算法进行分析,对其进行如下分类:

  • 依据是否对数据或者变量的维度进行了随机采样,把优化算法分为确定性算法和随机算法;
  • 依据算法在优化过程中所利用的是一阶导数信息还是二阶导数信息,把优化算法分为一阶方法和二阶方法;
  • 依据优化算法是在原问题空间还是在对偶空间进行优化,把优化算法分为原始方法和对偶方法。
  • 在这里插入图片描述

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

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

相关文章

C++与C语言中的字符串

目录 1、关于c语言中的字符串 (1)c语言中字符串与字符指针 (2)字符串结尾 2、关于c中的字符串string (1)从本质上了解string (2)c中的字符串转换与关联 (3&#x…

【MySQL入门指北】MySQL备份及恢复

MySQL备份及恢复 文章目录MySQL备份及恢复1.Percona 介绍2.安装Percona 需要的 MySQL 包3.安装percona-xtrabackup4.完全备份流程5.完全恢复流程6.增量备份流程7.差异备份8.差异恢复流程9.记录的导入和导出10.mysqldumpbinlog11.MySQL恢复数据12.二进制日志恢复13.误删除库的问…

基于51单片机的室内温度可燃气体检测报警系统Proteus仿真

资料编号:133 下面是相关功能视频演示: 133-基于51单片机的室内温度可燃气体检测报警系统Proteus仿真(源码仿真全套资料)功能介绍: 采用51单片机作为主控,LCD1602显示当前温度和可燃气体浓度,…

Netty源码阅读(1)之——客户端源码梗概

目录 准备 开始 NioSocketChannel 的初始化过程 指定 初始化 关于unsafe属性: 关于pipeline的初始化 小结 EventLoopGroup初始化 小结 channel的注册过程 handler的注册过程 客户端连接 总结 准备 源码阅读基于4.1.84.Final版本。从github下载netty项目…

WordPress设置浏览器切换标签网站动态标题

我们在逛别人网站的时候,经常看到,有些网站当我们离开该页面浏览其他页面的时候,离开的页面标题上会显示比如:“你别走吖 Σ(っ Д ;)っ”这样的字样,当我们点回来的时候页面上面的标题又变成了“你又回来啦&#xff0…

[附源码]计算机毕业设计JAVAjsp学生档案管理系统

[附源码]计算机毕业设计JAVAjsp学生档案管理系统 项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM myb…

前端基础向--从项目入手封装公共组件

本文就从 “详情卡片” 业务组件的封装的几个阶段来说明我在编写公共组件的设计思路。 1. 阶段一:基础需求 假设我们现在有这样一个需求:需要满足显示产品的详细信息;需要可以根据不同分辨率适配不同的显示方式(2列,…

【Linux】进程通信 | 管道

今天让我们来认识如何使用管道来进行进程间通信 文章目录1.何为管道?1.1 管道是进程间通信的一种方式1.2 进程通信1.3 管道分类2.匿名管道2.0 康康源码2.1 创建2.2 父子通信完整代码2.3 等待写入等待读取等待源码中的体现2.4 控制多个子进程2.5 命令行 |3.命名管道3…

linux无界面手敲命令笔记

0 Ubuntu相关命令简介 1. 文件及目录操作命令 pwd:显示用户当前所处的目录 ls:列出目录下的文件清单 cd:改变当前目录cd … 返回上一级目cd / 进入根目录不加参数或参数为“~”,默认切换到用户主目录 mkdir:建立目录 …

Ant Design表单之labelCol 和wrapperCol的实际开发笔记

目录 前言 一、labelCol和wrapperCol是什么 二、布局的栅格化 1.布局的栅格化系统的工作原理 三、栅格常用的属性 1.左右偏移 2.区块间隔 3.栅格排序 四、labelCol和wrapperCol的实际使用 总结 前言 主要是记录一下栅格布局的一些属性和labelCol、wrapperCol等。 一…

[附源码]java毕业设计毕业设计管理系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

国产AI绘画软件“数画”刷爆朋友圈,网友到底在画什么

人们常说,眼见为实,只有自己亲眼见到的才会相信。但是我们都知道眼睛会产生错觉,而且人们在生活中被错觉误导的情况屡见不鲜。例如图中,你以为她们肯定是真人的照片。世界上有些事情,即使是自己亲眼所见到的也未必一定…

c/c++内存管理

前言: 开篇前就聊聊篮球,在众多球星中,我觉得杜兰特(KD)非常专注于篮球,他一直坚持他所热爱的事业。尽管有很多缺点,但是他对于篮球的态度是坚定不移,这是我非常钦佩的。当然库里&am…

大数据环境搭建 —— VMware Workstation 安装详细教程

大数据系列文章:👉 目录 👈 文章目录一、下载安装包1. 下载 VMware Workstation2. 小技巧二、安装软件1. 软件安装2. 虚拟环境搭建一、下载安装包 1. 下载 VMware Workstation ① 打开 VMware Workstation 官方下载网站 VMware Workstati…

【Linux】管理文件和目录的命令大全

目录 Linux 管理文件和目录的命令 1.命令表 2.细分 1.pwd命令 2.cd 命令 3.ls 命令 4.cat 命令 5.grep 命令 6.touch 命令 7.cp 命令 8.mv 命令 9.rm 命令 10.mkdir 命令 11.rmdir 命令 赠语:Even in darkness, it is possible to create light.即使在…

C++构造函数

构造函数详解 类的6个默认的成员函数: 类中如果什么都没有定义:---有六个默认的成员函数: 构造函数:主要完成对象的初始化工作析构函数:主要完成对象中资源的清理工作拷贝构造函数:拷贝一个新的对象赋值运算符重载: 让两个对象之间进行赋值引用的重载:普通和const类型--->…

【Vue】VueCLI 的使用和单文件组件(2)

首先作为一个工程来说, 一般我们的源代码都放在src目录下: 外面的代码我们先不去管它,后面在工程编写的时候再给大家仔细的介绍。‍‍ 这块大家主要知道我们的源代码 都在src里面,它的入口文件是一个man点js文件,‍‍…

【day21】每日一题——MP3光标位置

MP3光标位置_牛客题霸_牛客网 这题就是简单的根据它的规则把它的情况都列举出来即可(当然,我第一次写一脸懵逼,所以你现在一脸懵逼没事,看完你就觉得简单了。看完还懵逼,你就多看几遍,然后自己去尝试一下&a…

C/C++,不废话的宏使用技巧

经典废话 下面的所有内容全是我在欣赏一串代码时发出的疑问,之前对宏的了解不多,导致在刚看到下面的这串代码的时候是“地铁 老人 手机”,具体代码如下,如果有对这里解读有问题的欢迎在评论区留言。 一、预定义宏 编译一个程…

在线就能制作活动邀请函,一键生成链接

今天小编教你如何在线制作一个活动邀请函,不需要下载软件,也不需要编程代码,只需使用乔拓云工具在线一键就能生成活动邀请函和邀请函链接,下面就跟着小编的教学开始学习如何在线制作活动邀请函!第一步:打开…