郑州建网站msgg,网站整体设计风格,免费网站建设推广,wordpress 阿里云 cdn文章目录 1. 梯度下降[线搜索方法]1.1 线搜索方法#xff0c;运用一阶导数信息1.2 经典牛顿方法#xff0c;运用二阶导数信息 2. hessian矩阵和凸函数2.1 实对称矩阵函数求导2.2. 线性函数求导 3. 无约束条件下的最值问题4. 正则化4.1 定义4.2 性质 5. 回溯线性搜索法 1. 梯度… 文章目录 1. 梯度下降[线搜索方法]1.1 线搜索方法运用一阶导数信息1.2 经典牛顿方法运用二阶导数信息 2. hessian矩阵和凸函数2.1 实对称矩阵函数求导2.2. 线性函数求导 3. 无约束条件下的最值问题4. 正则化4.1 定义4.2 性质 5. 回溯线性搜索法 1. 梯度下降[线搜索方法]
我们之前经常用到的梯度下降
1.1 线搜索方法运用一阶导数信息
迭代公式 x k 1 x k − s k ∇ f ( x k ) \begin{equation} x_{k1}x_k-s_k\nabla f(x_k) \end{equation} xk1xk−sk∇f(xk)步长 s k s_k sk也叫学习率方向 − ∇ f ( x k ) -\nabla f(x_k) −∇f(xk)负梯度方向
1.2 经典牛顿方法运用二阶导数信息
详细推导请点击链接
迭代公式 x k 1 x k − [ H j k ] − 1 ∇ f ( x ) \begin{equation} x_{k1}x_k-[H_{jk}]^{-1}\nabla f(x) \end{equation} xk1xk−[Hjk]−1∇f(x)步长 s k 1 s_k1 sk1把步长和方向结合起来放到方向里面去了。方向 hessian matrix 可逆时 [ H j k ] − 1 ∇ f ( x ) [H_{jk}]^{-1}\nabla f(x) [Hjk]−1∇f(x)
2. hessian矩阵和凸函数
如果hessian matrix H j k H_{jk} Hjk是半正定矩阵[positive semi-definite]或正定矩阵[positive definite]可得为函数是一般凸函数如果hessian matrix H j k H_{jk} Hjk是正定矩阵[positive definite]可得为函数是强凸函数
2.1 实对称矩阵函数求导
假设我们有一个实对称矩阵S和二次型函数表示如下 S [ 1 0 0 b ] , f ( x ) 1 2 x T S x 1 2 ( x 2 b y 2 ) \begin{equation} S\begin{bmatrix}10\\\\0b\end{bmatrix},f(x)\frac{1}{2}x^TSx\frac{1}{2}(x^2by^2) \end{equation} S 100b ,f(x)21xTSx21(x2by2)
矩阵S的特征值,条件数 κ ( S ) \kappa(S) κ(S)分别表示如下,假设 b 1 b1 b1 λ max 1 , λ min b , κ ( S ) 1 b \begin{equation} \lambda_{\max}1,\lambda_{\min}b,\kappa(S)\frac{1}{b} \end{equation} λmax1,λminb,κ(S)b1通过 f ( x ) f(x) f(x)函数可以明显看出最小值点为(0,0) arg min x ∗ 0 f ( x ) 0 \begin{equation} \argmin \limits_{x^*0}f(x)0 \end{equation} x∗0argminf(x)0函数一阶导数如下 d f ( x , y ) d X d 1 2 X T S X d X S X [ 1 0 0 b ] [ x y ] [ x b y ] \begin{equation} \frac{\mathrm{d}f(x,y)}{\mathrm{d}X}\frac{\mathrm{d}\frac{1}{2}X^TSX}{\mathrm{d}X}SX\begin{bmatrix}10\\\\0b\end{bmatrix}\begin{bmatrix}x\\\\y\end{bmatrix}\begin{bmatrix}x\\\\by\end{bmatrix} \end{equation} dXdf(x,y)dXd21XTSXSX 100b xy xby 函数二阶导数如下 d 2 f ( x , y ) d X 2 S [ 1 0 0 b ] \begin{equation} \frac{\mathrm{d}^2f(x,y)}{\mathrm{d}X^2}S\begin{bmatrix}10\\\\0b\end{bmatrix} \end{equation} dX2d2f(x,y)S 100b
2.2. 线性函数求导
假设我们有如下函数 f ( x , y ) 2 x 5 y [ 2 5 ] [ x y ] A T X , A [ 2 5 ] \begin{equation} f(x,y)2x5y\begin{bmatrix}25\end{bmatrix}\begin{bmatrix}x\\\\y\end{bmatrix}A^TX,A\begin{bmatrix}2\\\\5\end{bmatrix} \end{equation} f(x,y)2x5y[25] xy ATX,A 25
函数的一次导数如下 d f ( x , y ) d X d A T X d X A [ 2 5 ] \begin{equation} \frac{\mathrm{d}f(x,y)}{\mathrm{d}X}\frac{\mathrm{d}A^TX}{\mathrm{d}X}A\begin{bmatrix}2\\\\5\end{bmatrix} \end{equation} dXdf(x,y)dXdATXA 25 函数的二阶偏导 hessian matrix 如下[向量对向量求导XY拉伸术] H j k [ 0 0 0 0 ] \begin{equation} H_{jk}\begin{bmatrix}00\\\\00\end{bmatrix} \end{equation} Hjk 0000 对于函数 f ( x ) 2 x 5 y f(x)2x5y f(x)2x5y来说依据线搜索方法其负梯度方向为最佳迭代方向。
3. 无约束条件下的最值问题
假设我们有一个函数表示如下 f ( x ) 1 2 x T S x − a T x − b \begin{equation} f(x)\frac{1}{2}x^TSx-a^Tx-b \end{equation} f(x)21xTSx−aTx−b f ( x ) f(x) f(x)导数如下 d f ( x ) d x S x − a ; d 2 f ( x ) d x 2 H j k S \begin{equation} \frac{\mathrm{d}f(x)}{\mathrm{d}x}Sx-a;\frac{\mathrm{d}^2f(x)}{\mathrm{d}x^2}H_{jk}S \end{equation} dxdf(x)Sx−a;dx2d2f(x)HjkS函数 f ( x ) f(x) f(x)的最小值满足其一次导数为零即表示如下 f ′ ( x ∗ ) 0 , S x ∗ − a 0 → x ∗ S − 1 a \begin{equation} f(x^*)0,Sx^*-a0\rightarrow x^*S^{-1}a \end{equation} f′(x∗)0,Sx∗−a0→x∗S−1a整理可得 f min ( x ) min x x ∗ S − 1 a f ( x ) − 1 2 a T S − 1 a − b \begin{equation} f_{\min}(x)\min\limits_{xx^*S^{-1}a}f(x)-\frac{1}{2}a^TS^{-1}a-b \end{equation} fmin(x)xx∗S−1aminf(x)−21aTS−1a−b arg min x x ∗ f ( x ) S − 1 a \begin{equation} \argmin\limits_{xx^*}f(x)S^{-1}a \end{equation} xx∗argminf(x)S−1a
4. 正则化
4.1 定义
Log-determinant regularization Log-determinant regularization 通过在损失函数中加入一个负对数行列式项来约束矩阵X的结构。具体形式为 P e n a l t y − log ( det ( X ) ) \begin{equation} Penalty-\log(\det(X)) \end{equation} Penalty−log(det(X))其中X通常是一个正定矩阵 这一正则化项有利于确保X的特征值远离零从而避免数值不稳定性和病态矩阵的出现
4.2 性质
凸性 − log ( det ( X ) ) -\log(\det(X)) −log(det(X))是一个凸函数这意味着优化问题中局部最小值也是全局最小值梯度 ∇ f ( x ) − X − 1 \nabla f(x)-X^{-1} ∇f(x)−X−1 f ( x ) − log ( det ( X ) ) → d f ( x ) d x 1 det ( X ) ⋅ [ det ( X ) ⋅ ( X − 1 ) T ] X − 1 \begin{equation} f(x)-\log(\det(X))\rightarrow \frac{\mathrm{d}f(x)}{\mathrm{d}x}\frac{1}{\det(X)}\cdot [\det(X)\cdot (X^{-1})^T]X^{-1} \end{equation} f(x)−log(det(X))→dxdf(x)det(X)1⋅[det(X)⋅(X−1)T]X−1hessian matrix H j k X − 1 H X − 1 H 是一个对称矩阵 \begin{equation} H_{jk}X^{-1}HX^{-1}H是一个对称矩阵 \end{equation} HjkX−1HX−1H是一个对称矩阵
5. 回溯线性搜索法
对于线搜索方法来说迭代公式如下但是对于步长的选择来说我们如果选择步长 s k s_k sk太大那么就很容易越过极值点在极值点不断跳跃和震荡如果步长 s k s_k sk太小那么迭代太慢没有效果
迭代公式 x k 1 x k − s k ∇ f ( x k ) \begin{equation} x_{k1}x_k-s_k\nabla f(x_k) \end{equation} xk1xk−sk∇f(xk)步长 s k s_k sk方向 负梯度方向 − ∇ f ( x k ) -\nabla f(x_k) −∇f(xk)
那么我们希望找到一个步长 s k s_k sk使得在搜索方向上使得 f ( x k 1 ) f(x_{k1}) f(xk1)最小这样就不是固定步长了相当于动态步长 s k ∗ arg min s k f ( x k 1 ) \begin{equation} s_k^* \argmin\limits_{s_k} f(x_{k1}) \end{equation} sk∗skargminf(xk1)
步骤先固定步长 s k s 0 s_ks_0 sks0再取半步长 s k 1 2 s 0 s_k\frac{1}{2}s_0 sk21s0,再取半步长 s k 1 4 s 0 s_k\frac{1}{4}s_0 sk41s0,假设我们有如下一个损失函数如下 S [ 1 0 0 b ] , f ( x ) x T S x x 2 b y 2 \begin{equation} S\begin{bmatrix}10\\\\0b\end{bmatrix},f(x)x^TSxx^2by^2 \end{equation} S 100b ,f(x)xTSxx2by2迭代公式如下 x k 1 x k − s k ∇ f ( x k ) , ∇ f ( x k ) 2 S x \begin{equation} x_{k1}x_k-s_k\nabla f(x_k),\nabla f(x_k)2Sx \end{equation} xk1xk−sk∇f(xk),∇f(xk)2Sx向量化如下 : x [ x , y ] T x\;[x\;,y\;]^T x[x,y]T [ x y ] k 1 [ x y ] k − s k [ 2 x 2 b y ] k \begin{equation} \begin{bmatrix}x\\\\y\end{bmatrix}_{k1}\begin{bmatrix}x\\\\y\end{bmatrix}_{k}-s_k\begin{bmatrix}2x\\\\2by\end{bmatrix}_{k} \end{equation} xy k1 xy k−sk 2x2by k假设我们定义初始点 p 0 ( x 0 , y 0 ) ( b , 1 ) p_0(x_0,y_0)(b,1) p0(x0,y0)(b,1)步长 s k 1 x 0 y 0 1 b 1 s_k\frac{1}{x_0y_0}\frac{1}{b1} skx0y01b11这里没弄懂后续再研究反推出来的 x k b ( b − 1 b 1 ) k , y k ( 1 − b 1 b ) k , f k ( 1 − b 1 b ) k f 0 \begin{equation} x_kb(\frac{b-1}{b1})^k,y_k(\frac{1-b}{1b})^k,f_k(\frac{1-b}{1b})^kf_0 \end{equation} xkb(b1b−1)k,yk(1b1−b)k,fk(1b1−b)kf0函数 f ( x ) x 2 b y 2 c f(x)x^2by^2c f(x)x2by2c是一个椭圆形图像随着c的变化不断变化,也就是做函数的最小值是之字型不断地趋近于最小就像不同的椭圆进行等比缩小最终求得最小值。