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相关推荐

  1. UA MATH567 高维统计 专题0 为什么需要高维统计理论?——高维统计理论的常用假设

    UA MATH567 高维统计 专题0 为什么需要高维统计理论?--高维统计理论的常用假设 延续前三讲对线性判别分析的讨论,在高维时,根据中心极限定理 n(Xˉ−μ)→dN(0,Id)\sqrt{n} ...

  2. UA MATH567 高维统计 专题0 为什么需要高维统计理论?——协方差估计的高维效应与Marcenko-Pastur规则

    UA MATH567 高维统计 专题0 为什么需要高维统计理论?--协方差估计的高维效应与Marcenko-Pastur规则 上一讲我们介绍了在实验中,线性判别分析的判别误差会随着维度的上升而上升,而 ...

  3. UA MATH567 高维统计 专题0 为什么需要高维统计理论?——以线性判别分析为例

    UA MATH567 高维统计 专题0 为什么需要高维统计理论?--以线性判别分析为例 线性判别分析基础 理论 算法 线性判别分析基础 理论 我们回顾一下二元假设检验问题,它的目标是判断某一个obse ...

  4. UA MATH567 高维统计专题3 含L1-norm的凸优化6 Stochastic Gradient Descent简介

    UA MATH567 高维统计专题3 含L1-norm的凸优化6 Stochastic Gradient Descent简介 Stochastic Gradient Descent的思想 Varian ...

  5. UA MATH567 高维统计专题3 含L1-norm的凸优化4 Nesterov方法与Accelerate Proximal Gradient

    UA MATH567 高维统计专题3 含L1-norm的凸优化4 一阶方法的加速 Nesterov方法 Accelerate Proximal Gradient (APG) 梯度下降与Proximal ...

  6. UA MATH567 高维统计专题3 含L1-norm的凸优化2 Proximal Gradient Descent

    UA MATH567 高维统计专题3 含L1-norm的凸优化2 Proximal Gradient Descent Proximal Gradient Descent的公式推导 Proximal O ...

  7. UA MATH567 高维统计专题2 Low-rank矩阵及其估计3 Rank RIP

    UA MATH567 高维统计专题2 Low-rank矩阵及其估计3 Rank RIP Low-rank matrix completion的模型是rank minimization,上一讲我们介绍了 ...

  8. UA MATH567 高维统计专题2 Low-rank矩阵及其估计2 Rank Minimization与Nuclear Norm

    UA MATH567 高维统计专题2 Low-rank矩阵及其估计2 Rank Minimization与Nuclear Norm 上一讲我们已经提到了用rank-minimization对参数矩阵进 ...

  9. UA MATH567 高维统计专题2 Low-rank矩阵及其估计1 Matrix Completion简介

    UA MATH567 高维统计专题2 Low-rank矩阵及其估计1 Low-rank Matrix简介 例 在推荐系统中,Netflix data是非常经典的数据集.考虑它的电影评分数据,用矩阵的每 ...

最新文章

  1. Python List 列表list()方法
  2. 陆奇新动向:将担任拼多多独立董事
  3. myeclipse 项目中jsp或者js 文件中的错误是没必要处理的,可以忽略
  4. python 修改模板对象的属性_django小技巧之html模板中调用对象属性或对象的方法...
  5. Android学习——数据存储
  6. 超好用的27个谷歌Chrome浏览器使用技巧
  7. 一寸照纯红色底图片_和记场下载
  8. 洛谷P2862 [USACO06JAN]把牛Corral the Cows
  9. git学习(三)版本的前进后退
  10. C中的C文件与h文件辨析(转)
  11. vueminder ultimate 2020中文版(电脑桌面日历工具) v2020.07
  12. 为啥淘宝的商品链接无法分享到微信?
  13. 从外包测试到阿里巴巴,一位三本女生逆袭之路
  14. 思科下一代模拟器EVE-NG镜像导入
  15. 用 200 行 Python 代码掌握基本音乐理论
  16. 小米从北京迁往武汉南京,一线大厂逃离或为新常态?
  17. C语言-报数出圈问题(链表实现)
  18. python中seed的相关代码
  19. java ddmm.mmmm转ddd,GPS坐标转换ddmm.mmmm(度分)- dd.dddd(度)
  20. mysql的longblob在java中如果使用

热门文章

  1. 在线实时大数据平台Storm集群组件学习
  2. Eclipse安装Android开发环境
  3. Leetcode 153. 寻找旋转排序数组中的最小值 解题思路及C++实现
  4. package.json文件||项目依赖||开发依赖
  5. JavaScript 技术篇-使用js代码获取浏览器窗口标题名,js获取页面URL地址
  6. Python 技术篇-socket套接字实现两个窗口间消息传递实例演示,TCP实现
  7. CTFshow 反序列化 web277
  8. CTFshow 命令执行 web37
  9. matlab中的square函数
  10. ACE_Task介绍