首页 > 代码库 > 分层数据表示模型--多层非负矩阵分解
分层数据表示模型--多层非负矩阵分解
1 简介
为了理解复杂的数据,人们提出了分层特征提取概念。著名的算法之一是2006年Hinton提出的Deep Belief Network(DBN)。随着训练深层结构的成功,人们又提出了许多深度学习的变体。尽管这些多层算法产生了多层方法在特征提取和提供对复杂问题的有效方法,但并没有告诉我们通过多层结构学到的特征之间的关系。
本文我们提出了一个分层数据表示模型,分多层的非负矩阵分解。我们提供了NMF算法的一个变体,nsNMF来进行分层学习。这里,我们通过在数据集上学习层之间的关系直观的展示特征分层表示。我们也证明了不同于一步学习,分层结构学到了更加多有意义和有帮助的特征,这些特征有更好的分布表示,在分类和小数量的特征重建中有更好的结果,并且减少性能的损失,甚至在表示低纬度的数据时。
2 非平滑非负矩阵分解(nsNMF)
网络结构由堆叠nsNMF组成。nsNMF是NMF的变体,它限制了稀疏性。NMF分解非负矩阵X为非负矩阵W和H,其中W是特征,H是对应的系数或数据代表;它旨在减少原数据X和它的重建WH之间的误差:C=1/2 ||X-WH||^2。为了限制标准NMF的稀疏性,我们引入了一个稀疏矩阵:S=(1-θ)I(k)+θ/k ones(k),其中k是特征的数量,θ是平滑系数,变化区间在0到1之间;I(k)是大小为k*k的单位矩阵,ones(k)是大小为k*k的矩阵。我们用S迭代来平滑矩阵,θ越接近1,就越平滑。在迭代更新上,我们用迭代S来平滑H矩阵,因此H如此反复迭代:H=SH。为了补偿稀疏性的损失,W变得稀疏。
3 多层结构
提出的分多层的NMF结构由许多单独算法的多层组成。我们首先单独训练各个层。我们
本文出自 “松鼠” 博客,请务必保留此出处http://apinetree.blog.51cto.com/714152/1560696
分层数据表示模型--多层非负矩阵分解