机器学习之凸优化原理推导及相关知识总结

文章目录

  • 目录
    • 1、了解凸集和仿射集的基本概念。
    • 2、知道几何体的向量表达。
    • 3、了解超平面和半空间的概念。
    • 4、了解分割超平面和支撑超平面的含义。
    • 5、知道jensen不等式。
    • 6、掌握知识:凸函数。
    • 7、掌握凸优化

目录

1、了解凸集和仿射集的基本概念。

凸集:在凸集内部的两个点之间的线段仍在图形内,则称这个图形为凸集。
仿射集:通过集合中任意两个不同点的直线仍然在这个集合内则称为这个集合的仿射集。
仿射集说的是直线,凸集说的是线段。
这里写图片描述
这里写图片描述

2、知道几何体的向量表达。

两个θ+(1-θ)=1代表的是两个点之间的关系是直线关系,如果不等于1则代表是其他的非线性的关系。
这里写图片描述
这里写图片描述

3、了解超平面和半空间的概念。

超平面:如下图所示,将线性方程转化为矩阵的形式,然后(2,3)可以用向量a(已知点的向量)表示,(x,y)可以用向量x来表示,常数可以用b来表示。即若在2维空间中表示则超平面是一条直线,若a为N维向量(即在N维空间中表示),则式子可表示为一个N维空间中的超平面方程。
半空间:如下图所示的2x+3y=1这条直线的一半即代表半空间,表示形式如下图所示
这里写图片描述
这里写图片描述
2维空间中超平面是一条直线,3维中是一个平面。。。半空间就是超平面的一半的空间称为半空间。

4、了解分割超平面和支撑超平面的含义。

分隔超平面:将两个超平面分割的平面称为分割超平面。即两个凸集内部的两个点d和c的连线的最短距离的垂直平分线即为这两个凸集的分割超平面。
这里写图片描述
支撑超平面:对于一个图形,通过它的任意边上画切线,如果图形在切线的一边则证明该图形是凸集组成的图形。若不是则证明该图形非凸集。可以把这个切线称为支撑超平面。
如果一个集合任何一个点都存在支撑超平面则这个集合是凸集。
这里写图片描述

5、知道jensen不等式。

jenson不等式可以转化为f(E(x))<=E(f(x)),无论x是连续的或者是离散的。

6、掌握知识:凸函数。

数学含义:凸函数定义式可以理解为一个函数,它的割线总是在函数的上方,则可称该函数是凸函数,如下图所示。
这里写图片描述

7、掌握凸优化

凸优化:基本形式如下所示,即任何问题都可以转化为求f0(x)的最小值,而对于f0(x)存在两个限制条件 Fi(x)(代表的是若干个不等式约束条件)与Hj(x)(代表的是若干个等式约束条件)。
这里写图片描述
对于最终的最优化值我们不关心,而是关心对应的x的值
最优值的公式数学含义:在什么样的条件下求对应的F0(x)的下确界
这里写图片描述
由对应的限制条件可得lagrange函数中的Hj(x)为0。
对偶函数通过梯度来求极大值。
这里写图片描述
这里写图片描述

将Lagrange函数转化为求它的对偶函数,而Lagrange对偶函数为凹函数,则凹函数的最大值也就对应原函数的最小值。
这里写图片描述
我们求得是最小值。通过下面的推导也就转化为求对偶函数。
由于Hj(x)=0所以原式转化为g(λ)。
PS:下图中的h(x)改为f(x),h(x)=0了,已经被舍掉了。
这里写图片描述
**整体的过程:**优化问题,优化的形式是固定,即问题可以转化为一个表达式F(x)外加两个限制条件的表达式。即任何问题都可以转化为求f0(x)的最小值,而对于f0(x)存在两个限制条件 Fi(x)与Hj(x)。
将凸优化问题转化为Lagrange函数,再将Lagrange函数转化为求它的对偶函数,而Lagrange对偶函数为凹函数,则凹函数的最大值也就对应原函数的最小值,即可得凸优化问题的解。

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

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

