機器學習數學基礎
泰勒公式
泰勒公式:
Jensen不等式
若f是凸函式,則
切比雪夫不等式
切比雪夫不等式:
切比雪夫不等式的證明過程:
大數定理
大數定理公式:
中心極限定理
用樣本估計引數
1)矩估計
樣本的矩:
隨機變數的矩與樣本的矩有什麼關係?
隨機變數的矩可以理解為總體的矩,根據總體的k階矩等於樣本的k階矩,應此可以通過樣本的k階矩計算總體的k階矩。
2)極大似然估計
極大似然估計:
線性代數(新視角)
1)重新看待Ax=b
對於如下矩陣
行檢視(凸優化中的超平面)
2x-y=1
x+y=5
它的解是(x,y)=(2,3)
列檢視(矩陣列的線性組合)
2)線性相關與線性無關
對於一個矩陣,使用一組非全為0的係數,如果任一列可以使用其他列線性表出,那麼就稱這組矩陣是線性相關的,否則非相關。
3)Span,基和子空間
對於下面一個問題,S表示為三維空間中的一個平面,如果任意一個線性無關的矩陣可以將S表示出來,那麼這個矩陣就可以稱為S的一組基。
4)四個基本的子空間
5)四個基本的子空間關係圖
對於Ax=b, A的維度是m*n
(1)列空間和零空間,
對於Ax=b ,A的列構成的所有線性組合,構成了列空間,維度是r, 是Rn空間中的一個子空間
Ax=0所有解的的集合構成了零空間,維度是n-r,是Rn
(2)行空間和左零空間
對於ATx=b, A的行構成的所有線性組合,構成了行空間,維度是r, 是Rm空間中的一個子空間
ATy=0所有解的的集合構成了左零空間,維度是m-r,是Rm空間中的一個子空間,行空間和左零空間構成了一個完整的Rm空間。
利用子空間重新看待線性方程組的解:
特徵分解
1)一般矩陣
特徵分解的一般性質:
已知線性無關的向量,一定存在矩陣的逆。
Tip:並非所有的方陣(n×n)都可以被對角化。
2)對稱矩陣
性質1:如果一個對稱矩陣的特徵值都不相同,則其相應的特徵向量不僅線性無關,而且所有的特徵向量正交(乘積為0)。
性質2:對稱矩陣的特徵值都是實數。
性質3:
性質4:
性質5:
對稱矩陣可以被U相似對角化(U是特徵向量矩陣)
A=UT
二次型
正定矩陣和負定矩陣均值涉及對稱矩陣的,二次型涉及的矩陣是方陣即可。
性質1:對於一個正定矩陣,他的特徵值均大於0
特徵分解的應用
1)PCA(特徵分解)
矩陣A(m×n)的協方差矩陣是一個對稱矩陣,根據對稱矩陣可以被U相似對角化,則A=UΛUT(U是特徵向量矩陣,Λ是對角為方差的對角矩陣)。
降維:
我們取最大的N個特徵值對應的特徵向量組成的矩陣,可以稱之為壓縮矩陣;得到了壓縮矩陣之後,將去均值的資料矩陣乘以壓縮矩陣,就實現了將原始資料特徵轉化為新的空間特徵,進而使資料特徵得到了壓縮處理。
2)SVD(特徵分解的廣義化)
SVD和特徵分解的關係:
如何計算SVD分解後U,V呢?
我們將A的轉置和A做矩陣乘法,那麼會得到n×n的一個方陣ATA。既然ATA是方陣,那麼我們就可以進行特徵分解,得到的特徵值和特徵向量滿足下式:(ATA)vi=λivi。這樣我們就可以得到矩陣ATA的n個特徵值和對應的n個特徵向量v了。將ATA的所有特徵向量張成一個n×n的矩陣V,就是我們SVD公式裡面的V矩陣了。一般我們將V中的每個特徵向量叫做A的右奇異向量。
反過來我們將A和A的轉置做矩陣乘法,將AAT的所有特徵向量張成一個m×m的矩陣V,就是我們SVD公式裡面的U矩陣了。一般我們將U中的每個特徵向量叫做A的左奇異向量。
同時我們可以得到特徵值矩陣等於奇異值矩陣的平方。
如何使用SVD進行降維呢?
注意到PCA僅僅使用了我們SVD的右奇異矩陣,沒有使用左奇異矩陣,那麼左奇異矩陣有什麼用呢?
假設我們的樣本是m×n的矩陣X,如果我們通過SVD找到了矩陣XXT最大的d個特徵向量張成的m×d維矩陣U,則我們如果進行如下處理:
Xd×n′=Ud×mTXm×n
可以得到一個d×n的矩陣X′,這個矩陣和我們原來的m×n維樣本矩陣X相比,行數從m減到了k,可見對行數進行了壓縮。也就是說,左奇異矩陣可以用於行數的壓縮。相對的,右奇異矩陣可以用於列數即特徵維度的壓縮,也就是我們的PCA降維。
凸優化
1、無約束優化問題
1)為什麼要做優化問題?
2)如何優化?
方法一:無約束優化直接分析法
泰勒級數展開(標量):
泰勒級數展開(向量):
無約束優化直接分析法的缺陷:
1、可能這個函式就不可導
2、函式可以求導,但是變數很多,求不出導數為0的x
3、就算求出瞭解,但是這個解可能是個集合
方法二:無約束優化迭代法
無約束優化迭代法的基本結構
無約束優化迭代的方法:
第一種:梯度下降法,沿負梯度方向,只使用了一階導數:搜尋比較慢,等值線上顯示為Z型走法,軌跡是相互正交的。
第二種:牛頓法。在一階導數的基礎上考慮了二階導數,效能會更好一點。涉及到了海森矩陣求逆,可能不可逆,比如半正定或者半負定,要做適當修正。等值線上走的是直的。
第三種:擬牛頓法。使用梯度資訊去生成對於海森逆矩陣的連續低秩估計。收斂速度比牛頓法相當,但是計算複雜度低很多。
2、有約束優化問題
1)凸集
凸集:簡單理解為集合中任意的兩個點的連線,均在集合內。
2)凸函式
凸函式判定的兩個方法:
方法一:一階充要條件
方法二:二階充要條件
總結:
這兩種判別方法在判別一個問題是否為凸問題時,往往不能有效的得到結果,因為對於某些問題,他們的一階導和二階導並不好求,因此便引出了我們的凸優化問題
2)凸優化問題
(1)概述
如果一個實際的問題可以被表示成凸優化問題,那麼我們就可以認為其能夠得到很好的解決。常用的解決凸問題的演算法有等式優化、內點法等。
對於一個實際問題,如果不能確定其是否為凸函式,便涉及到本章的凸優化的一些方法,比如KKT條件,對偶法等。
如果這個問題是凸問題,那麼這些方法解出的極值點就是全域性的極值點,如果這個問題不是凸問題,那麼這些方法解出的極值點很可能是區域性極小點。
(2)KKT條件
KKT條件的基本思想是如何將約束優化問題轉化為無約束優化問題。