最適化: モデリング、アルゴリズム、理論
私は現在、「最適化: モデリング、アルゴリズム、理論」という本を勉強しています。それをここに記録し、いくつかのメモを取ります。また、それに私自身の理解をいくつか加えて、そのような厳格な方法で書かないように努めます (もちろん、最も適切な方法です)。基本はまだ必要)
全文は28,365文字なので疲れる
第2章 基礎知識
2.1 標準
2.1.1 ベクトルノルム
定義 2.1 (ノルム)ベクトル空間 R nから実数体 R への非負関数 ||・|| が次を満たす場合、ノルム
と呼ばれます。 (1) 正の明確性: すべてのv ∈ R nv{\in }Rについて^nv ∈ Rn,有∣ ∣ v ∣ ∣ > = 0 ||v|| >= 0∣∣ v ∣∣>=0、および∣ ∣ v ∣ ∣ = 0 ||v|| = 0∣∣ v ∣∣=v = 0 v=0の場合にのみ0v=0
(2) 均一性: すべてのv ∈ R nv{\in}R^nv ∈ Rn和α ∈ R {\alpha}{\in}Rα ∈ R 、 ∣ ∣ α v ∣ ∣ ||{\alpha}v||があります∣∣ α v ∣∣ =∣ α ∣ |{\alpha}|∣ α ∣ ∣ ∣ v ∣ ∣ ||v||∣∣ v ∣∣
(3) 三角不等式: すべてのv , w ∈ R nv,w{\in}R^nv 、w ∈ Rn ,有∣ ∣ v + w ∣ ∣ < = ∣ ∣ v ∣ ∣ + ∣ ∣ w ∣ ∣ ||v+w|| <= ||v|| + ||w||∣∣ v+w ∣∣<=∣∣ v ∣∣+∣∣ w ∣∣
最も一般的に使用されるベクトル ノルムは lpノルム (p >= 1)
∣ ∣ v ∣ ∣ p = ( ∣ v 1 ∣ p + ∣ v 2 ∣ p + … + ∣ vn ∣ p ) 1 / p ||v||_{p} = (|v_{1}|^p + |v_{2}|^p + \ldots + |v_{n}|^p)^{1/p}∣∣ v ∣ ∣p=( ∣ v1∣p+∣ v2∣p+…+∣ vん∣p )1/ p
当然のことながら、誰もが高度な数学を学習しているはずです。p = ∞ p={\infty}の場合p=∞、次にl ∞ l_\infty私∞ノルムは次のように定義されます。∣ ∣ v ∣ ∣ ∞ = max ∣ vi ∣ ||v||_\infty = max|v_i|∣∣ v ∣ ∣∞=max ∣ v _私は∣
p = 1 , 2 , ∞ p = 1,2,{\infty}を覚えておいてください。p=1 、2 、∞の場合が最も重要ですが、場合によってはl 2 l_2を無視します。私2ノルムのノルムは、
正定行列AAにも当てはまります。Aによって誘導されるノルム、つまり ∣ ∣ x ∣ ∣ A = x TA x ||x||_A = \sqrt{x^TAx}∣∣ × ∣ ∣あ=バツTAX __
l 2 l_2の場合私2通常、一般的に使用されるコーシー不等式があり、a, b ∈ R na,b{\in}R^nとします。、_b ∈ Rn,则
∣ a T b ∣ < = ∣ ∣ a ∣ ∣ 2 ∣ ∣ b ∣ ∣ 2 |a^Tb|<=||a||_2||b||_2∣ aT b∣<=∣∣ a ∣ ∣2∣∣ b ∣ ∣2
等号は、a が b と線形関係にある場合にのみ成立します。
2.1.2 行列ノルム
行列ノルムは、まず同じ 3 つの特性を満たす必要があります。つまり、正の確実性、均一性、三角不等式を満たす必要があります。一般的に使用されるものはl 1、l 2 l_1、l_2です。私1、私2p = 1 p = 1の場合のノルムp=1の場合A ∈ R m ∗ n A{\in}R^{m*n}A ∈ Rm ∗ n∣ ∣
A ∣ ∣ 1 = ∑ i = 1 m ∑ j = 1 n ∣ aij ∣ ||A||_1={\sum_{i=1}^m}{\sum_{j = 1}^n}|a_{ij}|∣∣ A ∣ ∣1=i = 1∑メートルj = 1∑ん∣ aイジ
∣p = 2の場合p=2p=2、行列のフロベニウス ノルム (F ノルム) とも呼ばれ、∣ ∣ A ∣ ∣ F ||A||_F∣∣ A ∣ ∣ふ, 実際にはすべての要素の二乗和とルート記号です. 具体的な定義は次のとおりです
∣ ∣ A ∣ ∣ F = T r ( AAT ) = ∑ i , jaij 2 ||A||_F=\sqrt {Tr(AA^T) }=\sqrt{\sum_{i,j}a_{ij}^2}∣∣ A ∣ ∣ふ=T r ( A Aた)=私、j∑あるij2
ここにTrTrT r は正方行列のトレースを表します。直線上の各要素の合計は行列 A のトレース (またはトレース番号) と呼ばれ、一般に tr(A) と表されます)。行列の F ノルムは直交しています。不変性。
直交不変性とは、直交行列U ∈ R m ∗ n 、V ∈ R m ∗ n U{\in}R^{m*n},V{\in}R^{m*n} に対して次のことを意味します。U ∈ Rm ∗ n、V ∈ Rm ∗ nの場合、
∣ ∣ UAF ∣ ∣ F 2 = ∣ ∣ A ∣ ∣ F 2 ||UAF||_F^2=||A||_F^2∣∣ U A F ∣ ∣F2=∣∣ A ∣ ∣F2
具体的な導出は式を打つのが面倒なので書きませんが(笑)、興味のある方は本書の24ページを読むか、私のところに来てください^^
行列ノルムはベクトル ノルムによっても誘導できます。この種の算術は一般に誘導ノルムと呼ばれます。あまり使用されないように感じます。ここでは展開しません。1
ノルムと 2 ノルムに加えて、行列ノルムは、行列A ∈ R m ∗ n A{\in}R^{m*n} が与えられた場合の核ノルムです。A ∈ Rm ∗ n の場合、核ノルムは次のように定義されます
∣ ∣ A ∣ ∣ ∗ = ∑ i = 1 r σ i ||A||_*=\sum_{i=1}^r{\sigma}_i∣∣ A ∣ ∣∗=i = 1∑rp私は
その中σ i , i = 1 , 2 , . 。。, r {\sigma}_i,i=1,2,...,rp私は、私=1 、2 、... 、r为 A A Aのゼロ以外のすべての特異値r = ランク ( A ) r=rank(A)r=r ank ( A )、ベクトルl 1 l_1私1ノルムはスパース性を維持することができ、通常は行列のカーネル ノルムを制限することで行列の低ランクを保証します。
2.1.3 行列の内積
内積は、通常、2 つの行列間の角度を表すために使用されます。一般的に使用される内積は、フロベニウスの内積、m ∗ nm*nです。メートル∗nの行列AAAとBBBのフロベニウス内積は
、 < A , B > = T r ( ABT ) = ∑ i = 1 m ∑ j = 1 naijbij <A,B>=Tr(AB^T)=\sum_{i=1 として定義されます。 }^ m\sum_{j=1}^na_{ij}b_{ij}<あ、B>=T r ( A Bた)=i = 1∑メートルj = 1∑んあるイジbイジ
実際には、これは 2 つの行列の 1 対 1 に対応する要素の乗算です。
同様に、行列ノルムに対応するコーシー不等式もあります。A , B ∈ R m ∗ n A,B{\in}R とします。 ^{m*n}あ、B ∈ Rm ∗ n,则
∣ < A , B > ∣ < = ∣ ∣ A ∣ ∣ F ∣ ∣ B ∣ ∣ F |<A,B>|<=||A||_F||B||_F∣<あ、B>∣<=∣∣ A ∣ ∣ふ∣∣ B ∣ ∣ふ
等号は、A と B が線形関係にある場合にのみ成立します。
2.2 デリバティブ
2.2.1 勾配とヘッセ行列
勾配の定義 (これは私がこれまで見たことがないものであるはずです): 与えられた関数f: R n → R f:R^n{\rightarrow}Rf:Rn →R、およびfff は点xxベクトルg ∈ R ng{\in}R^n が存在する場合、 xの近傍内で意味があります。g ∈ Rn はlim p → 0 f ( x + p ) − f ( x ) − g T p ∣ ∣ p ∣ ∣ = 0 \lim_{p{\rightarrow}0}\frac{f(x+p)-f を満たす
(x)-g^Tp}{||p||}=0p → 0リム∣∣ p ∣∣f ( x+p )−f ( x )−gTP _=0はff
と呼ばれますf は点xxxは微分可能です、この時点ではgggはffと呼ばれますf は点xxxでの勾配∇ f ( x ) {\nabla}f(x)∇ f ( x ) 、領域 D 上の各点xxの場合xには∇ f ( x ) {\nbla}f(x) があります∇ f ( x )が存在する場合、それはfffは D で微分可能です
次に、一連の導出の後、おなじみの勾配公式
∇ f ( x ) = [ ∂ f ( x ) ∂ x 1 , ∂ f ( x ) ∂ x 2 , . . . , ∂ f ( x ) ∂ を取得できます。 xm ] T {\nabla}f(x)=\left[ \begin{行列} {\frac{ {
\partial}f(x)}{
{\partial}x_1}} ,{\frac{
{\partial} f(x)}{
{\partial}x_2}} ,...,{\frac{
{\partial}f(x)}{
{\partial}x_m}} \end{行列} \right ]^T∇ f ( x )=[∂ ×1∂ f ( x ),∂ ×2∂ f ( x ),... ,∂ ×メートル∂ f ( x )】
多変量関数の場合、そのヘソール行列を次のように定義できます。 if function f ( x ) : R n → R f(x):R^n{\rightarrow}Rf ( x ):Rxx点でn →Rx ∂ 2 f ( x ) ∂ xi ∂ xji , j = 1 , 2 , . . . , n における2 次偏導関数\frac{ {
\partial}^2f(x)}{
{\partial}x_i{\部分}x_j}i,j=1,2,...,n∂ ×私は∂ ×j∂2 f(x)私、j=1 、2 、... 、n都存在,则
∇ 2 f ( x ) = [ ∂ 2 f ( x ) ∂ x 1 2 ∂ 2 f ( x ) ∂ x 1 ∂ x 2 ⋯ ∂ 2 f ( x ) ∂ x 1 ∂ xn ∂ 2 f ( x ) ∂ x 2 ∂ x 1 ∂ 2 f ( x ) ∂ x 2 2 ⋯ ∂ 2 f ( x ) ∂ x 2 ∂ xn ⋮ ⋮ ⋮ ∂ 2 f ( x ) ∂ xn ∂ x 1 ∂ 2 f ( x ) ∂ xn ∂ x 2 ⋯ ∂ 2 f ( x ) ∂ xn 2 ] {\nabla}^2f(x)=\left[ \begin{行列} \frac{ {\partial}^2f(x)}
{
{ \partial}x_1^2} & \frac{
{\partial}^2f(x)}{
{\partial}x_1{\partial}x_2} & \cdots& \frac{ {
\partial}^2f(x)}{
{\partial}x_1{\partial}x_n}\\ \frac{
{\partial}^2f(x)}{
{\partial}x_2{\partial}x_1} &\frac{ {
\partial}^2f(x )}{
{\partial}x_2^2} & \cdots & \frac{
{\partial}^2f(x)}{
{\partial}x_2{\partial}x_n} \\ \vdots & \vdots & &\vdots\\ \frac{ {
\partial}^2f(x)}{
{\partial}x_n{\partial}x_1} & \frac{
{\partial}^2f(x)}{
{\partial}x_n{\partial}x_2} & \cdots &\frac{ {
\partial}^2f(x)}{
{\partial}x_n^2 } \end{行列} \right]∇2 f(x)=
∂ ×12∂2 f(x)∂ ×2∂ ×1∂2 f(x)⋮∂ ×ん∂ ×1∂2 f(x)∂ ×1∂ ×2∂2 f(x)∂ ×22∂2 f(x)⋮∂ ×ん∂ ×2∂2 f(x)⋯⋯⋯∂ ×1∂ ×ん∂2 f(x)∂ ×2∂ ×ん∂2 f(x)⋮∂ ×n2∂2 f(x)
FFになるf は点xx∇ 2 f ( x ) {\nbla}^2f(x)
のときのxでのヘッセ行列∇領域 D のxxにおける2 f(x)xが存在する場合、それはffと呼ばれますfは D 上で 2 階微分可能であり、D 上で連続であれば、このときのヘッセ行列は対称行列であることが証明できますf: R n → R mf:R^n{\rightarrow}R^
のときメートルf:Rn →Rmがベクトル値関数の場合、そのヤコビ行列J ( x ) ∈ R m ∗ n J(x){\in}R^{m*n} をJ ( x ) ∈ Rm ∗ n、彼の i 行目の成分fi ( x ) f_i(x)f私は( x )勾配の配置、すなわち
J ( x ) = [ ∂ f 1 ( x ) ∂ x 1 ∂ f 1 ( x ) ∂ x 2 ⋯ ∂ f 1 ( x ) ∂ xn ∂ f 2 ( x ) ∂ x 1 ∂ f 2 ( x ) ∂ x 2 ⋯ ∂ f 2 ( x ) ∂ xn ⋮ ⋮ ∂ fm ( x ) ∂ x 1 ∂ fm ( x ) ∂ x 2 ⋯ ∂ fm ( x ) ∂ xn ] J(x )=\left[ \begin{行列} \frac{
{\partial}f_1(x)}{
{\partial}x_1} & \frac{
{\partial}f_1(x)}{ {
\partial}x_2} & \cdots& \frac{
{\partial}f_1(x)}{
{\partial}x_n}\\ \frac{ {
\partial}f_2(x)}{
{\partial}x_1} & \frac{ {
\partial} f_2(x)}{
{\partial}x_2} & \cdots& \frac{
{\partial}f_2(x)}{
{\partial}x_n}\\ \vdots & \vdots & &\vdots\\ \frac{
{\partial}f_m(x)}{
{\partial}x_1} & \frac{
{\partial}f_m(x)}{
{\partial}x_2} & \cdots& \frac{
{\partial}f_m(x) }{
{\partial}x_n} \end{行列} \right]J ( × )=
∂ ×1∂ f1( x )∂ ×1∂ f2( x )⋮∂ ×1∂ fメートル( x )∂ ×2∂ f1( x )∂ ×2∂ f2( x )⋮∂ ×2∂ fメートル( x )⋯⋯⋯∂ ×ん∂ f1( x )∂ ×ん∂ f2( x )⋮∂ ×ん∂ fメートル( x )
勾配∇ f ( x ) {\nabla}f(x) であることが簡単にわかります。∇ f ( __ ^n{\rightarrow}Rのヤコビアン行列
)
f:Rn →Rは連続微分可能、p ∈ R np{\in}R^np ∈ Rn,那么
f ( x + p ) = f ( x ) + ∇ ( x + tp ) T pf(x+p)=f(x)+{\nabla}(x+tp)^Tpf ( x+p )=f ( x )+∇ ( ×+tp )T p
其中0 < t < 1 0<t<10<t<1、さらに言えばfffは 2 階連続微分可能です
f ( x + p ) = f ( x ) + ∇ f ( x ) T p + 1 2 p T ∇ 2 f ( x + tp ) pf(x+p)=f(x ) +{\nabla}f(x)^Tp+\frac{1}{2}p^T{\nabla}^2f(x+tp)pf ( x+p )=f ( x )+∇ f ( x )Tp _+21pた∇2 f(x+tp ) p
その他0 < t < 1 0<t<10<t<1
最後に、この章では、特殊なタイプの微分可能関数である勾配リプシッツ連続関数も紹介します。このタイプの関数は、多くの最適化アルゴリズムの収束を証明する上で重要な役割を果たします。勾配リプシッツ連続関数 定義: 与えられた微分可能
関数fff 、 L > 0 L>0が存在する場合L>0、任意のx 、 y ∈ domfx,y{\in}domf× 、y ∈ d o m fには (domf domfド・ム・ファはffですfの定義域
) ∣ ∣ ∇ f ( x ) − ∇ f ( y ) ∣ ∣ ≤ L ∣ ∣ x − y ∣ ∣ ||{\nabla}f(x)-{\nabla}f(y)|| { \le}L||xy||∣∣ ∇ f ( x )−∇ f ( y ) ∣∣ ≤ L ∣∣ x−y∣∣はff
と呼ばれますfは勾配リプシッツ連続で、対応するリプシッツ定数はLLL、LLL - スムーズまたはグラデーションLLL - リプシッツ連続体
勾配リプシッツ連続体は、∇ f ( x ) {\nabla}f(x)∇ f ( x )は独立変数xx_ x ) f(x)の変化
によって制御されますf ( x )は二次関数の上限によって制御できます。それにはf ( x ) f(x)f ( x )は二次関数的にしか増加しません
。もう 1 つの帰結は、 iffffは勾配リプシッツ連続であり、大域最小値x ∗ x^*バツ∗、二次方程式の上限を使用してf ( x ) − f ( x ∗ ) f(x)-f(x^*) をf ( x )−f ( x∗ )、xxx は領域内の任意の点になります
1 2 L ∣ ∣ ∇ f ( x ) ∣ ∣ 2 ≤ f ( x ) − f ( x ∗ ) \frac{1}{2L}||{\nabla}f(x) ||^2{\le}f(x)-f(x^*)2L _1∣∣ ∇ f ( x ) ∣ ∣2 ≤f(x)−f ( x∗ )
ここでは具体的な証拠は書きませんが、さらに詳しく知りたい場合は、Baidu または私たちで議論してください。
2.2.2 行列変数の関数の導関数
多変量関数の勾配の定義は、変数がm ∗ nm*nの行列である場合にも拡張できます。メートル∗nマトリックスXX_Xを引数とするf ( X ) f(X)f ( X )、行列G ∈ R m ∗ n G{\in}R^{m*n} がG ∈ Rm ∗ n满十分
lim V → 0 f ( X + V ) − f ( X ) − < G , V > ∣ ∣ V ∣ ∣ = 0 \lim_{V{\rightarrow}0}\frac{f(X+ V)-f(X)-<G,V>}{||V||}=0V → 0リム∣∣ V ∣∣f ( X+V )−f ( X ) −<G 、V>=0
ここで、∣ ∣ ⋅ ∣ ∣ ||・||∣∣ ⋅∣∣ は、行列ベクトル関数ffXXのfX处F ra ˊ chet Fr\acute{a}chetFr _あるˊ chetは微分可能であるため、G はfff在F ra ˊ chet Fr\acute{a}chetFr _あるˊ chetは、微分可能な意味での勾配です。実際、行列変数関数f ( X ) f(X)f ( X )の勾配は、その偏り数を使用して、次のように表すこともできます
。 f ∂ x 2 n ⋮ ⋮ ⋮ ∂ f ∂ xm 1 ∂ f ∂ xm 2 ⋯ ∂ f ∂ xmn ] {\nabla}f(x)=\left[ \begin{matrix} \frac{ {\partial}f
} {
{\partial}x_{11}} & \frac{
{\partial}f}{
{\partial}x_{12}} & \cdots& \frac{
{\partial}f}{ {
\partial}x_{1n }}\\ \frac{
{\partial}f}{
{\partial}x_{21}} & \frac{
{\partial}f}{
{\partial}x_{22}} & \cdots& \frac{
{ \partial}f}{
{\partial}x_{2n}}\\ \vdots & \vdots & &\vdots\\ \frac{ {\
partial}f}{
{\partial}x_{m1}} & \frac{
{\partial}f}{
{\partial}x_{m2}} & \cdots& \frac{
{\partial}f}{
{\partial}x_{mn} } \end{行列} \right]∇ f ( x )=
∂ ×11∂f _∂ ×21∂f _⋮∂ ×メートル1∂f _∂ ×12∂f _∂ ×22∂f _⋮∂ ×平方メートル∂f _⋯⋯⋯∂ ×1n _∂f _∂ ×2n_ _∂f _⋮∂ ×ん∂f _
F ra ˊ chet Fr\acute{a}chetFr _あるˊ chet微分可能性の定義と使用はしばしば面倒なので、別の定義があります -----G a ^ teaaux G\hat{a}teauxGある^ teauxは微分可能です
定義:f (X) f(X)f ( _ _ __G ∈ R任意の方向のm ∗ n V ∈ R m ∗ n V{\in}R^{m*n}V ∈ Rm ∗ n满足
lim t → 0 f ( X + t V ) − f ( X ) − t < G , V > t = 0 \lim_{t{\rightarrow}0}\frac{f(X+tV) -f(X)-t<G,V>}{t}=0t → 0リムtf ( X+tV )_−f ( X )−t<G 、V>=0はff
と呼ばれますfXXについて_XはG a ^ teaux G\hat{a}teauxGある^ teaux、Gffにてf在G a ^ teaux G\hat{a}teauxGある^微分可能な意味でのteaux
ifF ra ˊ chet Fr\acute{a}chetFr _あるˊ chetG a ^ teaaux G\hat{a}teauxを推定できます。Gある^ teauxは微分可能であり、その逆も同様ですが、この本で説明する関数は基本的にF ra ˊ chet Fr\acute{a}chetFr _あるˊ chetは微分可能であるため、現時点で議論する必要はありません。〜、統一行列変数関数 f (X) f(X)fの導関数( _
_
_∂ X∂f _または∇ f ( X ) {\nabla}f(X)∇ f ( X )
例を挙げると、何に役立つかわからない場合のために、
一次関数を考えてみましょう: f (X) = T r (AXTB) f(X)=Tr(AX^TB)f ( X )=T r ( A XT B),そのうちA ∈ R p ∗ n , B ∈ R m ∗ p , X ∈ R m ∗ n A{\in}R^{p*n},B{\in}R^{m*p} ,X{\in}R^{m*n}A ∈ Rp ∗ n、B ∈ Rm ∗ p、X ∈ R任意の方向のm ∗ n V ∈ R m ∗ n V{\in}R^{m*n}V ∈ Rm ∗ nおよびt ∈ R t{\in}Rt ∈ R,有
lim t → 0 f ( X + t V ) − f ( X ) t = lim t → 0 T r ( A ( X + t V ) TB − T r ( AXTB ) ) t \lim_ {t{\rightarrow}0}\frac{f(X+tV)-f(X)}{t}=\lim_{t{\rightarrow}0}\frac{Tr(A(X+tV)^TB -Tr(AX^TB))}{t}t → 0リムtf ( X+tV )_−f ( X )=t → 0リムtT r ( A ( X+tV )_TB _−T r ( A XTB ))
= T r ( AVTB ) = < BA , V > =Tr(AV^TB)=<BA,V>=T r ( AV _TB)_=<BA、_V>
したがって、∇ f ( X ) = BA {\nabla}f(X)=BA∇ f ( X )=B A
これを知って疑問に思ったのは、T r (AVTB) = < BA, V > Tr(AV^TB)=<BA,V>T r ( AV _TB)_=<BA、_V>なぜですか? T r (AVTB) = T r (BAVT) Tr(AV^TB)=Tr(BAV^T) であることが
わかります。T r ( AV _TB)_=T r ( B AV _T )これはトレースの基本特性です、BA BABA和 V V Vはすべてm ∗ nm*nメートル∗nの場合、この時点では別のプロパティがあります。C と D が同じサイズの行列であると仮定すると、T r (ATB) = < A, B > Tr(A^TB)=<A,B>T r ( ATB)_=<あ、B>
ここで Zhihu jordi を参照します。これは彼の 3*3 行列の導出です。
リンク: https://www.zhihu.com/question/274052744/answer/1521521561T r (AVTB ) = T r
を導出できます。( VT , BA ) = < BA , V > Tr(AV^TB)=Tr(V^T,BA)=<BA,V>T r ( AV _TB)_=T r ( Vて、B A )=<BA、_V>ラ
2.2.3 自動微分
自動微分は、コンピューターの導関数を使用するアルゴリズムであり、ニューラル ネットワークでは、入力データaaを順伝播によって渡します。a はy ^ \hat{y}に変換されますy^、つまり入力データaaaは初期情報として使用され、隠れ層の各ニューロンに渡され、処理後の出力はy ^ \hat{y}y^。
出力を比較してy ^ \hat{y}を取得しますy^実ラベル y を使用して、損失関数f ( x ) f(x)を定義できます。f ( x )、ここでxxx はすべてのニューロン応答のパラメーター セット、f ( x ) f(x)f ( x )は通常、複数の関数の複合形式です。最適なパラメータを見つけるには、xxxはf ( x ) f(x)になりますしたがって、ニューロン パラメーターxxについてf ( x )は最小値に達します。xの計算避けられません
。このセクションでは、ニューラル ネットワークの順方向伝播と逆方向導出について説明します。自動微分には、順方向モードと逆方向モードの 2 つの方法があります。順方向モードは、変数伝播と変数導出です。逆方向モードは、順方向伝播と層ごとの導出 明らかに、現在誰もが学んでいるのは、複雑さが低く、計算コストが低い逆方向モードです。
2.3 一般化された実数値関数
数学的解析の過程で関数の基本的な概念を学びました 関数はベクトル空間R n R^nから導出されますRnからデータフィールドRR最適化の分野におけるRマッピングでは、関数の変数に対して inf(sup) 演算を実行することが多く、その結果、関数の値が無限になる可能性があります。最適化問題をよりわかりやすく説明するには、次のようにする必要があります。関数の定義は、ある種の拡張を受けます。
では、一般化された実数値関数とは何でしょうか? R ˉ = R ⋃ ∞ \bar{R}=R{\bigcup}{\infty} と
しますRˉ=R ⋃ ∞ が一般化された実数空間である場合、マッピングf : R n → R ˉ f:R^n{\rightarrow}\bar{R}f:Rん→Rˉは一般化実数値関数と呼ばれ、値の範囲にさらに 2 つの特別な値 (プラス無限大とマイナス無限大) があることがわかります。
2.3.1 適切な機能
適切な関数: 一般化された実数値関数ffが与えられた場合fと空でない集合XXX 、 x ∈が存在する場合f ( x ) < + ∞ f(x)<+{\infty}となるx ∈ Xf ( x )<+ ∞、および任意のx ∈x ∈ X、すべてf ( x ) > − ∞ f(x)>-{\infty}f ( x )>− ∞の場合、関数fffコレクションXXXは適切です。
要約すると、適切な関数fffに関しては、少なくとも 1 つの値が正の無限大ではなく、すべての値が負の無限大ではありません。最適化問題の場合、適切な関数は、いくつかの興味のない関数を削除し、より合理的な関数クラスから問題を検討するのに役立ちます。これは簡単に理解できるはずです。最小値の問題について議論しましょう。その値の少なくとも 1 つは正の無限大にはなりません。そうでない場合は、最小値を取得する方法が決まり、すべての値が負の無限大にはなりません。そうでない場合は、何の意味があるのでしょうか。それについて議論することですよね?本書で特に指定がない限り、定理で議論されている関数はすべて適切な関数であることに
同意します。
f、その定義域を指定
domf = { x ∣ f ( x ) < + ∞ } domf=\{x|f(x)<+{\infty}\}ドmf _ _={
x ∣ f ( x )<+ ∞ }
というのは、適切な関数の最小値を正の無限大で取ることは確かに不可能だからです ^^
2.3.2 クローズド関数
閉関数は、一般化された実数値関数のもう 1 つの重要なタイプです。閉関数は、連続関数の一般化として見ることができます。
閉関数について説明する前に、最初にいくつかの基本概念を紹介します。
1. 下位レベルセット
下位レベルの集合は、実数値関数の値を記述するための重要な概念です。この目的のために、次の定義があります
( α \alphaα - 下位レベルのセット) 一般化された実数値関数の場合:f : R n → R ˉ f:R^n{\rightarrow}\bar{R}f:Rん→Rˉ
C α = { x ∣ f ( x ) ≤ α } C_{\alpha}=\{x|f(x)\le{\alpha}\}Cある={
x ∣ f ( x )≤α }はff
と呼ばれますfのα \アルファα - より低いレベルのセットは、
値がα \alphaαそうですね、C α C_{\alpha}Cあるnull ではない場合、 f ( x ) f(x)であることがわかります。f ( x )の大域的最小点はC α C_{\alpha}Cある、外側の点を考慮する必要はありません。
2. 上の写真
上の図は、集合の観点から関数の特定のプロパティを示しています。次のように定義されています:
一般化された実数値関数f: R n → R ˉ f: R^n{\rightarrow}\bar{R }f :Rん→Rˉ
EPIF = { ( x , t ) ∈ R n + 1 ∣ f ( x ) ≤ t } EPIF=\{(x,t){\in}R^{n+1}|f(x){\le }t\}エピファ_ _ _={( x ,t ) ∈ Rn + 1 ∣f(x)≤t}
人間の言葉で言えば、関数fffより上のものはfffの多くのプロパティは、epif、epife p i f は、epif EPIFを通じて取得できます。e p i f ffのいくつかのプロパティfの性質
3. 閉じた関数と下位半連続関数
閉じた関数: f : R n → R ˉ f:R^n{\rightarrow}\bar{R} とします。f:Rん→Rˉは一般化された実数値関数です。e p i fは閉集合なので、fffは閉関数です。
下位の半連続関数: 一般化された実数値関数f : R n → R ˉ f:R^n{\rightarrow}\bar{R}f:Rん→Rˉ 、 x ∈ R nx{\in}R^nの場合x ∈ Rn,有
lim inf y → xf ( y ) ≥ f ( x ) \liminf_{y{\rightarrow}x} f(y)\ge{f(x)}y → xリム情報f ( y )≥f ( x )
次にf ( x ) f(x)f ( x )は下位半連続関数です
この下限が分からない場合は、テキストを直接読んだ方が良いと思います。
実際には、 x 0 x_0にあります。バツ0の近傍で、 if f( x 0 x_0バツ0) から正の小さな値を引いたもので、近傍内のすべてのf ( x ) f(x)よりも常に小さくなります。f ( x )では、不連続点では半連続性が低いと言われています。
下の写真のようであれば、
x0 x_0バツ0少しでも左に行くと急に下がってしまい、x 0 x_0に届きません。バツ0近所のxxx比f ( x 0 ) − ε f(x_0)-{\varepsilon}f ( x0)−εが大きく、最初の画像であればx 0 x_0バツ0の左側は急激に下がらない、それがほぼ意味するところです
一般化された実数値関数f : R n → R ˉ f:R^n{\rightarrow}\bar{R} とします。f:Rん→Rˉ。この場合、次の命題は等価です:
(1)f ( x ) f(x)f ( x )の任意α \alphaα - 下位レベルの集合はすべて閉集合です
(2)f ( x ) f(x)f ( x )は下半連続です
(3)f ( x ) f(x)F ( _ _ _
_
_ の場合、集合は閉じられます。
実際、閉じた関数と下位の半連続関数は同等であることがわかります。将来的には、定義が 1 つだけ現れることがよくあります。閉じた関数 (下位の半連続関数) 間の単純な
演算半連続) 関数は元のプロパティを維持します
(1) 加算、fffとgggは適切な閉関数であり、domf ⋂ domg ≠ ∅ domf {\bigcap}domg{\neq}∅ドmf⋂ドmg _ _ _ _ _= ∅そしてf + g f+gf+gも閉関数であるため、負の無限大 + 正の無限大ff
の場合のアフィン写像の合成fが閉関数の場合、f ( A x + b ) f(Ax+b)f ( Ax _+b )すべての関数f α f_{\alpha}閉関数 (3) の
上限も取得します。fあるが閉じた関数の場合、sup α f α ( x ) sup_{\alpha}f_{\alpha}(x)補足_ _あるfある( x )も閉関数です。
2.4 凸集
2.4.1 凸集合の関連定義
正直、凸集合について聞いたことはありますが、具体的な定義は分かりませんでした、今から勉強しましょう~ R n R^n
の場合Rnの 2 点x 1 ≠ x 2 x_1{\neq}x2バツ1= x2,形如
y = θ x 1 + ( 1 − θ ) x 2 y={\theta}x_1+(1-{\theta})x_2y=θ ×1+( 1−私)×2
通過点を形成する点x 1 x_1バツ1そしてx 2 x_2バツ2直線、0 ≤ θ ≤ 1 の場合 0{\le}{\theta}{\le}10 ≤ θ ≤ 1、このような点は接続点x 1 x_1バツ1x 2 x_2付きバツ2線分を定義します
:セットCCを通る場合Cの任意の 2 点間の直線はCCにC内ではCCと呼ばれますCはアフィン集合です。つまり、
x 1 , x 2 ∈ C ⟶ θ x 1 + ( 1 − θ ) x 2 ∈ C , ∀ θ ∈ R x_1,x_2{\in}C{\longrightarrow}{\theta }x_1+ (1-{\theta})x_2{\in}C,{\forall}{\theta}{\in}Rバツ1、バツ2∈ C ⟶ θ x1+( 1−私)×2∈ C , ∀ θ ∈ R
連立一次方程式A x = b Ax=bあ×=bの解集合はアフィン集合ですが、逆に、任意のアフィン集合は一次方程式系の解集合として表現できます。
では、凸集合の定義は何でしょうか?
凸セット:セットCCを接続した場合Cの任意の 2 点の線分はCCにあります。C内ではCCと呼ばれますCは凸集合、すなわち
x 1 , x 2 ∈ C ⟶ θ x 1 + ( 1 − θ ) x 2 ∈ C 、 ∀ 0 ≤ θ ≤ 1 x_1,x_2{\in}C{\longrightarrow}{\theta} x_1+(1-{\theta})x_2{\in}C,{\forall}0{\le}{\theta}{\le}1バツ1、バツ2∈ C ⟶ θ x1+( 1−私)×2C _ _ _ _ _ _ _
_
_ = θ 1 x 1 + θ 2 x 2 + ⋯ +
θ kxkx={\theta}_1x_1+{\theta}_2x_2+\cdots+{\theta}_kx_kバツ=私1バツ1+私2バツ2+⋯+私kバツk
1 = θ 1 + θ 2 + ⋯ + θ k 、θ i ≥ 0 、i = 1 , 2 , ⋯ , k 1={\theta}_1+{\theta}_2+\cdots+{\theta}_k,{\theta }_i{\ge}0,i=1,2,\cdots,k1=私1+私2+⋯+私k、私私は≥ 0 、私=1 、2 、⋯、k
の点はx 1 、 x 2 、 ⋯ 、 xk x_1,x_2,\cdots,x_k とバツ1、バツ2、⋯、バツkの凸組み合わせ、セットSSSの中点のすべての凸状の組み合わせのセットはSSSの凸包はconv S conv Sと表されます。con v S、つまりconv S convScon v SにはSS が含まれますSの最小凸集合
θ i ≥ 0 の場合、{\theta}_i{\ge}0 は凸組み合わせの定義から削除されます。私私は≥ 0 の制限により、affine パッケージの概念が得られます。 Affine
パッケージ:SSSはR n R^nですRnの部分集合
は、S のアフィン バッグとして次の集合と呼ばれます: { x ∣ x = x = θ 1 x 1 + θ 2 x 2 + ⋯ + θ kxk , x 1 , x 2 , ⋯ , xk ∈ S , θ 1 + θ 2 + ⋯ + θ k = 1 } \{x|x=x={\theta}_1x_1+{\theta}_2x_2+\cdots+{\theta}_kx_k, x_1,x_2,\cdots,x_k{\in } S、{\theta} _1+{\theta}_2+\cdots+{\theta}_k=1\}{
x ∣ x=バツ=私1バツ1+私2バツ2+⋯+私kバツk、バツ1、バツ2、⋯、バツk∈ S 、私1+私2+⋯+私k=1 } affine SaffineS
として示される一般に、セットのアフィン パッケージは、実際には、そのセットを含む最小のアフィン セットです。たとえば、 x = θ 1 x 1 + θ 2 x 2 、 θ 1 > 0 、 θ 2 > 0 x= などです
。 {\theta}_1x_1+{\theta}_2x_2、{\theta}_1>0、{\theta}_2>0
バツ=私1バツ1+私2バツ2、私1>0 、私2>0の点を点x 1 、x 2 x_1、x_2
と呼びますバツ1、バツ2コーンコンビネーション、 SSセットの場合S内の任意の点の円錐の組み合わせはSSSでは、 S は凸円錐と呼ばれます
2.4.2 重要な凸集合
1. 超平面と半空間
任意の非ゼロベクトルaaを取得しますa,形如{ x ∣ a T x = b } \{x|a^Tx=b\}{
x ∣ aT ×=b }の集合は超平面と呼ばれ、その形式は{ x ∣ a T x ≤ b } \{x|a^Tx{\le}b\} です。{
x ∣ aT x≤b}半空間aaa は、対応する超平面と半空間の法線ベクトルです。超平面はR n R^nとなります。Rnは 2 つの半空間に分割され、超平面はアフィン集合と凸集合であり、半空間は凸集合であるがアフィン集合ではないことが容易にわかります (これは理解していれば容易に理解できるはずです)アフィン集合と凸集合の概念)
2. 球、楕円体、円錐
球と楕円体も一般的な凸集合です。ここではこれ以上の球は紹介しません。{ x ∣ ( x − xc ) TP − 1 ( x − x ) c ) ≤ 1 } \{x|(x-x_c) のような
形状
^TP^{-1}(xx)_c){\le}1\}{
x ∣ ( x−バツc)TP _− 1 (×−× )c) ≤ 1 }
は楕円体と呼ばれます。ここで P は対称かつ正定であり、楕円体の別の表現は{ xc + A u ∣ ∣ u 2 ∣ ∣ ≤ 1 } \{x_c+Au||u_2||{\ le }1\}{
×c+A u ∣∣ u2∣∣ ≤ 1 } , A は非特異正方行列
. さらに、集合を
{ ( x , t ) ∣ ∣ ∣ x ∣ ∣ ≤ t } \{(x,t)|||x|| と呼びます。 {\le} t\}{( x ,t ) ∣∣∣ x ∣∣ ≤ t }
はノルム円錐です。ユークリッドのノルム円錐は二次円錐とも呼ばれます。ノルム円錐は凸集合です。tt を忘れ
ないでくださいtも変数です。この図を見ると、ノルム コーンについてよく理解できるはずです。Zhihu
リンク: https://zhuanlan.zhihu.com/p/126072881
3.多面体
一次方程式と不等式を満たす点の集合を多面体と呼びます。つまり、
{ x ∣ A x ≤ b , C x = d } \{x|Ax{\le}b,Cx=d\}{
x ∣ A x ≤ b 、C ×=d }
多面体は有限の半空間と超平面の交差点であるため、凸集合です。
4. (半) 正定円錐
まずは本の内容を載せておきますが、まだよく理解していないので詳しくは言えません。
2.4.3 凸性維持操作
集合が凸であることを証明するには 2 つの方法があります。1 つ目は、定義
x 1 , x 2 ∈ C , 0 ≤ θ ≤ 1 ⟶ θ x 1 + ( 1 − θ x 2 ) ∈ C x_1,x_2{ \in }C,0{\le}{\theta}{\le}1{\longrightarrow}{\theta}x_1+(1-{\theta}x_2){\in}Cバツ1、バツ2∈ C 、0 ≤ θ ≤ 1 ⟶ θ x1+( 1−θ ×2) ∈ C集合CCCは凸集合です。
2 番目の方法は、集合 C が単純な凸集合 (先ほど述べた超平面、半空間、ノルム球など) から凸性保存操作によって得られることを説明するものです。
定理 1: 複数の凸集合の積は凸集合である
定理 2:f : R n → R mf:R^n{\rightarrow}R^mf:Rn →Rm是仿射变换(f ( x ) = A x + b , A ∈ R m ∗ n , b ∈ R nf(x)=Ax+b,A{\in}R^{m*n},b{ \in}R^nf ( x )=あ×+b 、A ∈ Rm ∗ n、b ∈ Rn )、その後、
(1) 凸集合はfffの下の画像
は凸集合です: S は凸集合です → f ( S ) → { f ( x ) ∣ x ∈ S } は凸集合です S は凸集合です {\rightarrow}f(S){\rightarrow }\{f (x)|x{\in}S\} は凸集合ですSは凸集合→ f ( S ) → {
f ( x ) ∣ x ∈ S }は凸集合
(2) 凸集合はfffの下の元の画像
は凸集合です C は凸集合です → f − 1 ( C ) → { x ∈ R n ∣ f ( x ) ∈ C } は凸集合です C は凸集合です {\rightarrow}f^ {-1} (C){\rightarrow}\{x{\in}R^n|f(x){\in}C\} は凸集合ですCは凸集合→ f− 1 (C)→{
x∈Rn ∣f(x)∈C}は凸集合です
。つまり、スケーリング、変換、または投影の後でも凸集合のままです。
2.4.4 分離超平面定理
これは凸集合の重要な性質です, つまり, 素な凸集合は超平面によって分離することができます. 最も基本的な結果は分離超平面定理とそれをサポートする超平面定理です. 分離超平面定理: C と D が 2 つの素な凸集合である
場合、ゼロ以外のベクトルaaが存在します。aと常熟bbb,
a T x ≤ b , ∀ x ∈ C ,かつ a T x ≥ b , ∀ x ∈ D a^Tx{\le}b,{\forall}x{\in}C,anda^Tx{ \ge}b,{\forall}x{\in}DあるT x≤b、∀ x ∈ C 、そして、T x≥b、∀ x ∈ D
は超平面{ x ∣ a T x = b } \{x|a^Tx=b\}{
x ∣ aT ×=b }区切られたCCCとDDD
厳密な分離定理: つまり、厳密な不等号は上記で確立されています。詳細については説明しません。
サポートする超平面: 与えられた集合CCC上のx 0 x_0バツ0、a ≠ 0 の場合、a{\neq}0ある= 0满足a T x ≤ a T x 0 , ∀ x ∈ C a^Tx{\le}a^Tx_0,{\forall}x{\in}CあるT x≤aT ×0、∀ x ∈ Cの場合、集合
{ x ∣ a T x = a T x 0 } \{x|a^Tx=a^T{x_0}\}{
x ∣ aT ×=あるT ×0} CC
の場合Cは境界点x 0 x_0バツ0サポート超平面
は幾何学的に言えば、この超平面は集合CCと同一です。C は点x 0 x_0バツ0サポート超平面定理の接線
: C が凸集合の場合、C の境界点にサポート超平面が存在します。
この定理は実際に非常に強力な幾何学的直観を持っています。つまり、平面が与えられた後、凸集合の境界が決まります。凸セットの任意の点は、凸セットを平面上に配置するためのサポート ポイントとして使用されます。他の形状のセットには通常、このプロパティがありません。
2.5 凸関数
凸関数については誰もが聞いたことがあると思いますが、その具体的な定義を見てみましょう(私は今のところあまり知りません)
2.5.1 凸関数の定義
凸関数: 関数をffにしますfはdomf domfの場合に適切な関数です場のd o m f
、f ( θ x + ( 1 − θ ) y ) ≤ θ f ( x ) + ( 1 − θ ) f ( y ) f({\theta}x+(1-{\theta) })y){\le}{\theta}f(x)+(1-{\theta})f(y)f ( θ x+( 1−θ ) y ) ≤ θ f ( x )+( 1−
すべての x 、 y ∈ domf に対するθ ) f ( y )、 0 ≤ θ ≤ 1 x,y{\in}domf,0{\le}{\theta}{\le}1× 、y ∈ d o m f 、0 ≤ θ ≤ 1が真であり、 ff と呼ばれますfは凸関数です.
直感的に言えば, 凸関数の画像上の任意の 2 点を結ぶ線分は関数画像の上にあります.
対応して, 凹関数もあります, if− f -f− fは凸関数なので、fffは凸関数です。凸関数の多くのプロパティは、符号を変更するだけで凹関数に適用できます。
また、ドムフドムフd o m f範囲、
f ( θ x + ( 1 − θ ) y ) < θ f ( x ) + ( 1 − θ ) f ( y ) f({\theta}x+(1-{\theta }) y)<{\theta}f(x)+(1-{\theta})f(y)f ( θ x+( 1−イ)イ)<θ f ( x )+( 1−θ ) f ( y )
とし、 x 、 y ∈ domf 、 x ≠ y 、 0 ≤ θ ≤ 1 x,y{\in}domf,x{\neq}y,0{\le}{\theta}{ \ とします。そして}1× 、y ∈ d o m f 、バツ= y、0 ≤ θ ≤ 1が真の場合、 ffと呼ばれますfは厳密な凸関数です。
一般的に使用される別のタイプの凸関数、強凸関数が
。定数m > 0 m>0メートル>0、
g ( x ) = f ( x ) − m 2 ∣ ∣ x ∣ ∣ 2 g(x)=f(x)-\frac{m}{2}||x||^2 となるg ( x )=f ( x )−2メートル∣∣ × ∣ ∣2
は凸関数なので、f ( x ) f(x)f ( x )は強凸関数です。ここでmmmは強凸関数 であり、m 強凸関数とも呼ばれます。g ( x ) g(x)
としますg ( x )を凸関数の定義に適用すると
定数m > 0 がある場合 m>0メートル>0、任意のx, y ∈ domf, 0 < θ < 1 x,y{\in}domf, 0<{\theta}<1 となる× 、y ∈ d o m f ,0<私<1 ,if
f ( θ x + ( 1 − θ ) y ) ≤ θ f ( x ) + ( 1 − θ ) f ( y ) − m 2 θ ( 1 − θ ) ∣ ∣ x − y ∣ ∣ 2 f( {\theta}x+(1-{\theta})y){\le}{\theta}f(x)+(1-{\theta})f(y)-\frac{m}{2}{ \theta}(1-{\theta})||xy||^2f ( θ x+( 1−θ ) y ) ≤ θ f ( x )+( 1−i ) f ( y )−2メートル私( 1−i ) ∣∣ x−y ∣ ∣2はf ( x ) f(x)
と呼ばれます。f ( x )は強凸関数です。ここでmmmは強凸のパラメーターです。
これら 2 つの定義から、
(1) 強凸の関数から正定 2 次関数を引いたものは依然として凸です
(2) 強凸の関数は厳密に凸関数でなければなりません、m = 0 m=0メートル=0で凸関数に縮退します。
重要な定理: Letfffは強凸関数で最小値があり、その最小値点は一意です。具体
的な証明は矛盾によって証明できます。非常に簡単です。最小値点x、yx、y× 、yを強凸関数の定義に代入します
。fの最小値が存在することが前提です。そうでない場合、強凸関数の大域的最小点は必ずしも存在するとは限りません。
2.5.2 凸関数決定定理
凸関数を決定する最も基本的な方法の 1 つは、まず凸関数を任意の直線に限定し、次に対応する 1 次元関数が凸関数であるかどうかを決定することです。定理 1: f (x) f(
x )f ( x )は、任意の x ∈ domf 、 v ∈ R n 、 g : R → R x{\in}domf,v{\in}R^n,g:R{\rightarrow についての場合に限り、凸関数です。}Rx ∈ d o m f 、v ∈ Rn、g:R → R,
g ( t ) = f ( x + tv ) , domg = { t ∣ x + tv ∈ domf } g(t)=f(x+tv), domg=\{t|x+tv{\で}ダムフ\}g ( t )=f ( x+テレビ)、_ドmg _ _={
t ∣ x+t v ∈ d o m f }
は凸関数です
。具体的な証明は難しくも簡単でもありません。理解したい場合は、Baidu に来て相談してください (理解するのに 20 分と 30 分かかりました TT )
以下に、実際によく遭遇する凸(凹)関数をいくつか示します。
(1) 指数関数:eax, a, x ∈ R e^{ax},a,x{\in}Re×、 _、_x ∈ Rは凸関数です
(2) べき関数:xa ( x > 0 ) x^a(x>0)バツ( ×_>0 ),当α ≥ 1 \alpha{\ge}1α ≥ 1またはα ≤ 0 {\alpha}{\le}0α≤0时为凸函数
(3)负熵: x l n x ( x > 0 ) xlnx(x>0) xlnx(x>0)是凸函数
(4)所有范数都是凸函数(向量和矩阵版本)
又来一个判断的定理2:对于定义在凸集上的可微函数 f f f, f f f是凸函数当且仅当
f ( y ) ≥ f ( x ) + ∇ f ( x ) T ( y − x ) , ∀ x , y ∈ d o m f f(y){\ge}f(x)+{\nabla}f(x)^T(y-x),{\forall}x,y{\in}dom f f(y)≥f(x)+∇f(x)T(y−x),∀x,y ∈ d o m f
の具体的な証明は
. この定理は, 割り切れる凸関数fffのグラフはどの点でも常に接線の上にあるため、微分可能な凸関数ff任意の点におけるfの一次近似は、 ffとして取得できます。fのグローバル下限
定理 3:fffが微分可能な関数である場合、fffは、 domf domfの場合にのみ凸関数です。d o m f は凸集合であり、∇ f {\nabla}f∇ fは単調写像です。つまり、
( ∇ f ( x ) − ∇ f ( y ) ) T ( x − y ) ≥ 0 , ∀ x , y ∈ domf ({\nabla}f(x)-{\ナブラ} f(y))^T(xy){\ge}0,{\forall}x,y{\in}domf( ∇ f ( x )−∇ f ( y ) )T(x−y)≥0,∀x,y∈domf
具体证明也不说咯
推论:设 f f f为可微函数,且 d o m f domf domf是凸集,则
(1) f f f是严格凸函数当且仅当
( ∇ f ( x ) − ∇ f ( y ) ) T ( x − y ) > 0 , ∀ x , y ∈ d o m f ({\nabla}f(x)-{\nabla}f(y))^T(x-y)>0,{\forall}x,y{\in}domf (∇f(x)−∇f(y))T(x−y)>0,∀x,y ∈ d o m f
(2)fffは、
( ∇ f ( x ) − ∇ f ( y ) ) T ( x − y ) ≥ m ∣ ∣ x − y ∣ ∣ 2 , ∀ x , y ∈ domf ({ \ nabla}f(x)-{\nabla}f(y))^T(xy){\ge}m||xy||^2,{\forall}x,y{\in}domf( ∇ f ( x )−∇ f ( y ) )T (×−y ) ≥ m ∣∣ x−y ∣ ∣2 、∀ × 、y ∈ d o m f
さらに、関数が 2 階連続微分可能である場合、次の 2 階条件定理を得ることができ
ます
。fは凸集合上で定義された 2 次の連続微分可能な関数であり、fff は、 ∇ 2 f ( x ) ≥ 0 、 ∀ x ∈ domf {\nabla^2f(x){\ge}0},{\forall}x{\in}domf の場合に限り凸関数です。
∇2 f(x)≥0、∀ x ∈ d o m f
if∇ 2 f ( x ) > 0 , ∀ x ∈ domf {\nabla}^2f(x)>0,{\forall}x{\in}domf∇2 f(x)>0 、∀ x ∈ d o m f、その後fh fhf hは厳密な凸関数です。
この数も学習でき、非常に使いやすいです。関数が 2 階の連続微分可能である場合は、通常、これを使用した方が便利です。
2.5.3 凸性保存操作
まず、関数が凸であることを証明するために使用される 3 つの方法を要約しましょう:
(1) 1 つは、定義を使用して凸性を検証する方法で、通常は関数を直線に制限します
(2) もう 1 つは、一次条件を使用し、関数を証明するための 2 次条件
(3) の凸性 3 つ目はffを直接調べることですf EPIF EPIFの上のグラフep i f
今ff _f は、いくつかの凸性を維持する操作を介して単純な凸関数から取得できます。
定理:
(1) Iffffが凸関数の場合、α f {\alpha}fα fは凸関数です。ここで、α ≥ 0 {\alpha}{\ge}0α ≥ 0
(2)f 1 , f 2 の場合 f_1,f_2f1、f2が凸関数の場合、f 1 + f 2 f_1+f_2f1+f2は凸関数
(3) if fffが凸関数の場合、f (A x + b) f(Ax+b)f ( Ax _+b )は凸関数
(4) iff 1 , f 2 , ... , fm f_1,f_2,...,f_mf1、f2、... 、fメートルが凸関数の場合、f ( x ) = max { f 1 ( x ) , f 2 ( x ) , . . , fm ( x ) } f(x)=max\{f_1(x),f_2(x ) ,...,f_m(x)\}f ( x )=マックス{ f _
1( x ) 、f2( x ) 、... 、fメートル( x )} は凸関数です
(5) if 各y ∈ A , f ( x , y ) y{\in}A,f(x,y)y ∈ A 、f ( x ,y ) xxについてxが凸関数の場合、
g ( x ) = supy ∈ A f ( x , y ) g(x)={sup}_{y{\in}A}f(x,y)g(x)=supy∈Af(x,y)
是凸函数
(6)给定函数 g : R n → R , h : R → R g:R^n{\rightarrow}R,h:R{\rightarrow}R g:Rn→R,h:R→R,令 f ( x ) = h ( g ( x ) ) f(x)=h(g(x)) f(x)=h(g(x))若 g g g是凸函数, h h h是凸函数且单调不减,那么 f f f是凸函数,若 g g g是凹函数, h h h是凸函数且单调不增,那么 f f fは凸関数
(7) 与えられた関数g : R n → R k , h : R k → R g:R^n{\rightarrow}R^k,h:R^k{\rightarrow}Rg:Rn →Rk、h:Rk →R,
f ( x ) = h ( g ( x ) ) = h ( g 1 ( x ) , g 2 ( x ) , . . . , gk ( x ) ) f(x)=h(g(x ))=h(g_1(x),g_2(x),...,g_k(x))f ( x )=h ( g ( x ))=h ( g1( x ) 、g2( x ) 、... 、gk( x ))
若木g_ig私はは凸関数です、うーんhは凸関数であり、各成分に関して単調非減少である場合、fff是凸函数,若 g i g_i gi是凹函数, h h h是凸函数且单调不增,那么 f f f是凸函数
(8)若 f ( x , y ) f(x,y) f(x,y)关于 ( x , y ) (x,y) (x,y)整体是凸函数, C C C是凸集,则
g ( x ) = i n f y ∈ C f ( x , y ) g(x)=inf_{y{\in}C}f(x,y) g(x)=infy∈Cf(x,y)
是凸函数
(9)定义函数 f : R n → R f:R^n{\rightarrow}R f:Rn→R的透视函数 g : R n ∗ R → R g:R^n*R{\rightarrow}R g:Rn∗R→R
g ( x , t ) = t f ( x t ) , d o m g = { ( x , t ) ∣ x t ∈ d o m f , t > 0 } g(x,t)=tf(\frac{x}{t}),domg=\{
{(x,t)}|\frac{x}{t}{\in}domf,t>0\} g(x,t)=tf(tx),domg={
(x,t)∣tx∈domf,t>0}
若f是凸函数,则g是凸函数
2.5.4 凸函数的性质
1.连续性
まず最初に、これまでの定理や証明は凸関数が連続関数であることを示していませんが、次の定理は定義領域内の凸関数の内点が連続であることを示していることを説明します。 R n → ( − ∞ , +
∞ ) f:R^n{\rightarrow}(-{\infty},+{\infty})f:Rn →(−∞,+ ∞ )は、任意の点x 0 ∈ intdomf x_0{\in}intdomfに対する凸関数です。バツ0∈ t d o m fにはffがありますf atx 0 x_0バツ0は連続です、ここではintdomf intdomfin t d o m f はドメインdomf domfd o m fの内点 内点の
定義: この点は、定義域に完全に含まれる領域に存在します
。 系:f ( x ) f(x)f ( x )は凸関数であり、domf domfd o m f が開集合の場合、f ( x ) f(x)domf domfのf ( x )d o m fが連続である
理由は非常に単純で、開集合内の点はすべて内点であるからです。
2. 凸レベルセット
凸関数の下位レベルの集合はすべて凸集合です。つまり、次の結果が得られます。f ( x ) f(x)
とします。f ( x )が凸関数の場合、f (x) f(x)すべてのα {\alpha}に対するf ( x )α - 下位レベルセットC α C_{\alpha}Cあるは凸集合です。
前の内容を復習するために、証明しましょう
。x 1 . x 2 ∈ C α x_1.x_2{\in}C_{\alpha} とします。バツ1。バツ2∈C _ある、任意のθ ∈ ( 0 , 1 ) {\theta}{\in}(0,1)に対してθ ∈ ( 0 ,1 ) 、最初はf (x) f(x)に従ってf ( x ) fの無限大
( θ x 1 + ( 1 − θ ) x 2 ) ≤ θ f ( x 1 ) + ( 1 − θ ) f ( x 2 ) ≤ θ α + ( 1 − θ ) α = α f({\theta}x_1+(1-{\theta})x_2){\and}{\theta}f(x_1)+(1-{\theta})f(x_2){\and}{ \theta} {\alpha}+(1-{\theta}){\alpha}={\alpha}f ( θ x1+( 1−私)×2) ≤ θ f ( x1)+( 1−i ) f ( x2) ≤ θ α+( 1−私)a=αこれ
で認定は完了です、それでも分からない場合は戻って確認してください。
3. 二次方程式の下限
強凸関数は二次下限
(二次下限) の性質を持ちます。f ( x ) f(x)とします。f ( x )はパラメータmmmが微分可能な強凸関数の場合、次の不等式が成り立ちます:
f ( y ) ≥ f ( x ) + ∇ f ( x ) T ( y − x ) + m 2 ∣ ∣ y − x ∣ ∣ 2 , ∀ x , y ∈ domff(y){\ge}f(x)+{\nabla}f(x)^T(yx)+{\frac{m}{2}}||yx||^2,{\forall } x,y{\in}domff ( y ) ≧ f ( x )+∇ f ( x )T (y−× )+2メートル∣∣ y−× ∣ ∣2、∀x、y ∈ d o m f
の証明はここでは与えられません. 二次下限を使用すると, 微分可能な強凸関数の下位レベルのセットがすべて有界であることが簡単に推測できます. 系: ff と
しますfが微分可能な強凸関数である場合、fffのすべてのα {\alpha}α - 下位レベルのセットは有界です
2.6 共役関数
2.6.1 共役関数の定義と例
共役関数は凸解析における重要な概念です
共役関数の定義: 任意の適切な関数fffの共役関数は、
f ∗ ( y ) ≤ sup { y T x − f ( x ) } 、 x ∈ domff^*(y){\le}sup\{y^Tx-f(x)\ として定義されます。 } ,x{\in}domff∗ (y)≤sup{ y_
T ×−f ( x )} 、x ∈ d o m f
は単なる一次関数y T xy^TxyTx与f(x)的最大差值
对于每一个y,我们看图应该就很好明白了
设 f f f为 R R R上的适当函数,对任何函数 f f f都可以定义共轭函数,共轭函数 f ∗ f^* f∗恒为凸函数
借用一下知乎上对共轭函数的作用的说明
对于共轭函数,我们有以下重要的不等式
Fenchel不等式
f ( x ) + f ∗ ( y ) ≥ x T y f(x)+f^*(y){\ge}x^Ty f(x)+f∗(y)≥xTy
以下我们给出一些常见函数的共轭函数
1.二次函数
考虑二次函数
f ( x ) = 1 2 x T A x + b T x + c f(x)=\frac{1}{2}x^TAx+b^Tx+c f(x)=21xTAx+bTx+c
(1)强凸情形( A > 0 A>0 A>0):
f ∗ ( y ) = 1 2 ( y − b ) TA − 1 ( y − b ) − cf^*(y)=\frac{1}{2}(yb)^TA^{-1} (yb)-cf∗ (y)=21( y−b )TA _− 1 (y−b )−c
(2) 一般的な凸の場合 (A ≥ 0 A{\ge}0A ≥ 0 ):
f ∗ ( y ) = 1 2 ( y − b ) TA + ( y − b ) − c , domf ∗ = R ( A ) + bf^*(y)=\frac{1}{2 }(yb)^TA^+(yb)-c,domf^*=R(A)+bf∗ (y)=21( y−b )TA _+ (y−b )−c 、ドmf _ _∗=R ( A )+bここで
R(A) は A の画像空間です。
画像空間は値領域です。このA + A^+あ+の意味が未だに分かりません
2. 凸集合の指示関数
给定凸集C,其示性函数为
I C ( x ) = { 0 x ∈ C + ∞ x ∉ C I_C(x)= \begin{cases} 0& \text{x$\in$C}\\ +{\infty}& \text{x$\notin$C} \end{cases} IC(x)={
0+∞x∈Cx∈/C
可知对应的共轭函数为
I c ∗ ( y ) = s u p x { y T x − I C ( x ) } = s u p x ∈ C y T x I_c^*(y)=sup_x\{y^Tx-I_C(x)\}=sup_{x{\in}C}y^Tx Ic∗(y)=supx{
yTx−IC(x)}=supx∈CyTx
这里 I C ∗ I_C^* IC∗又称为凸集 C C C的支撑函数
3.范数
ノルムの共役関数は、その単位双対ノルム球の代表関数です。つまり、f ( x ) = ∣ ∣ x ∣ ∣ f(x)=||x|| の場合です。f ( x )=∣∣ x ∣∣ ,则
f ∗ ( x ) = { 0 ∣ ∣ y ∣ ∣ ∗ ≤ 1 + ∞ ∣ ∣ y ∣ ∣ ∗ > 1 f^*(x)= \begin{cases} 0& \text{
{ $||y||_*$}$\le$1}\\ +{\infty}& \text{ {
$||y||_*$}$>$1} \end{cases}f∗ (×)={
0+ ∞∣∣ y ∣ ∣∗≤1∣∣ y ∣ ∣∗>1
2.6.2 二次共役関数
(二次共役関数) 任意の関数fffの二次共役関数は、
f ∗ ∗ ( x ) = supy ∈ domf ∗ sup { x T y − f ∗ ( y ) } f^{**}(x)=sup_{y{\in}domf として定義されます。 ^*}sup\{x^Ty-f^*(y)\}f** (×)=補足_ _y ∈ d o m f∗サップ{ x _ _
Ty _−f∗ (y)}
明らかにf ∗ ∗ f^{**}f∗∗ は常に閉じた凸関数です (どこが明らかかはわかりませんが)。フェンケルの不等式から、
f ∗ ∗ ( x ) ≤ f ( x ) 、 xf^{**}(x){\ であることがle}f(x),{\forall}xf∗∗ (x)≤f(x)、∀ x
または同等の、epif = euroif ∗ ∗ epif=epif^{**}エピファ_ _ _=エピファ_ _ _***
定理:fff が閉じた凸関数である場合、
f ∗ ∗ ( x ) = f ( x ) 、 ∀ xf^{**}(x)=f(x),{\forall}xf** (×)=f ( x ) 、∀ x
または同等の、epif = euroif ∗ ∗ epif=epif^{**}エピファ_ _ _=エピファ_ _ _***
具体的な証明についてはここでは詳しく説明しません。
2.7 勾配
2.7.1 部分勾配の定義
微分関数の勾配については前に紹介しましたが、一般関数の場合、あらかじめ定義した勾配が必ずしも存在するわけではなく、凸関数の場合は、勾配の一次性質から類推して、部分勾配(subgradient)の概念を導入することができます。fffは適切な凸関数、xxxはドメインdomf domfd o m f内の点g ∈ R ng{\in}R^ng ∈ Rn满十分
f ( y ) ≥ f ( x ) + g T ( y − x ) , ∀ y ∈ domff(y){\ge}f(x)+g^T(yx),{\forall}y{\イン}ダムフf ( y ) ≧ f ( x )+gT (y−x ) 、∀ y ∈ do m fはgg
と呼ばれますgは関数fff は点xxさらに、 x
における部分勾配は集合 ∂ f ( \partial}f(x)=\{g|g{\in}R^n,f(y){\ge}f(x)+g^ と呼ばれます。 T(yx)、{\forall}y{\in} domf\}∂ f ( x )={
g ∣ g ∈ Rn、f ( y ) ≧ f ( x )+gT (y−x ) 、∀y∈domf}
为 f f f在点 x x x处的次微分
可以看出,次梯度实际上借鉴了凸函数判定定理的一阶条件,定义次梯度的初衷之一也是希望他具有类似于梯度的一些性质
从次梯度的定义可以直接推出,若 g g g是 f ( x ) f(x) f(x)在 x 0 x_0 x0处的次梯度,则函数
l ( x ) = f ( x 0 ) + g T ( x − x 0 ) l(x)=f(x_0)+g^T(x-x_0) l(x)=f(x0)+gT(x−x0)
为凸函数 f ( x ) f(x) f(x)的一个全局下界,此外,次梯度 g g g可以诱导出上方图 e p i f epif epif在点 ( x , f ( x ) ) (x,f(x)) (x,f(x))处的一个支撑超平面
接下来一个问题就是,次梯度在什么条件下是存在的?实际上对一般凸函数 f f f而言, f f f未必在所有的点处都存在次梯度,但对于定义域中的内点, f f f在其上的次梯度总是存在的
定理:设 f f f为凸函数, d o m f domf domf为其定义域,如果 x ∈ i n t d o m f x{\in}intdomf x∈intdomf,则 ∂ f ( x ) {\partial}f(x) ∂ f ( x )は空ではない
部分勾配であり、ある時点では微分不可能な関数として理解できます。この場合、その点で関数の可能なすべての勾配の範囲を表す部分勾配のセットを計算できます。
2.7.2 部分勾配の性質
凸関数f ( x ) f(x)f ( x )の部分勾配と部分微分には多くの有用な特性があります。次の定理は、部分微分∂ f ( x ) {\partial}f(x) である∂ f ( x )は、特定の条件下で閉じた凸集合の
(定理)fffは凸関数、∂ f ( x ) {\partial}f(x)∂ f ( x )には次の特性があります:
(1) 任意のx ∈ domfx{\in}domfx ∈ d o m f,∂ f ( x ) {\partial}f(x)∂f(x)是一个闭凸集(可能是空集)
(2)如果 x ∈ i n t d o m f x{\in}intdomf x∈intdomf,则 ∂ f ( x ) {\partial}f(x) ∂f(x)为非空有界集
PS:闭集:一个包含其所有极限点的集合(一个补集为开集的集合)
证明此处略
当凸函数 f ( x ) f(x) f(x)在某点处可微时, ∇ f ( x ) {\nabla}f(x) ∇f(x)就是 f ( x ) f(x) f(x)在该点处唯一的次梯度
即设 f ( x ) f(x) f ( x )在x 0 ∈ intdomf x_0{\in}intdomfバツ0∈ in t d o m fが微分可能である場合、
∂ f ( x 0 ) = { ∇ f ( x 0 ) } {\partial}f(x_0)=\{ { \
nabla}f(x_0)\}∂ f ( x0)={
∇ f ( x0)}
定理 (部分勾配の単調性): f: R n → R f: R^n{\rightarrow}Rとします。f :Rn →Rは凸関数x , y ∈ domfx,y{\in}domf× 、y ∈ d o m f,则
( u − v ) T ( x − y ) ≥ 0 (uv)^T(xy){\ge}0(あなた−v )T (×−y ) ≥ 0
其中u ∈ ∂ f ( x ) , v ∈ ∂ f ( y ) u{\in}{\partial}f(x),v{\in}{\partial}f(y)u ∈ ∂ f ( x ) 、v ∈ ∂ f ( y )
の証明は非常に簡単です
閉じた凸関数 (つまり、凸半連続関数) の場合、部分勾配にもある程度の連続性があります。
定理: f (x) f(x)とします。f ( x )は閉じた凸関数であり、∂ f ( x ) {\partial}f(x)∂ f ( x )点xxシーケンスxk → x ˉ x^k{\rightarrow}\bar{x}の場合、 xの近くに存在し、空ではないバツk →バツˉ, g k ∈ ∂ f ( x k ) g^k{\in}{\partial}f(x^k) gk∈∂f(xk)为 f ( x ) f(x) f(x)在点 x k x^k xk处的次梯度,且 g k → g ˉ g^k{\rightarrow}\bar{g} gk→gˉ,则 g ˉ ∈ ∂ f ( x ˉ ) \bar{g}{\in}{\partial}f(\bar{x}) gˉ∈∂f(xˉ)
证明有用到那个连续性,这里略
2.7.3 凸函数的方向导数
在数分中,我们知道方向导数的概念,设 f f f为适当函数,给定点 x 0 x_0 x0以及方向 d ∈ R n d{\in}R^n d∈Rn、方向導関数 (存在する場合) は次のように定義されます
lim t ↓ 0 ϕ ( t ) = lim t ↓ 0 f ( x 0 + td ) − f ( x 0 ) t \lim_{t{\downarrow} 0}\ phi(t)=\lim_{t{\downarrow}0}\frac{f(x_0+td)-f(x_0)}{t}t ↓ 0リムϕ ( t )=t ↓ 0リムtf ( x0+t d )−f ( x0)
ここでt ↓ 0 t{\downarrow}0t ↓ 0 はttを意味します凸関数f ( x ) f(x)の場合、 t は0 に向かって単調減少します。f ( x ) 、 ϕ ( t ) {\phi(t)}を知るのは簡単ですϕ ( t ) (0 , + ∞ ) (0,+{\infty})( 0 ,+∞)上是单调不减的,上述此时极限总是存在(可以为无穷),所以凸函数总是可以定义方向导数
定义(方向导数):对于凸函数 f f f,给定点 x 0 ∈ d o m f x_0{\in}domf x0∈domf以及方向 d ∈ R n d{\in}R^n d∈Rn,其方向导数定义为
∂ f ( x 0 ; d ) = inf t > 0 f ( x 0 + t d ) − f ( x 0 ) t {\partial}f(x_0;d)=\inf_{t>0}\frac{f(x_0+td)-f(x_0)}{t} ∂f(x0;d)=t>0inftf(x0+td)−f(x0)
方向导数可能是正负无穷,但在定义域的内点处方向导数是有限的
即设 f ( x ) f(x) f ( x )は凸関数、x 0 ∈ intdomf x_0{\in}intdomfバツ0∈ in t d o m fの場合、任意のd ∈ R n に対して、 ∂ f ( x 0 ; d ) d{\in}R^n, {\partial}f(x_0;d)d ∈ Rn,∂f(x0;d )限定
凸関数の方向導関数と部分勾配の間には強い関係があります。次の結果は、凸関数f ( x ) f(x)がddに対するf ( x )d ∂ f ( x ; d ) {\partial}f(x;d)の方向導関数∂ f ( x ;d )はまさにfff は点xxx处的所有次梯度与 d d d的内积的最大值
定理:设 f : R n → ( − ∞ , + ∞ ] f:R^n{\rightarrow}(-{\infty},+{\infty}] f:Rn→(−∞,+∞]为凸函数,点 x 0 ∈ i n t d o m f x_0{\in}intdomf x0∈intdomf, d d d为 R n R^n Rn中任一方向,则
∂ f ( x 0 ; d ) = max g ∈ ∂ f ( x 0 ) g T d {\partial}f(x_0;d)=\max_{g{\in}{\partial}f(x_0)}g^Td ∂f(x0;d)=g∈∂f(x0)maxgTd _
上記の定理は、一般的なx ∈ domfx{\in}domfに適用できます。x ∈ d o m fは次のように一般化されます
。 定理:ff とfは適切な凸関数であり、x 0 x_0バツ0局所微分は空集合ではないため、任意のd ∈ R nd{\in}R^nに対してd ∈ Rn有
∂ f ( x 0 ; d ) = sup g ∈ ∂ f ( x 0 ) g T d {\partial}f(x_0;d)=\sup_{g{\in}{\partial}f(x_0 )}g^Td∂ f ( x0;d )=g ∈ ∂ f ( x0)スープgT d
当∂ f ( x 0 ; d ) {\partial}f(x_0;d)∂ f ( x0;d )無限大でない場合は、上限を求めることができる
2.7.4 部分勾配の計算規則
微分不可能な凸関数の部分勾配をどのように計算するかは、最適化アルゴリズムの設計において非常に重要な問題です。定義に従って部分勾配を計算すると、一般的により複雑になります。いくつかの部分勾配の計算ルールを紹介します。このセクションではどちらもデフォルトはx ∈ intdomfx{\in}intdomf であることを説明しますx ∈ in t d o m f
1. 基本ルール
まず、証明なしで部分勾配 (部分微分) を計算するための基本的な規則をいくつか示します
(1) 微分可能な凸関数: ffとします。ffの場合、 fは凸関数ですf は点xxxで微分可能である∂ f ( x ) = { ∇ f ( x ) } {\partial}f(x)=\{ {
\nabla}f(x)\}∂ f ( x )={
∇ f ( x )}
(2) 凸関数の非負の線形結合:f 1 , f 2 f_1,f_2f1、f2は凸関数であり、
intdomf ! ∩ intdomf 2 ≠ ∅ intdomf_!{\cap}intdomf_2{\not=}{\varnothing} を満たします。中では_ _ _!∩ in t d o m f2= ∅
而x ∈ intdomf ! ∩ intdomf 2 x{\in}intdomf_!{\cap}intdomf_2x ∈ in t d o m f!∩ in t d o m f2,若
f ( x ) = α 1 f 1 ( x ) + α 2 f 2 ( x ) , α 1 , α 2 ≥ 0 f(x)={\alpha}_1f_1(x)+{\alpha}_2f_2( x)、{\alpha}_1、{\alpha}_2{\ge}0f ( x )=ある1f1( × )+ある2f2( x ) 、ある1、ある2≥ 0
の場合、f ( x ) f(x)f ( x )の次微分
∂ f ( x ) = α 1 ∂ f 1 ( x ) + α 2 ∂ f 2 ( x ) {\partial}f(x)={\alpha}_1{\partial}f_1( x)+{\alpha}_2{\partial}f_2(x)∂ f ( x )=ある1∂ f1( × )+ある2∂ f2( x )
(3) 線形変数置換: lethhhは適切な関数であり、関数fff满十分
f ( x ) = h ( A x + b ) , ∀ x ∈ R mf(x)=h(Ax+b),{\forall}x{\in}R^mf ( x )=h ( Ax _+b )、∀ × ∈R _m
其中A ∈ R n ∗ m , b ∈ R n A{\in}R^{n*m},b{\in}R^nA ∈ Rn ∗ m、b∈R__n 、 x ∗ ∈ R mx^*{\in}R^mが存在する場合バツ∗ ∈Rm 、 A x ∗ + b ∈ intdomh Ax^*+b{\in}intdomhとなるあ×∗+b ∈ in t d o mh,则
∂ f ( x ) = AT ∂ h ( A x + b ) , ∀ x ∈ intdomf {\partial}f(x)=A^T{\partial}h(Ax+b) )、{\forall}x{\in}intdomf∂ f ( x )=あT ∂h(Ax+b )、∀ x ∈ in t d o m f
2. 2 つの関数の和の部分勾配
その他のモロー − ロッカフェラー Moreau-Rockafellarもっとあなたに_−ロッカフェラーの定理は、2 つの凸関数の合計の微分を計算する方法を示します。定理( Moreau
-Rockafellar):f 1 , f 2 : R n → ( − ∞ , + ∞ ] f_1 とします) ,f_2 :R^n{\rightarrow}(-{\infty},+{\infty}]f1、f2:Rn →(−∞,+ ∞ ] は2 つの凸関数であり、任意のx 0 ∈ R n x_0{\in}R^nバツ0∈ Rn ,
∂ f 1 ( x 0 ) + ∂ f 2 ( x 0 ) ⊆ ∂ ( f 1 + f 2 ) ( x 0 ) {\partial}f_1(x_0)+{\partial}f_2(x_0){\subseteq }{\部分}(f_1+f_2)(x_0)∂ f1( ×0)+∂ f2( ×0) ⊆ ∂ ( f1+f2) ( ×0)
さらに、intdomf 1 ∩ intdomf 2 ≠ ∅ intdomf_1{\cap}intdomf_2{\not=}{\varnothing}中では_ _ _1∩ in t d o m f2= ∅の場合、任意のx 0 ∈ R n x_0{\in}R^nバツ0∈ Rn
∂ ( f 1 + f 2 ) ( x 0 ) = ∂ f 1 ( x 0 ) + ∂ f 2 ( x 0 ) {\partial}(f_1+f_2)(x_0)={\partial}f_1(x_0) +{\partial}f_2(x_0)∂ ( f1+f2) ( ×0)=∂ f1( ×0)+∂ f2( ×0)
証明は省略
3. 関数族の上限
凸関数群の最高関数が凸であることを検証するのは簡単です. 以下の重要な結果が得られます:
定理 (Dubovitskii-Milyutin) f 1 , f 2 , ⋯ , fm : R n → ( − ∞ , + ∞ ] f_1, f_2,\cdots,f_m:R^n{\rightarrow}(-{\infty},+{\infty}]f1、f2、⋯、fメートル:Rn →(−∞,+ ∞ ]は凸関数です。
f ( x ) = max { f 1 ( x ) , f 2 ( x ) , ⋯ , fm ( x ) } , ∀ x ∈ R nf(x)=max\{f_1( x ),f_2(x),\cdots,f_m(x)\},{\forall}x{\in}R^nf ( x )=マックス{ f _
1( x ) 、f2( x ) 、⋯、fメートル( x )} 、∀ × ∈R _n
对x 0 ∈ ∩ i = 1 mintdomfi x_0{\in}{\cap_{i=1}^m}intdomf_iバツ0∈ ∩i = 1メートル中では_ _ _私は,定义I ( x 0 ) = { i ∣ fi ( x 0 ) = f ( x 0 ) } I(x_0)=\{i|f_i(x_0)=f(x_0)\}私(×0)={
i ∣ f私は( ×0)=f ( x0)},则
∂ f ( x 0 ) = conv ∪ i ∈ I ( x 0 ) ∂ fi ( x 0 ) {\partial}f(x_0)=conv{\cup}_{i{\in}I(x_0) )}{\partial}f_i(x_0)∂ f ( x0)=コン∪ _ _i ∈ I ( x0)∂ f私は( ×0)
具体的な証明は省略しており、ここで conv が何であるかが明確ではないかもしれません。以下のように
4. 固定成分を含む関数の最小値
h : R n ∗ R m → ( − ∞ , + ∞ ] h:R^n*R^m{\rightarrow}(-{\infty},+{\infty}] とします)h:Rn∗Rm →(−∞,+ ∞ ]は( x , y ) (x,y)についてです。( x ,y )の場合、f ( x ) = inf yh ( x , y ) f(x)=\inf_yh(x,y)f ( x )=fではいh ( x ,y )は約x ∈ R nx{\in}R^nx ∈ Rnの凸関数fff は点xxxにおける劣勾配
定理: 関数
f ( x ) = inf yh ( x , y ) f(x)=\inf_yh(x,y) を考えてみましょう。f ( x )=yfでh ( x ,y)
其中
h : R n ∗ R m → ( − ∞ , + ∞ ] h:R^n*R^m{\rightarrow}(-{\infty},+{\infty}] h:Rn∗Rm→(−∞,+∞]
是关于 ( x , y ) (x,y) (x,y)的凸函数,对 x ^ ∈ R n \hat{x}{\in}R^n x^∈Rn,设 y ^ ∈ R m {\hat{y}{\in}R^m} y^∈Rm满足 h ( x ^ , y ^ ) = f ( x ^ ) h({\hat{x}},{\hat{y}})=f(\hat{x}) h(x^,y^)=f(x^),且存在 g ∈ R n g{\in}R^n g∈R( g , 0 ) ∈ ∂ f ( x ^ ) (g,0){\in}{\partial}f(\hat{x}) となるようなn( g 、0 ) ∈ ∂ f (バツ^ ),则g ∈ ∂ f ( x ^ ) g{\in}{\partial}f(\hat{x})g ∈ ∂ f (バツ^ )
正直に言うと、これらは非常に抽象的なので、後で練習したほうが良いかもしれません。
5. 複合機能
複合関数の部分勾配については、次の連鎖律
定理があります。f 1 , f 2 , ⋯ , fm : R n → ( − ∞ , + ∞ ] f_1,f_2,\cdots,f_m:R^n{\ rightarrow}(-{\infty},+{\infty}]f1、f2、⋯、fメートル:Rn →(−∞,+∞]为m个凸函数, h : R m → ( − ∞ , + ∞ ] h:R^m{\rightarrow}(-{\infty},+{\infty}] h:Rm→(−∞,+∞]为关于各分量单调递增的凸函数,令
f ( x ) = h ( f 1 ( x ) , f 2 ( x ) , ⋯ , f m ( x ) ) f(x)=h(f_1(x),f_2(x),\cdots,f_m(x)) f(x)=h(f1(x),f2(x),⋯,fm(x))
设 z = ( z 1 , z 2 , ⋯ , z m ) ∈ ∂ h ( f 1 ( x ^ ) , f 2 ( x ^ ) , ⋯ , f m ( x ^ ) ) z=(z_1,z_2,\cdots,z_m){\in}{\partial}h(f_1(\hat{x}),f_2(\hat{x}),\cdots,f_m(\hat{x})) z=(z1,z2,⋯,zm)∈∂h(f1(x^),f2(x^),⋯,fm(x^)),以及 g 1 ∈ ∂ f i ( x ^ ) g_1{\in}{\partial}f_i(\hat{x}) g1∈∂fi(x^),则
g = z 1 g 1 , z 2 g 2 , ⋯ , z m g m ∈ ∂ f ( x ^ ) g=z_1g_1,z_2g_2,\cdots,z_mg_m{\in}{\partial}f(\hat{x}) g=z1g1,z2g2,⋯,zmgm∈∂f(x^)
就是 g g g为 f f f在点 x ^ \hat{x} x^的一个次梯度
感觉就跟正常的链式法则一样
到此为此,第二章基础知识已经过完啦,当然后面的章节肯定会有用到这部分内容的,到时候再回头看巩固一下,第三章是优化建模哦!