相关文章

机器学习之回归总结

目录1、了解线性回归2、了解似然函数3、了解交叉验证的原理4、梯度下降算法4.1、批量梯度下降算法&#xff08;Batch Gradient Descent&#xff0c;简称BGD&#xff09;&#xff1a;4.2、随机梯度下降算法&#xff08;SGD&#xff09;&#xff1a;4.3、折中&#xff1a; 5、了解…

机器学习之决策树与随机森林

目录1、了解熵、条件熵、互信息的概念及公式1.1、熵1.2、条件熵1.3、信息增益/互信息 2、了解决策树2.1、了解决策树的概念和特点以及和熵的关系2.2、了解树生成的过程2.3、了解决策树三种算法的区别2.4、了解决策树的损失函数2.5、了解解决决策树过拟合的方法2.6、了解后剪枝的…

机器学习之提升算法

1、知道提升、梯度提升是什么意思1.1、提升1.2、梯度提升1.3、了解提升算法的过程 2、残差与残差平方和&#xff08;residual sum of squares&#xff09;3、了解GBDT算法4、了解XGBoost算法5、了解Adaboost算法5.1、Adaboost算法的原理5.2、例子 6、偏差和方差 1、知道提升、梯…

Jsoup遍历ul li下的链接信息实例

2019独角兽企业重金招聘Python工程师标准>>> Document doc;try {String URL "www.baidu.com";doc Jsoup.connect(URL).get();Elements ElementsUl doc.getElementsByTag("ul");for (Element elementLi : ElementsUl) {Elements provinceEl …

机器学习之支持向量机(SVM)总结

文章目录1、知道SVM相关的各种概念2、知道目标函数、损失函数、正则项的意义2.1、目标函数2.2、损失函数2.3、正则化&#xff08;添加噪音避免过拟合&#xff09;3、了解SVM算法原理4、知道SVM的目标函数5、知道SVM的损失函数以及公式6、知道SVM支持向量机的计算过程6.1、推导过…

机器学习之聚类算法的原理推导及相关知识总结

文章目录1、知道几个关于"差"的概念2、理解相似度度量的各种方法和相互关系2.1、欧氏距离2.2、jaccard相似系数2.3、余弦相似度2.4、Pearson相似系数2.5、相对熵3、掌握掌握K-Means算法3.1、知道聚类的思想3.2、K-Means算法原理3.3、知道K-Mediods聚类3.4、如何选取K…

机器学习之EM算法的原理推导及相关知识总结

文章目录1、知道先验概率和后验概率2、了解高斯混合模型GMM3、通过最大似然估计推导EM算法的过程的实例4、EM算法5、知道pLSA模型1、知道先验概率和后验概率 先验概率&#xff08;prior probability&#xff09;是指根据以往经验和分析得到的概率&#xff08;理解为自定义概率…

机器学习之朴素贝叶斯算法的推理及相关知识总结

文章目录1、朴素贝叶斯公式1.1、贝叶斯公式的应用2、了解贝叶斯网络2.1、知道什么是贝叶斯网络2.2、贝叶斯网络的两种表示形式2.3、掌握全连接的贝叶斯网络的公式2.3、知道条件概率表参数个数分析的方法2.4、掌握变量联合分布概率的公式及含义2.5、知道马尔科夫模型3、了解D-se…

HA机制的大数据集群的搭建过程

文章目录集群规划1、 准备Linux环境1.1、修改Linux主机名1.3、修改主机名和IP的映射关系1.4、关闭防火墙1.5、ssh免登陆&#xff08;主节点和从节点之间&#xff09;2、 安装JDK2.1、上传2.2、解压jdk2.3、将java添加到环境变量中2.4、刷新配置2.5、验证3、安装zookeeper3.1、解…

Linux系统7个运行级别图文详解

Linux系统7个运行级别图文详解 当安装linux操作系统时将选择下列那一个操作 ______ A&#xff0e;选择 "图形登录方式" 设定系统开始运行级为4 B&#xff0e;选择 "文本登录方式" 设定系统开始运行级为3 C&#xff0e;选择 "文本登录方式" 设定系…

使用IntelliJ IDEA碰到的问题总结

文章目录问题一&#xff1a;无法创建Java Class文件问题一&#xff1a;无法创建Java Class文件 今天打开项目时&#xff0c;发现右击新建不了java.class文件&#xff0c;于是尝试了以下方法&#xff1a; &#xff08;1&#xff09;选择 File——>Project Structure——>…

linux文本处理常用指令总结

引子 作为一个偏爱windows的程序员&#xff0c;以前做文本处理的时候总是喜欢在windows下用notepad等图形化工具处理&#xff0c;比如有时需要把linux服务器上一个文件进行一次全局字符串替换这样简单的操作&#xff0c;还得把文件down到本地编辑好再传回去。这两天买了本《鸟哥…

Linux中chown和chmod的区别和用法

chmod修改第一列内容&#xff0c; chown修改第3、4列内容&#xff1a; chown用法&#xff1a; 用来更改某个目录或文件的用户名和用户组。 chown 用户名:组名 文件路径&#xff08;可以是绝对路径也可以是相对路径&#xff09; 例1&#xff1a;chown root:root /tmp/tmp1 就…

玩大数据期间碰到的一些问题总结

文章目录问题一&#xff1a;Zookeeper节点数量为什么建议是奇数个&#xff1f;问题二&#xff1a;HA机制的Hadoop集群中Journal Node 作用问题三&#xff1a;两个datanode节点互相排斥怎么解决&#xff08;集群无法识别新加入的Datanode&#xff09;&#xff1f;问题四&#xf…

JAVA的SSH框架登录注册

Struts 的MVC设计模式可以使我们的逻辑变得很清晰&#xff0c;主要负责表示层的显示。 Spring 的IOC和AOP可以使我们的项目在最大限度上解藕。 hibernate的就是实体对象的持久化了, 数据库的封装。 项目截图&#xff1a;(代码是按照项目截图上传的&#xff0c;直接对号入座即可…

Visual Studio Code 前端调试不完全指南

本文最初发布于我的个人博客&#xff1a;咀嚼之味Visual Studio Code (以下简称 vscode) 如今已经代替 Sublime&#xff0c;成为前端工程师们最喜爱的代码编辑器。它作为一个大型的开源项目&#xff0c;不断推陈出新&#xff1b;社区中涌现出大量优质的插件&#xff0c;以支持我…

机器学习之LDA主题模型算法

文章目录1、知道LDA的特点和应用方向1.1、特点1.2、应用方向2、知道Beta分布和Dirichlet分布数学含义3、了解共轭先验分布4、知道先验概率和后验概率5、知道参数α值的大小对应的含义6、掌握LDA主题模型的生成过程7、知道超参数α等值的参考值8、LDA总结1、知道LDA的特点和应用…

[Go] Template 使用简介

Golang 提供了两个标准库用来处理模板 text/template 和 html/template。我们使用 html/template 格式化 html 字符。 模板引擎 模板引擎很多&#xff0c;Python 的 jinja&#xff0c;nodejs 的 jade 等都很好。所谓模板引擎&#xff0c;则将模板和数据进行渲染的输出格式化后的…

内存泄露监测

2019独角兽企业重金招聘Python工程师标准>>> iOS 内存泄露监测 144 作者 谢谢生活 已关注 2017.05.19 17:38* 字数 4235 阅读 209评论 0喜欢 6 iOS可能存在的内存泄露&#xff1a;block 循环引用。当一个对象有一个block属性&#xff0c;而block属性又引用这个对象…

玩Azkaban跳过的坑

文章目录一号坑&#xff1a;启动Azkaban报错&#xff1a;User xml file conf/azkaban-users.xml doesnt exist.二号坑&#xff1a;报错&#xff1a;failed SslSocketConnector0.0.0.0:8443: java.io.FileNotFoundException: /home/hadoop/app/azkaban/azkaban-web-2.5.0/bin/ke…