天天看點

Jacobian矩陣和Hessian矩陣---雅克比和黑森

綜述:

Jacobian矩陣和Hessian矩陣---雅克比和黑森

1. Jacobian

向量分析中,雅可比矩陣是一階偏導數以一定方式排列成的矩陣。在代數幾何中, 代數曲線的雅可比量表示雅可比簇:伴随該曲線的一個代數群, 曲線可以嵌入其中。

雅可比矩陣

雅可比矩陣展現了一個可微方程與給出點的最優線性逼近,雅可比矩陣類似于多元函數的導數.。

Jacobian矩陣和Hessian矩陣---雅克比和黑森
Jacobian矩陣和Hessian矩陣---雅克比和黑森

雅可比行列式

如果m = n, 那麼FF是從n維空間到n維空間的函數, 且它的雅可比矩陣是一個方塊矩陣. 于是我們可以取它的行列式, 稱為雅可比行列式.

如果連續可微函數FF在pp點的雅可比行列式不是零, 那麼它在該點附近具有反函數. 這稱為反函數定理;如果pp點的雅可比行列式是正數, 則FF在pp點的取向不變;如果是負數, 則FF的取向相反;雅可比行列式的絕對值, 就可以知道函數FF在pp點的縮放因子。

對于取向問題可以這麼了解, 例如一個物體在平面上勻速運動, 如果施加一個正方向的力FF, 即取向相同, 則加速運動, 類比于速度的導數加速度為正;如果施加一個反方向的力FF, 即取向相反, 則減速運動, 類比于速度的導數加速度為負.

2. 海森Hessian矩陣

在數學中, 海森矩陣(Hessian matrix或Hessian)是一個自變量為向量的實值函數的二階偏導數組成的方塊矩陣, 此函數如下:

Jacobian矩陣和Hessian矩陣---雅克比和黑森

海森矩陣被應用于牛頓法解決的大規模優化問題.

海森矩陣在牛頓法中的應用

一般來說, 牛頓法主要應用在兩個方面, 1, 求方程的根; 2, 最優化.

1), 求解方程

并不是所有的方程都有求根公式, 或者求根公式很複雜, 導緻求解困難. 利用牛頓法, 可以疊代求解。

原理是利用泰勒公式, 在x0x0處展開, 且展開到一階, 即f(x)=f(x0)+(x–x0)f′(x0)f(x)=f(x0)+(x–x0)f′(x0)

Jacobian矩陣和Hessian矩陣---雅克比和黑森
Jacobian矩陣和Hessian矩陣---雅克比和黑森

2), 最優化

在最優化的問題中, 線性最優化至少可以使用單純形法(或稱不動點算法)求解,。但對于非線性優化問題, 牛頓法提供了一種求解的辦法.。假設任務是優化一個目标函數ff, 求函數ff的極大極小問題,。可以轉化為求解函數ff的導數f′=0f′=0的問題, 這樣求可以把優化問題看成方程求解問題(f′=0f′=0). 剩下的問題就和第一部分提到的牛頓法求解很相似了.

Jacobian矩陣和Hessian矩陣---雅克比和黑森

一般認為牛頓法可以利用到曲線本身的資訊, 比梯度下降法更容易收斂(疊代更少次數), 如下圖是一個最小化一個目标方程的例子, 紅色曲線是利用牛頓法疊代求解, 綠色曲線是利用梯度下降法求解.

Jacobian矩陣和Hessian矩陣---雅克比和黑森
Jacobian矩陣和Hessian矩陣---雅克比和黑森

其中H是hessian矩陣, 定義見上. 

高維情況依然可以用牛頓疊代求解, 但是問題是Hessian矩陣引入的複雜性, 使得牛頓疊代求解的難度大大增加, 但是已經有了解決這個問題的辦法就是Quasi-Newton method, 不再直接計算hessian矩陣, 而是每一步的時候使用梯度向量更新hessian矩陣的近似。

作者:柒月

繼續閱讀