论文阅读 - Unsupervised feature selection via transformed auto-encoder(2019)

题目

image-20210228182858877

概括

一种特征选择器,用来移除不相关的特征,减少计算量,加速计算过程提升性能表现。

结构

模型分成三部分:

  • 通过深度自动编码器得到的受正交约束的indicator matrix指示矩阵

  • 使用非负最小二乘法,获得近似的非负的指示矩阵 (算法第8部)

  • 通过指示矩阵来选择出特征选择矩阵(feature selection matrix),并且使用K-means算法来评估模型。(算法性能评估部分)

Related works

  • LS Laplacian score作为过滤方法。但是LS不考虑特征间关系。
  • MCFS unsupervised feature selection method . 忽略了非负的限制,提升了获得cluster label的难度。
  • UDFS unsupervised discriminative feature selection method、NDFS 比UDFS更平滑,但是对于轮廓和噪声都没有很好的健壮性。
  • RUFS robust unsupervised feature selection, better

与图的结合

  • SPFS sparsity preserving fearure selection

  • NPFS neighborhood preserving feature selection,强化了SPFS的限制,

  • NEFS neighborhood embedding feature selection .联合框架

  • URAFS uncorrelated regression model with adaptive graph structure

为了减少时间开销和计算复杂度:

  • AEFS auto-encoder feature selection,不能保证indicator matrix正交性和非负性的限制
  • CAE Concrete auto-encoders for differentiable feature selection

原理

面临的问题:

  • 正交性、稀疏性矩阵特点

H矩阵正交性、稀疏性:

  • 正交性:保证了H矩阵能够在整个学习过程中作为indicator matrix的性质。(什么性质?)这个特性可以提高模型的可解释性
  • 使用范数约束保证矩阵的稀疏性和平滑性。

理论过程:

整体就是希望优化这个:

image-20210227223419655

X是原始的数据集, X I X^I XI是维度缩减后的数据集。目标就是缩减维度后仍然能够最大限度的保证原始数据的内特征。 X I = X H Z X^I = XHZ XI=XHZ,得到如下:

image-20210227223654509

  • X n × d = [ X 1 ; X 2 ; . . . X n ] X_{n\times d} = [X_1;X_2;...X_n] Xn×d=[X1;X2;...Xn] ,每一行代表一个样本。每个样本有d个维度的特征。

  • H d × k H_{d\times k} Hd×k是选择矩阵,每个样本都选择其中的某些特征,删去其他特征。想要达到这种效果,每列只能有一个1,其他为0。例如,从4个特征中,选择每个样本的第1,2,4特征,不要第三列特征。则H为:
    H 4 × 3 = [ 1 0 0 0 1 0 0 0 0 0 0 1 ] H_{4 \times 3} = \begin{bmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 0 \\ 0 & 0 & 1 \\ \end{bmatrix} H4×3=100001000001

这里就是一个矩阵相乘计算的技巧。H的每个列只有一个1,而为1的那个行号,就代表这个特征被选上了。如果H行每列有两个1,那么生成的维度是这两个特征的加和。

H每行也尽量有一个1,如果某有一行有两个1,说明这个特征被选择了两次。

当然实际操作中,不一定是1,可以是一个相对较大值等。因为这个值要乘在原始数据的前面。如果为0.5,说明原始特征缩小0.5.

  • Z k × d Z_{k \times d} Zk×d矩阵是用来进行反向恢复的,从选择的特征中恢复为X的近似

image-20210227231344495

  • μ \mu μ是一个系数。

  • ∣ ∣ H ∣ ∣ 2 , 1 = ∑ j = 1 k ∑ i = 1 d H i j 2 ||H||_{2,1} = \sum^k_{j=1}\sqrt{\sum_{i=1}^d H^2_{ij}} H2,1=j=1ki=1dHij2 H ∈ R d × k H \in R^{d \times k} HRd×k

    2,1范数是为了让矩阵的每列有尽量多的0。(根号里是列和。)这是为了保证稀疏性

  • H T H = I H^TH = I HTH=I正交性使得H矩阵在学习过程中具有可解释性。(正交性这里应该是广义正交性。)

    1) 所有的列向量都是单位正交向量

    2) 所有的行向量都是单位正交向量

    这里其说白了就是为了限制某一个行、列尽量只有一个较大的数(不一定是1,上述的1只是一个例子。),其他为0。

    Here, orthogonality and non-negativity jointly guarantee that each column of H has only one large element and the others are close to zero. These

继而可以写成:

image-20210228100357603

具体实现:

得到这个公式,重点在于 X H XH XH是特征选择的过程(类似编码器的编码过程),Z是恢复矩阵,即从选择的特征中恢复为 X X X的过程,即 X H Z XHZ XHZ X X X的近似(类似解码器解码)。
所以就得到这个过程优化函数:

image-20210228101413159

  • σ ( X C ) \sigma(XC) σ(XC)作为encoder,用来近似求解XH,C为权重 。
  • σ ( σ ( X C ) W ) \sigma(\sigma(XC)W) σ(σ(XC)W)外层的用来近似求解W,W为decoder的权重矩阵
  • C T C − I C^TC-I CTCI为了保证正交性,后面21范数是保证C的稀疏性。

C和W矩阵的梯度更新公式:
image-20210228181551948

image-20210228181601751

但是要注意一点就是H是非负的,通过梯度训练出来的权重C是可能为负数。解决这个的办法是:

image-20210228181415270

  • E = σ ( X C ) E = \sigma(XC) E=σ(XC)

  • F范数是每个元素平方 求和 再开根

  • 这里是求一个矩阵H,使得等式11最小,是一个优化问题,自变量为H。其他为已知 。

算法过程

image-20210228181530513

要注意的

  • 第8步收敛之后,我们使用公式11来计算非负的矩阵H。因为此时 σ ( X H ) 、 X \sigma(XH)、X σ(XH)X都是已知的了。在此处就是求一个非负的H满足整个等式最小。

  • 第9步,这样做是为了让近似的H矩阵中前k个特征选择最明显的留下,其他的都置零。相当于近似保证有k个行的F范数接近于1,留下这k行,其他的清0,才能近似保证只选择k个特征。

实验

待补充,在几个图像数据集上提升效果很好

Reference

[1]. Zhang, Y., Lu, Z., & Wang, S. (2021). Unsupervised feature selection via transformed auto-encoder. Knowledge-Based Systems, 215, 106748. https://doi.org/10.1016/j.knosys.2021.106748

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值