UA MATH567 高维统计 专题0 为什么需要高维统计理论?——理解稀疏向量与hard-threshold
UA MATH567 高維統計 專題0 為什么需要高維統計理論?——理解稀疏向量與hard-threshold
- 稀疏向量的soft-threshold與hard-threshold近似
- 引入hard-threshold的線性判別分析
在上一篇的末尾,我們談到了經典統計與高維統計的區別,在高維統計中,information is sparse in features,即并不是每個特征都是一樣重要的,重要的特征占比非常小,這種特性被稱為sparsity。不論是為了模型能處理高維問題還是為了提高計算效率,我們都需要去探索稀疏向量與稀疏矩陣的結構,下面我用一個簡單的例子說明探索稀疏矩陣的結構的意義:
假設我們要做線性模型:y=Xβ+?y=X\beta+\epsilony=Xβ+?,XXX是正交的設計矩陣,維數為n×pn \times pn×p,假設p=O(n)p=O(n)p=O(n),這是一個高維統計問題,我們可以期待系數一定是稀疏的
s=#{j:βj≠0}<<ps=\#\{j:\beta_j \ne 0\}<<ps=#{j:βj??=0}<<p
β\betaβ的正則方程為
X′Xβ=X′yX'X \beta =X'yX′Xβ=X′y
用分量形式表達為
xjTxjβj=xj′yjx_j^Tx_j \beta_j = x_j'y_jxjT?xj?βj?=xj′?yj?
求解正則方程可以得到β\betaβ的OLS估計,計算復雜度為O(N2p)O(N^2p)O(N2p);因為β\betaβ是稀疏向量,我們可以預期很多β\betaβ都是0,如果我們對β\betaβ的取值能做一下預估計,就可以引入hard-threshold,
xj,δ=xj1∣βj∣>δx_{j,\delta}=x_j1_{|\beta_j|>\delta}xj,δ?=xj?1∣βj?∣>δ?
并把正則方程修改為
Xδ′Xδβ=Xδ′yX_{\delta}'X_{\delta} \beta =X_{\delta}'yXδ′?Xδ?β=Xδ′?y
做了這個操作后,計算復雜度可以降低為O(N2s)O(N^2s)O(N2s)。高維時,ppp與NNN同階,所以直接求解正則方程復雜度的階為N3N^3N3;sss是NNN的無窮小量,引入hard-threshold后,求解正則方程復雜度的階為N2N^2N2。
稀疏向量的soft-threshold與hard-threshold近似
假設xxx是一個稀疏向量,我們可以對xxx做一些近似,即讓xxx中比較小的一些元素變成0,僅保留一些比較大的元素,這種近似可以把xxx的結構簡化,在高維統計與高維數據分析中會有意想不到的效果。常用的做法有兩種,分別是soft-threshold近似與hard-threshold近似。
稱Hλ(x)H_{\lambda}(x)Hλ?(x)是xxx的hard-threshold近似,如果
Hλ(x)=x1∣x∣>λ={xif∣x∣>λ0otherwiseH_{\lambda}(x) = x 1_{|x|>\lambda} = \begin{cases} x\ if\ |x|>\lambda \\ 0\ otherwise \end{cases}Hλ?(x)=x1∣x∣>λ?={x?if?∣x∣>λ0?otherwise?
稱這個近似為hard-threshold近似的原因我覺得可能是它比較無情,它就是一個簡單的keep-or-kill機器,xxx的元素中絕對值大于λ\lambdaλ的才能幸存,其他的就被“殺”掉了;
稱Tλ(x)T_{\lambda}(x)Tλ?(x)是xxx的soft-threshold近似,如果
Tλ(x)=(x?λsign(x))1∣x∣>λ={x?λsign(x)if∣x∣>λ0otherwiseT_{\lambda}(x)=(x-\lambda sign(x))1_{|x|>\lambda} = \begin{cases} x-\lambda sign(x)\ if\ |x|>\lambda \\ 0\ otherwise \end{cases}Tλ?(x)=(x?λsign(x))1∣x∣>λ?={x?λsign(x)?if?∣x∣>λ0?otherwise?
這里的sign(x)sign(x)sign(x)表示xxx的每個元素的符號,之所以稱它是soft-threshold是因為幸存的元素沒有全部大于λ\lambdaλ,所以顯得比hard-threshold近似更溫和,下圖可以比較一下兩種近似的區別(λ=0.4\lambda=0.4λ=0.4):
引入hard-threshold的線性判別分析
前兩講我們討論了多元統計中的經典模型線性判別分析,發現在高維時它的classification error滿足高維統計理論的模式,而高維統計理論得到的theoretical classification error比經典理論的oracle error更大。于是我們可以提出一個很有趣的問題:既然經典方法處理高維問題classification error與高維統計理論的theoretical classification error一致,那么用高維統計方法處理高維問題的classification error又會是什么樣子的呢?
我們延續對判別分析的討論,在高維時,用于分類的特征維數較高,我們可以預料到有效的特征數目較少,于是我們可以引入hard-threshold來去掉那些取值較小變化不大的特征。引入特征的樣本均值μ^1=1n1∑i=1n1xi,μ^2=1n2∑i=n1+1n1+n2xi\hat \mu_1 = \frac{1}{n_1}\sum_{i=1}^{n_1} x_i,\hat \mu_2 = \frac{1}{n_2} \sum_{i=n_1+1}^{n_1+n_2} x_iμ^?1?=n1?1?i=1∑n1??xi?,μ^?2?=n2?1?i=n1?+1∑n1?+n2??xi?
基于特征的樣本均值,我們引入它的hard-threshold近似
μ~1=Hλ(μ^1),μ~2=Hλ(μ^2),λ=2log?dn\tilde{\mu}_1=H_{\lambda}(\hat \mu_1),\tilde{\mu}_2=H_{\lambda}(\hat \mu_2),\lambda = \sqrt{\frac{2\log d}{n}}μ~?1?=Hλ?(μ^?1?),μ~?2?=Hλ?(μ^?2?),λ=n2logd??
引入Pooled sample covariance matrix,
Σ^=∑i=1n1(xi?μ^1)(xi?μ^1)T+∑i=1n2(xi?μ^2)(xi?μ^2)Tn1+n2?2\hat \Sigma =\frac{\sum_{i=1}^{n_1}(x_i-\hat \mu_1)(x_i - \hat \mu_1)^T+\sum_{i=1}^{n_2}(x_i-\hat \mu_2)(x_i - \hat \mu_2)^T}{n_1+n_2-2}Σ^=n1?+n2??2∑i=1n1??(xi??μ^?1?)(xi??μ^?1?)T+∑i=1n2??(xi??μ^?2?)(xi??μ^?2?)T?
從而判別函數為
Ψ~(x)=(μ~1?μ~2)′Σ^?1(x?μ~1+μ~22)\tilde{\Psi}(x)=(\tilde \mu_1- \tilde \mu_2)' \hat \Sigma^{-1}(x-\frac{\tilde \mu_1+ \tilde\mu_2}{2})Ψ~(x)=(μ~?1??μ~?2?)′Σ^?1(x?2μ~?1?+μ~?2??)
基于這個判別函數進行判別分析,我們可以發現:
也就是說在這種情況下,模擬實驗的結果更接近classical oracle,事實上在高維統計理論中,
log?Cdsn→0\frac{\log C_d^s}{n} \to 0nlogCds??→0
時,classical oracle依然適用。
總結
以上是生活随笔為你收集整理的UA MATH567 高维统计 专题0 为什么需要高维统计理论?——理解稀疏向量与hard-threshold的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: UA STAT675 统计计算I 随机数
- 下一篇: UA MATH567 高维统计 专题0