首页 > 其他分享 >Convex Function

Convex Function

时间:2024-11-14 16:31:36浏览次数:1  
标签:Function le frac big align frac1 Convex text

突然理解一些作者该写的不写,摸鱼的却写完的心情了……

Definition

这里的定义非常友好,国内外正好相反。所以这里不会说函数的凹凸性,统一说 \(\text{convex}\) 和 \(\text{concave}\)。

这里,我们参考外文书中的规范,\(t\in(0,1),f\big(tx+(1-t)y\big)\le tf(x)+(1-t)f(y)\) 定义了 \(\text{convex function}\)。不等号反向的是 \(\text{concave function}\)。

有几个等价的定义

\[\begin{align*} f(\frac{x+y}{2})&\le \frac{f(x)+f(y)}{2}\\ f^{\prime\prime}(x)&\ge 0 \end{align*} \]

首先证明这样的定义是等价的。

1

\(t\in(0,1),f\big(tx+(1-t)y\big)\le tf(x)+(1-t)f(y)\Leftrightarrow f(\frac{x+y}{2})\le \frac{f(x)+f(y)}{2}\)

左边推出右边是显然的,取 \(t=\frac12\) 即可。

右边推出左边的一个自然的想法是用二进制逼近。

发现

\[\begin{align*} f\big(\frac1{2^n}x+(1-\frac1{2^n})y\big)&=f\big(\frac{\big(\frac1{2^{n-1}}x+(1-\frac1{2^{n-1}})y\big)+y}{2}\big)\\ &\le \frac12(f\big(\frac1{2^{n-1}}x+(1-\frac1{2^{n-1}})y)+f(y)\big)\\ &..(\text{归纳})\\ &\le \frac1{2^n}f(x)+(1-\frac1{2^n})f(y) \end{align*} \]

接下来处理分子就可以了。

首先,和上面一样,一个分子 \(S\) 如果对某个 \(n\) 成立,对于更大的也成立。

可以发现,\(n=1\) 的时候 \(0,1\) 是成立的,可以考虑证明对于任意 \(n\),\(2^{n-1}+k\) 还是成立的。

于是,取 \(1\le k<2^{n-1}\)(\(k=0\) 的情况是显然的)

\[\begin{align*} f(\frac{k+2^{n-1}}{2^n}x+\frac{2^{n-1}-k}{2^n}y)&=f(\frac{x+\big(\frac{k}{2^{n-1}}x+\frac{2^{n-1}-k}{2^{n-1}}y\big)}{2})\\ &\le\frac12\big(f(x)+f(\frac{k}{2^{n-1}}x+\frac{2^{n-1}-k}{2^{n-1}}y)\big)\\ &..(\text{归纳})\\ &\le\frac{k+2^{n-1}}{2^n}f(x)+\frac{2^{n-1}-k}{2^n}f(y) \end{align*} \]

然后用二进制逼近任意实数就可以了。

