数学基础--学习笔记
文章目錄
- 插值方法
- 線性插值
- 原理
- 計算
- 雙線性插值
- 原理
- 計算
- 最優(yōu)理論與凸優(yōu)化
- 最優(yōu)化問題
- 拉格朗日乘數(shù)法
- KKT條件
- 凸優(yōu)化
- 最小二乘法
- 最小二乘的幾何意義
- 加權最小二乘問題
- 正則化的最小二乘問題
- 線性規(guī)劃
- Cholesky分解
- 基礎知識
- 矩陣的Cholesky分解
- 實際應用意義
- 共軛梯度法求解線性方程組
- 直接求解
- 迭代求解
- 偏導數(shù)、方向?qū)?shù)、梯度、散度、旋度
- 參考文獻
插值方法
線性插值
原理
已知數(shù)據(jù)(x0,y0)與(x1,y1),計算[x0,x1]區(qū)間內(nèi)某一位置x在直線上的y值,公式如下:
本質(zhì):用x和x0,x1的距離作為一個權重,用于y0和y1的加權。
計算
例子已知原圖像及圖像尺寸(srcWidth,srcHeight),求放大為(dstWidth,dstHeight)大小的圖像。首先,計算放大后圖像位置(dstX,dstY)對應原圖像的位置。
然后根據(jù)對應位置獲取相應的像素值,對于最近鄰插值,(dstX,dstY)點對應的像素值為原圖像中(srcX,srcY)點處的像素值。
雙線性插值
原理
雙線性插值是兩個變量的插值函數(shù)的線性插值擴展,其核心思想是在x,y兩個方向上分別進行一次線性插值。
已知函數(shù) f 在 Q11 = (x1, y1)、Q12 = (x1, y2), Q21 = (x2, y1) 以及 Q22 = (x2, y2) 四個點的值。對于圖像,f就是一個像素點的像素值。首先在 x 方向進行線性插值,得到
然后在 y 方向進行線性插值,得到
綜合起來就是雙線性插值最后的結果:
計算
對于圖像處理,先根據(jù)
srcX=dstX* (srcWidth/dstWidth),
srcY = dstY * (srcHeight/dstHeight)
來計算目標像素在源圖像中的位置,這里計算的srcX和srcY一般都是浮點數(shù),比如f(1.2, 3.4)這個像素點是虛擬存在的,先找到與它臨近的四個實際存在的像素點
(1,3) (2,3)
(1,4) (2,4)
寫成f(i+u,j+v)的形式,則u=0.2,v=0.4, i=1, j=3
在沿著X方向差插值時,f(R1)=u(f(Q21)-f(Q11))+f(Q11)
沿著Y方向同理計算。
或者,直接整理一步計算,
f(i+u,j+v) = (1-u)(1-v)f(i,j) + (1-u)vf(i,j+1) + u(1-v)f(i+1,j) + uvf(i+1,j+1)
最優(yōu)理論與凸優(yōu)化
最優(yōu)化問題
最優(yōu)化問題是求解函數(shù)極值的問題,微積分提供的求函數(shù)的極值思路是找函數(shù)的導數(shù)為0的點,因為在極值點處,導數(shù)必定為0。在實際應用中遇到的函數(shù)基本上都是可導的。在機器學習之類的應用中,一般將最優(yōu)化問題統(tǒng)一表述為求解函數(shù)極小值問題。
優(yōu)化問題一般可以分為兩大類:無約束化問題和約束化問題,約束化問題又可分為含等式約束優(yōu)化問題和含不等式約束化問題。
針對不同的優(yōu)化問題有不同的處理策略:
- 無約束的優(yōu)化問題:可直接對其求導,并使其為0,這樣便能得到最終的最優(yōu)解;
- 含等式約束優(yōu)化問題:主要通過拉格朗日乘數(shù)法將含等式約束的優(yōu)化問題轉(zhuǎn)換成無約束優(yōu)化問題求解;
- 含有不等式約束的優(yōu)化問題:主要通過KKT條件(Karush-Kuhn-Tucker Condition)將其轉(zhuǎn)化成無約束優(yōu)化問題求解。
拉格朗日乘數(shù)法
KKT條件
凸優(yōu)化
最優(yōu)化問題在機器學習、數(shù)據(jù)挖掘等領域應用非常廣泛,因為機器學習主要做的就是優(yōu)化問題,先初始化權重參數(shù),然后利用優(yōu)化方法來優(yōu)化這個權重,知道準確率不再上升,迭代停止。
凸優(yōu)化的一般形式為:
minimizef0(x)使得fi≤bi,i=1,...,mminimizef_{0}(x) 使得f_{i} \leq b_{i}, i=1,...,mminimizef0?(x)使得fi?≤bi?,i=1,...,m
第一個為優(yōu)化的目標,即最小化目標函數(shù)f(x)f(x)f(x),而不等式則為約束條件。希望找到一個滿足約束條件的x?x^{*}x?,使得對于任意的zzz滿足約束條件:
f1(z)≤b1,...,fm(z)≤bmf_{1}(z) \leq b_{1},...,f_{m}(z) \leq b_{m} f1?(z)≤b1?,...,fm?(z)≤bm?
有:
f0(z)≥f0(x?)f_{0}(z) \geq f_{0}(x^{*})f0?(z)≥f0?(x?)
而x?x^{*}x?就是我們所求的最后結果。
滿足所有約束條件的點集稱為可行域,記為X,又可寫為:
minf(x)s.tx∈Xminf(x) s.t x \in Xminf(x)s.tx∈X
s.ts.ts.t表示受限于(subject to)。
在優(yōu)化問題中,應用最廣泛的就是凸優(yōu)化問題。
若可行域XXX是一個凸集:即對于任意給的x,y∈Xx,y \in Xx,y∈X,總有
λx+(1?λ)y∈X,對于任意的λ∈(0,1)\lambda x+(1-\lambda)y \in X,對于任意的\lambda \in (0,1)λx+(1?λ)y∈X,對于任意的λ∈(0,1)
并且目標函數(shù)是一個凸函數(shù):即
f(λx+(1?λ)y)≤λf(x)+(1?λ)f(y)f(\lambda x + (1 - \lambda)y) \leq \lambda f(x) + (1 - \lambda)f(y)f(λx+(1?λ)y)≤λf(x)+(1?λ)f(y)
稱這樣的優(yōu)化問題為凸優(yōu)化問題。
用圖像表示為:
函數(shù)上方的點集就是凸集,函數(shù)上任意兩點的連線,仍然在函數(shù)圖像上方。
- 全局最優(yōu):指的是在滿足條件約束的情況下,找到唯一的一個點滿足最大值或者最小值。
- 局部最優(yōu):指的是在滿足條件約束的情況下,有可能找到一個局部最大/小點,但不是全局最大或者最小的點。
最小二乘法
最小二乘法(又稱最小平方法)是一種數(shù)學優(yōu)化技術。它通過最小化誤差的平方和尋找數(shù)據(jù)的最佳函數(shù)匹配。利用最小二乘法可以簡便的求得未知的數(shù)據(jù),并使得這些求得的數(shù)據(jù)與實際數(shù)據(jù)之間誤差的平方和為最小。最小二乘法還可用于曲線擬合。
最小二乘問題是無約束的優(yōu)化問題,通常可以理解為測量值與真實值之間的誤差平方和:
目標函數(shù)=∑(觀測值?理論值)2目標函數(shù)=\sum (觀測值-理論值)^{2}目標函數(shù)=∑(觀測值?理論值)2
常見形式為:
minimizef0=∣∣Ax?b∣∣22=∑i=1k(aiTx?bi)2minimize f_{0}=||Ax-b||_{2}^{2}=\sum _{i=1}^{k}(a_{i}^{T}x-b_{i})^{2}minimizef0?=∣∣Ax?b∣∣22?=i=1∑k?(aiT?x?bi?)2
其中A∈RnXk(n>k,方程的個數(shù)大于未知數(shù)的個數(shù))A\in R^{nXk}(n>k,方程的個數(shù)大于未知數(shù)的個數(shù))A∈RnXk(n>k,方程的個數(shù)大于未知數(shù)的個數(shù)), aiTa_{i}^{T}aiT?為AAA的第iii行,向量xxx就是我們的優(yōu)化目標$。
這個問題沒有約束條件,但是這個公式是一定大于等于0的,所以這樣的最優(yōu)化問題,可以轉(zhuǎn)換成線性方程求解:
ATAx=ATbA^{T}Ax=A^{T}bATAx=ATb
ATA^{T}AT為A的轉(zhuǎn)置,因此根據(jù)矩陣的逆:
(ATA)?1ATA=1(A^{T}A)^{-1}A^{T}A=1(ATA)?1ATA=1
可以把上面的公式表示為:
x=(ATA)?1ATbx=(A^{T}A)^{-1}A^{T}bx=(ATA)?1ATb
上面的線性求解的方法比較直觀,但是通常比較低效。其中一種常見的解法是對A進行QR分解(A=QRA=QRA=QR),其中Q是nxk正交矩陣,R是kxk上三角矩陣,則有:
min∣∣Ax?b∣∣=min∣∣QRx?b∣∣=min∣∣Rx?Q?1b∣∣min||Ax-b||=min||QRx-b||=min||Rx-Q^{-1}b||min∣∣Ax?b∣∣=min∣∣QRx?b∣∣=min∣∣Rx?Q?1b∣∣
最小二乘的幾何意義
最小二乘法中的幾何意義是高維空間中的一個向量在低維子空間的投影。
加權最小二乘問題
∑i=1kwi(aiTx?bi)2\sum _{i=1}^{k}w_{i}(a_{i}^{T}x-b_{i})^{2}i=1∑k?wi?(aiT?x?bi?)2
權值均為正數(shù),代表每一個aiTx?bia_{i}^{T}x-b_{i}aiT?x?bi?對結果的影響程度。
正則化的最小二乘問題
∑i=1kwi(aiTx?bi)2+ρ∑i=1nxi2\sum _{i=1}^{k}w_{i}(a_{i}^{T}x-b_{i})^{2}+\rho \sum _{i=1}^{n}x_{i}^{2}i=1∑k?wi?(aiT?x?bi?)2+ρi=1∑n?xi2?
ρ\rhoρ是人為選擇的,用來權衡最小化∑ik(aiTx?bi)\sum _{i}^{k}(a_{i}^{T}x-b_{i})∑ik?(aiT?x?bi?)的同時,使得∑i=1nxi2\sum _{i=1}^{n}x_{i}^{2}∑i=1n?xi2?不必太大的關系。
線性規(guī)劃
線性規(guī)劃的目標函數(shù)和約束條件都是線性的:
minimizecTxminimize c^{T}xminimizecTx
s.taiTx≤bi,i=1,...,ms.t a_{i}^{T}x \leq b_{i},i=1,...,ms.taiT?x≤bi?,i=1,...,m
用畫圖的方法,就是根據(jù)條件,畫出可行域,然后將目標函數(shù)在可行域上移動,直到得到最大值。
Cholesky分解
基礎知識
- 如果一個復矩陣A=A?A=A^{*}A=A?(共軛轉(zhuǎn)置),則A稱為Hermitian矩陣。(矩陣A轉(zhuǎn)置后仍為其本身,A一定是方陣)。
- Mn×nM_{n \times n}Mn×n?是一個對稱的實矩陣,對于任意的(由n個實數(shù)組成)的非零列向量x,都有xTMx>0x^{T}Mx>0xTMx>0,則稱M是正定的。
-Mn×nM_{n \times n}Mn×n?是一個Hermitian矩陣,對于任意的(由n個復數(shù)組成)的非零列向量z,都有z?Mz>0z^{*}Mz>0z?Mz>0,則稱M是正定的。
矩陣的Cholesky分解
如果矩陣A是正定的,那么它可以被唯一的分解為一個下三角矩陣L和其共軛轉(zhuǎn)置L*的乘積,這就是矩陣的Cholesky分解。對實矩陣,即A=LLTA=LL^{T}A=LLT,其中L是一個下三角矩陣。例如3x3的矩陣Cholesky分解示意:
Cholesky分解值計算,結合矩陣乘法的規(guī)則,矩陣L對角線上的元素為:
推廣后得到:
對角線以下元素likl_{ik}lik?,其中i>ki>ki>k,有下面的計算規(guī)律:
推廣后得到:
實際應用意義
Cholesky分解的非常重要的應用就是解方程組Ax=BAx=BAx=B,其中A是一個正定矩陣。因為A是一個正定矩陣,所以有A=LLTA=LL^{T}A=LLT,其中L是一個下三角矩陣。原方程組可以寫成LLTx=BLL^{T}x=BLLTx=B。如果令y=LTxy=L^{T}xy=LTx,則有Ly=BLy=BLy=B。注意到其中L是一個下三角矩陣,所以從下向上求解yyy是非常容易的,求解出yyy之后,在按照類似的方法求解y=LTxy=L^{T}xy=LTx中的xxx,而其中LTL^{T}LT是一個上三角矩陣,所以最終求出xxx也就非常容易。
共軛梯度法求解線性方程組
直接求解
迭代求解
偏導數(shù)、方向?qū)?shù)、梯度、散度、旋度
參考文獻
總結
以上是生活随笔為你收集整理的数学基础--学习笔记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 亚马逊平台在哪个站点开店好
- 下一篇: (四)Gluster 配置