centering
centering
「中心化」。各個維度的總和調成0。數據減去平均數。
幾何意義:數據中心位移至原點。
standardizing
second moment normalization【尚無正式名稱】
「二階動差正規化」。各個維度的平方總和調成1。數據除以平方總和平方根。
矩陣運算觀點:數據矩陣自身外積,對角線調成1。
幾何意義:各個維度的平方總和縮放至1,導致數據長度平方總和縮放至d。
elementwise product(Hadamard product)
「矩陣逐項乘法」、「矩陣點乘」。兩個矩陣對應元素相乘。
⎡ 1 4 ⎤ ⎡ 6 3 ⎤ ⎡ 6 12 ⎤ A = ⎢ 2 5 ⎥ B = ⎢ 5 2 ⎥ A⊙B = ⎢ 10 10 ⎥ ⎣ 3 6 ⎦ ⎣ 4 1 ⎦ ⎣ 12 6 ⎦
用途:每項平方、平方總和、平方總和平方根。
data: squares: ⎡ 1 4 5 3 7 ⎤ ⎡ 1 16 25 9 49 ⎤ X = ⎢ 2 5 0 3 5 ⎥ X⊙X = ⎢ 4 25 0 9 25 ⎥ ⎣ 3 6 4 3 9 ⎦ ⎣ 9 36 16 9 81 ⎦ sum of squares: square root of sum of squares: ⎡ 100 ⎤ ⎡ 10.00 ⎤ (X⊙X)1⃗ = ⎢ 63 ⎥ √(X⊙X)1⃗ᵢ = ⎢ 7.93 ⎥ ⎣ 151 ⎦ ⎣ 12.28 ⎦ inverse of square root of sum of squares: ⎡ 0.10 ⎤ 1/√(X⊙X)1⃗ᵢ = ⎢ 0.12 ⎥ ⎣ 0.08 ⎦
second moment normalization matrix【尚無正式名稱】
「二階動差正規化矩陣」。縮放矩陣。
⎡ 0.10 0 0 ⎤ S = ⎢ 0 0.12 0 ⎥ ⎣ 0 0 0.08 ⎦
左乘。
⎡ 1/0.10 4/0.10 5/0.10 3/0.10 7/0.10 ⎤ SX = ⎢ 2/0.12 5/0.12 0/0.12 3/0.12 5/0.12 ⎥ ⎣ 3/0.08 6/0.08 4/0.08 3/0.08 9/0.08 ⎦
數據平方總和調成1。自身外積,對角線調成1。
⎡ 1 0.83 0.96 ⎤ (SX)(SX)ᵀ = ⎢ 0.83 1 0.92 ⎥ ⎣ 0.96 0.92 1 ⎦
數學公式:自身點乘、橫向加總、平方根倒數。
S = diag(1/√(X⊙X)1⃗ᵢ) = √((X⊙X)𝟏)⊙I⁻¹
二階動差正規化寫成矩陣運算,繁文縟節。人類太可惡。
standardizing(batch normalization)
「中心化、二階動差正規化」併稱「標準化」。
計算順序影響結果。大家習慣先做中心化、再做二階動差正規化,恰好讓兩者同時成立。
whitening
decorrelation
「不相關化」、「去相關」。相異維度的點積調成0。
矩陣運算觀點:數據矩陣自身外積,非對角線調成0。
幾何意義:數據矩形面積總和調成零。一三象限面積為正、二四象限面積為負。也許可以想成是將數據擺正。
conjugate decomposition【尚無正式名稱】
「共軛分解」。A = BᵀB。對稱半正定矩陣分解成矩陣內積。
答案無限多個。常見解法:特徵分解、Cholesky分解。
eigendecomposition: Cholesky decomposition: A = EΛEᵀ= E√Λ√ΛEᵀ = (√ΛEᵀ)ᵀ(√ΛEᵀ) A = LLᵀ conjugate decomposition: conjugate decomposition: ⟌A = √ΛEᵀ ⟌A = Lᵀ
decorrelation matrix
「不相關化矩陣」、「去相關矩陣」。有許多種方式,通常是旋轉矩陣。
⎡ -0.56 -0.43 -0.71 ⎤ R = ⎢ 0.60 -0.80 0.01 ⎥ ⎣ -0.57 -0.42 0.71 ⎦
左乘。
⎡ -3.50 1.59 -1.49 -1.97 5.37 ⎤ RX = ⎢ -1.08 -1.56 2.96 -0.66 0.34 ⎥ ⎣ 0.75 -0.14 -0.01 -0.82 0.23 ⎦
相異維度的點積調成0。自身外積,非對角線調成0。
⎡ 299.72 0.00 0.00 ⎤ (RX)(RX)ᵀ = ⎢ 0.00 12.96 0.00 ⎥ ⎣ 0.00 0.00 1.32 ⎦
數學公式:自身外積、正規化、共軛分解。
R = ⟌⧚XXᵀ⧛
不相關化寫成矩陣運算,繁文縟節。人類的能力是有極限的。
XXᵀ特徵分解
兩種演算法:X奇異值分解、XXᵀ特徵分解。兩者等價。
(RX)(RX)ᵀ = D where D is diagonal RXXᵀRᵀ = D REΛEᵀRᵀ = D where Λ is diagonal, E is orthogonal Λ = D let R = E⁻¹ = Eᵀ
相異維度的點積調成0,自身外積調成對角線矩陣。
特徵分解XXᵀ = EΛEᵀ。XXᵀ是對稱半正定矩陣,特徵值Λ是非負對角線矩陣、特徵向量E是正規正交矩陣。
令R和E相消,剩下對角線矩陣,滿足等式。E⁻¹作為不相關化矩陣。
X奇異值分解
X = UΣVᵀ where Σ is diagonal, U and V are orthogonal U⁻¹X = ΣVᵀ let R = U⁻¹ = Uᵀ (ΣVᵀ)(ΣVᵀ)ᵀ = Σ² where Σ² is diagonal
奇異值分解Xd×n = Ud×dΣd×nVᵀn×n。奇異值Σ是非負對角線矩陣。奇異向量U和V是正規正交矩陣。
ΣVᵀ恰是不相關數據矩陣。ΣVᵀ自身外積恰是對角線矩陣。
令U移項。U⁻¹作為不相關化矩陣。
或者直接將ΣVᵀ當作不相關化結果,自行校正矩陣大小。
或者採用瘦奇異值分解,自行校正矩陣大小,計算速度更快。
X奇異值分解=XXᵀ特徵分解
X = UΣVᵀ XXᵀ = EΛEᵀ = UΣ²Uᵀ thus E = U and Λ = Σ²
X奇異值分解,時間複雜度較低。
一般來說,實數對稱半正定矩陣XXᵀ的特徵分解,比普通矩陣X的奇異值分解來得快。可是當X是超大矩陣的情況下,預先計算XXᵀ相當費時,而奇異值分解不必計算XXᵀ,逆轉勝。
去除鏡射
特徵向量不具方向性。特徵向量可以任意對調次序、顛倒方向。
正確答案有許多種。正確答案可以包含鏡射,也可以不包含。
想要去除鏡射,一種想法是窮舉每個向量的方向,從中找到旋轉矩陣。然而時間複雜度太高,沒人這樣做。
另一種想法是讓向量成為右手座標系。
一、標準座標軸(恆等矩陣I)是右手座標系。 二、右手座標系,經過鏡射,得到左手座標系。 左手座標系,經過鏡射,得到右手坐標系。 三、右手座標系,經過偶數次鏡射,仍是右手座標系。 右手座標系,經過奇數次鏡射,則是左手座標系。 四、偶數次鏡射,得視作一次旋轉。 五、右手座標系經過旋轉,仍是右手座標系。
determinant可以判斷鏡射次數、判斷左手右手座標系。
det(U) = +1,鏡射偶數次,右手座標系。det(U) = -1,鏡射奇數次,左手座標系;再增加一次鏡射,得到右手座標系,例如任取一個向量顛倒方向(元素通通添上負號)。
注意到,左右奇異向量,必須一起顛倒方向。
whitening
「中心化、二階動差正規化、不相關化」併稱「白化」。
計算順序影響結果。大家習慣依序做中心化、不相關化、二階動差正規化,恰好讓三者同時成立。
白化:計算學的定義方式
大量數據實施白化,將數據搓圓擺正。
中心化:各個維度的總和調成0。Σvᵢ = vᵀ1⃗ = 0, ∀v ∈ rows(X) 不相關化:相異維度的點積調成0。v∙w = vᵀw = 0, ∀v,w ∈ rows(X) and v≠w 二階動差正規化:各個維度的平方總和調成1。‖v‖² = vᵀv = 1, ∀v ∈ rows(X)
矩陣運算觀點:中心化之後,相同維度點積調成1,相異維度點積調成0。中心化結果的自身外積調成恆等矩陣I。
奇異值分解X̃ = UΣVᵀ。Vᵀ自身外積恰是恆等矩陣I。
令UΣ移項。Σ⁻¹Uᵀ作為白化矩陣。Vᵀ作為白化結果。
白化:統計學的定義方式
計算學採用離散數值,單位量1,彙集之後形成總和。
統計學採用機率密度函數,機率1/n,彙集之後形成平均。
優點:即便數據數量不同,仍可比較大小。
缺點:計算步驟更多。
計算學 統計學 中心化 |總和調成0 |平均數調成0 |兩者等價 二階動差正規化|平方總和調成1|平方平均數調成1|再乘以√n(或者√n-1) 不相關化 |兩兩點積調成0|共相關數調成0 |兩者等價
計算學採用大量數據。
統計學採用分布。分布有三個重要指標、兩個重要性質。
平均數:數據的中心。數據期望值。E[X] 變異數:數據的疏密。數據減去期望值、取平方、期望值。E[(X-E[X])²] 共變異數:數據的正反比。數據減去期望值、相乘、期望值。E[(X-E[X])(Y-E[Y])]
獨立:平行截面均為相同分布。 不相關:相異維度的共相關數是0。(可以改成相關係數、共變異數,意義相同。)
統計學當中,中心化、標準化、白化,以指標與性質來描述。
中心化:調整平均數。 標準化:依序調整平均數、變異數。 白化:依序調整平均數、共變異數、變異數。
中心化:各個維度的平均數調成0。每筆數據減去平均數。 不相關化:相異維度的共變異數調成0。分布變成不相關。 二階動差正規化:各個維度的變異數調成1。每筆數據除以變異數平方根。
中心化:中心位置位移至原點0。 不相關化:整體數據旋轉至面積平衡。數據擺正。 二階動差正規化:長寬範圍縮放至長度1。
normalization
normalization
「正規化」。長度調成一單位。
vector normalization
一個向量的正規化。向量長度調成1。
數學式子:向量除以自身長度(向量除以自身點積平方根)。
v v v ——— = —————— = ————— ‖v‖ √‖v‖² √v∙v
data normalization
大量數據的正規化。每筆數據視作向量,各自正規化。
正規化調整直條,二階動差正規化調整橫條。長度調成1。
matrix normalization【尚無正式名稱】
一個矩陣的正規化。瘦矩陣是自身內積調成I,胖矩陣是自身外積調成I,方陣是兩者皆調成I。
數學式子:矩陣除以自身長度(矩陣除以自身內積平方根)。
thin matrix: A A ⧚A⧛ = ——— = ————— = A√AᵀA⁻¹ = UΣVᵀVΣ⁻¹Vᵀ = UVᵀ ‖A‖ √AᵀA fat matrix: ⧚A⧛ = √AAᵀ⁻¹A = UΣ⁻¹UᵀUΣVᵀ = UVᵀ
data whitening
大量數據的白化。先中心化、再矩陣正規化。
數據矩陣通常是胖矩陣。胖矩陣正規化=二階動差正規化+不相關化+乘以正規正交矩陣。
白化數據,再乘以正規正交矩陣,仍是白化數據。
⧚X̃⧛ = √X̃X̃ᵀ⁻¹X̃ = UΣ⁻¹UᵀX̃
X̃ = UΣVᵀ X̃X̃ᵀ = UΣ²Uᵀ √X̃X̃ᵀ = UΣUᵀ √X̃X̃ᵀ⁻¹ = UΣ⁻¹Uᵀ √X̃X̃ᵀ⁻¹X̃ = UΣ⁻¹UᵀX̃
centering: X -> X̃ } decorrelation: X̃ -> UᵀX̃ } whitening second moment normalization: UᵀX̃ -> Σ⁻¹UᵀX̃ } rotation/reflection: Σ⁻¹UᵀX̃ -> UΣ⁻¹UᵀX̃
「共變異矩陣的平方根倒數」可以作為「白化矩陣」。
W = √X̃X̃ᵀ⁻¹ = UΣ⁻¹Uᵀ
covariance matrix: X̃X̃ᵀ square root: √X̃X̃ᵀ inverse: √X̃X̃ᵀ⁻¹
延伸閱讀:數學符號
由於尚無正式名稱,我只好自己瞎掰數學符號了。
X̄ = X(𝟏/n) mean X̃ = X - X̄ = X(I - 𝟏/n) deviation (centering) ‖X‖ = √XᵀX length ⧚X⧛ = X / ‖X‖ = X‖X‖⁻¹ unit (normalization)
correlation
correlation
「相關」。兩物的巧合程度。
vector correlation
兩物相乘,稱作「共相關數correlation」。
兩個數字的共相關數:兩數相乘ab。 兩個向量的共相關數:兩向量點積x∙y。 兩個浮動數字的共相關數:兩數相乘期望值E[XY]。
事先正規化,稱作「餘弦相似度cosine similarity」。
兩個數字的餘弦相似度:cos(a,b) = (a/|a|)(b/|b|) = (ab)/(|a||b|) 兩個向量的餘弦相似度:cos(x,y) = (x/‖x‖)∙(y/‖y‖) = (x∙y)/(‖x‖‖y‖) 兩個浮動數字的餘弦相似度:cos(X,Y) = E[XY] / (√E[XX] √E[YY])
事先中心化,稱作「共變異數covariance」。
兩個數字的共變異數:0 兩個向量的共變異數:0 兩個浮動數字的共變異數:cov(X,Y) = E[X̃Ỹ] = E[(X-E[X])(Y-E[Y])]
事先標準化,稱作「相關係數correlation coefficient」。
兩個數字的相關係數:0 兩個向量的相關係數:0 兩個浮動數字的相關係數:corr(X,Y) = E[X̃Ỹ] / (√E[X̃X̃] √E[ỸỸ])
事先白化,沒有名稱。
vector pairwise correlations
兩物相乘,衍生兩種版本。大家習慣採用維度版本。
數據版本:數據兩兩點積是矩陣內積XᵀY。維度數量必須一樣多。 維度版本:維度兩兩點積是矩陣外積XYᵀ。數據數量必須一樣多。
兩兩相乘,稱作「共相關矩陣correlation matrix」。
兩堆數據的共相關矩陣:Rxʏ = XYᵀ 兩堆浮動數字的共相關矩陣:Rxʏ(i,j) = E[XᵢYⱼ]
事先中心化,稱作「共變異數矩陣covariance matrix」。
兩堆數據的共變異數矩陣:Cxʏ = (X-X̄)(Y-Ȳ)ᵀ = X̃Ỹᵀ 兩堆浮動數字的共變異數矩陣:Cxʏ(i,j) = cov(Xᵢ,Yⱼ) = E[X̃ᵢỸⱼ]
事先標準化,稱作「相關係數矩陣correlation coefficient matrix」。因為經常使用,所以大家經常直接稱作「相關矩陣」。
兩堆數據的相關係數矩陣:Pxʏ = (SX̃)(SỸ)ᵀ 兩堆浮動數字的相關係數矩陣:Pxʏ(i,j) = corr(Xᵢ,Yⱼ) = E[X̃ᵢỸⱼ] / (√E[X̃ᵢX̃ᵢ] √E[ỸⱼỸⱼ])
事先白化,沒有名稱。
data correlation
兩堆數據的共相關數。共相關矩陣的奇異值分解XYᵀ = UΣVᵀ,最大的奇異值σ₁,作為共相關數。
幾何意義:找到向量u和v。X投影到向量u,Y投影到向量v,投影量各視作一個向量,讓兩向量共相關數最大。
u和v恰是最大的奇異值的左右奇異向量u₁和v₁,投影量共相關數恰是奇異值σ₁。
最大可以推廣成前幾大,直線可以推廣成平面、空間、……。
XYᵀ = UΣVᵀ UᵀXYᵀV = Σ (U⁻¹ = Uᵀ, V⁻¹ = Vᵀ) (UᵀX)(VᵀY)ᵀ = Σ (uᵢᵀX)(vᵢᵀY)ᵀ = σᵢ dot((uᵢᵀX)ᵀ, (vᵢᵀY)ᵀ) = σᵢ dot(proj_uᵢ(X), proj_vᵢ(Y)) = σᵢ
順帶一提,古人在探索過程當中,發明許多冗餘名詞。
《Characterizing the Response of PET and fMRI Data using Multivariate Linear Models》
partial least squares regression X與Y都預先中心化 orthonormalized PLS regression X預先白化、Y預先中心化 canonical correlation analysis X與Y都預先白化