\(\#\) 这个做法有点蠢,等会给个更好的做法。

2

\(t\in(0,1),f\big(tx+(1-t)y\big)\le tf(x)+(1-t)f(y)\Rightarrow f^{\prime\prime}(x)\ge 0\)

考虑证明,\(\forall x<y,f^\prime(x)\le f^\prime(y)\)。

一个直观的想法是证明 \(m:=\frac12x+\frac12y,\frac{f(m)-f(x)}{m-x}\le\frac{f(y)-f(x)}{y-x}\le\frac{f(y)-f(m)}{y-m}\)。

这个其实比较容易,只需要注意到 \(m-x=\frac12(y-x)=y-m\) 然后取 \(t=\frac12\) 即可。

重复使用这个不等式,可以得到 \(a=(1-\frac{1}{2^n})x+\frac{1}{2^n}y,b=\frac1{2^n}x+(1-\frac1{2^n})y,\frac{f(a)-f(x)}{a-x}\le\frac{f(y)-f(x)}{y-x}\le\frac{f(y)-f(b)}{y-b}\),这个就是左右导数的定义,然后你都二阶导了一阶导肯定是存在的,于是就得证了。

3

\(f^{\prime\prime}(x)\ge0\Rightarrow f(\frac{x+y}{2})\le \frac{f(x)+f(y)}{2}\)

不妨设 \(x<y\),记 \(u=\frac{x+y}{2}\),在 \((x,u),(u,y)\) 上分别用一下拉格朗日中值定理。

\[\begin{align*} \exists \eta_1\in(x,u),f^\prime(\eta_1)(u-x)&=f(u)-f(x)\\ \exists \eta_2\in(u,y),f^\prime(\eta_2)(y-u)&=f(y)-f(u) \end{align*} \]

于是就有

\[f(\eta_1)=\frac{f(u)-f(x)}{u-x}\le f(\eta_2)=\frac{f(y)-f(u)}{y-u} \]

注意到 \(u-x=y-u\) 就结束了。

4

现在给出 \(\mathrm{1}\) 中所说更好的做法。

直观地看,函数是 \(\text{convex}\) 的等价于函数图像在弦下面,弦方程显然是 \(l(x)=f(a)+\frac{f(b)-f(a)}{b-a}(x-a)\)。

考虑 \(g(x)=f(x)-l(x)\),证明 \(g(x)_{\max}\le 0\) 即可。

因为 \(l(x)\) 是一个线性函数,容易发现 \(f(\frac{x+y}{2})\le \frac{f(x)+f(y)}{2}\Rightarrow g(\frac{x+y}{2})\le \frac{g(x)+g(y)}{2}\)。

如果最大值在端点处取到,因为 \(g(a)=g(b)=0\),那就做完了。

考虑在 \(x_0\in(a,b)\) 处取到最大值,不失一般性,\(x_0\in(a,\frac{a+b}{2})\)。

这时有

\[\begin{align*} g(x_0)&=g(\frac{(2x_0-a)+a}{2})\\ &\le\frac12\big(\underbrace{g(2x_0-a)}_{\le g(x)_{\max}=g(x_0)}+\underbrace{g(a)}_{=0}\big)\\ &\le\frac12g(x_0) \end{align*} \]

于是 \(g(x)_{\max}=g(x_0)\le 0\)。得证。

连续性

\(\text{convex function}\) 在内闭区间上是 \(\text{Lipschitz}\) 连续的。也就是 \(\forall x,y\in[a,b],|f(x)-f(y)|=O(|x-y|)\)。

这里好像需要介绍一下内闭区间,首先 \([a,b]\) 这样是闭区间,然后内的意思是 \([a,b]\) 中都是定义域 \(I\) 的内点,也就是 \(\forall x\in[a,b]\),存在一个 \(x\) 的邻域其中都是 \(I\) 中的点。

这里就是考虑定义 \(2\) 中证明的不等式:\(m:=\frac12x+\frac12y,\frac{f(m)-f(x)}{m-x}\le\frac{f(y)-f(x)}{y-x}\le\frac{f(y)-f(m)}{y-m}\),容易发现取 \(m=tx+(1-t)y\) 也是对的,之前只是我懒了。

然后取 \(A,B\in I\setminus[a,b]\quad s.t.A<a<b<B\),可以知道

\[\forall x,y\in[a,b],\frac{f(a)-f(A)}{a-A}\le\frac{f(x)-f(y)}{x-y}\le\frac{f(B)-f(b)}{B-b} \]

于是 \(|f(x)-f(y)|\le M|x-y|\),其中 \(M=\max\{|\frac{f(a)-f(A)}{a-A}|,|\frac{f(B)-f(b)}{B-b}|\}\)。

标签:Function,le,frac,big,align,frac1,Convex,text
From: https://www.cnblogs.com/efX-bk/p/18546280/convex_function

相关文章

  • 基于华为云FunctionGraph和ModelArts的智能动漫头像生成:从自拍到AI风格化的编程
    文章目录1引言2背景介绍2.1华为云FunctionGraph与ModelArts简介3项目准备3.1注册与登录华为云账号4实验步骤4.1首先我们配置云主机4.2安装FunctionGraph插件4.3创建函数4.4部署函数4.5函数配置委托4.6函数配置触发器4.7函数添加依赖包4.8订阅模型并部署A......
  • 【C语言】解决error C4996: 'fopen': This function or variable may be unsafe. Cons
    几天编译文件的时候报错,编译出错信息:错误1errorC4996:'fopen':Thisfunctionorvariablemaybeunsafe.Considerusingfopen_sinstead.Todisabledeprecation,use_CRT_SECURE_NO_WARNINGS.Seeonlinehelpfordetails.意思就是fopen不安全,推荐你用fopen_s,这个时......
  • 【C++】C++11之函数对象,Lambda表达式和functional函数对象类型
    知识的学习在于点滴记录,坚持不懈函数对象        重载了函数调用运算符()的类的对象,即为函数对象。        std::function由上文可以看出:由于可调用对象的定义方式比较多,但是函数的调用方式较为类似,因此需要使用一个统一的方式保存可调用对象或者传递可......
  • 「C/C++」C++标准库 之 #include<functional> 函数模板库
    ✨博客主页何曾参静谧的博客......
  • js 函数 function sum(...args),function sum(args) 什么区别呢
    在JavaScript中,functionsum(...args)和functionsum(args)这两种写法有重要的区别:1.functionsum(...args)这种写法使用了剩余参数(restparameter)语法。...args会将传入函数的所有参数收集到一个数组中,args是这个数组。...args允许函数接收任意数量的参数,并将它们......
  • 【C&C++】C4996 ‘fopen‘: This function or variable may be unsafe. Consider usin
    问题描述在使用VisualStudio编译运行C/C++程序时,编译器返回警告信息。FILE*file;file=fopen("file.csv","w+");编译器返回的警告信息如下:C4996 'fopen':Thisfunctionorvariablemaybeunsafe.Considerusingfopen_sinstead.Todisabledeprecation,......
  • python openai 通过Function Call 创建自动化任务
    目录一、什么是FunctionCall(函数掉用)1. 功能概述2. 工作原理二、如何实现函数调用1、定义自己的get_weather函数2、给助手添加函数调用3、写好instrction,指导assistant去掉用你定义的方法。4、最后也是最重要的,捕获Assistant的FunctionCall三、常见问题四、......
  • 宝塔+DVWA function allow_url_include Disabled错误
    问题描述宝塔配置DVWA出现functionallow_url_include:Disabled错误解决方法查看DVWA文件夹中的php.ini。一般默认是正确的查看网站php环境的配置文件。宝塔默认路径为:/www/server/php/80/etc/php.ini注意,本人网站使用的是php80版本,所以路径中的数字是80,请根据实际......
  • Laravel报错Call to undefined function Termwind\ValueObjects\mb_strimwidth()解
    Laravel报错CalltoundefinedfunctionTermwind\ValueObjects\mb_strimwidth()通常是因为php的mbstring扩展没有打开解决办法:搜索extension=mbstring去掉前面的;注释符即可,需要注意的是,Laravel开发环境通常是通过phpartisanserve命令运行在命令行中的,所以应该修改php环境......
  • SAP-ABAP开发学习-FUNCTION ALV
    ALV概览        ALV全称SAPListView,是SAP提供的一个强大的数据报表显示工具。ALV实质上是一个屏幕控件对象,它通过程序传递数据内表的方式来显示数据。实现方式:调用标准函数;优化接口:用户可以实现对字段的排序、筛选及统计等功能。显示方式:List类似于write语句输......