稀疏编码作为一种强大的无监督特征学习方法,已广泛应用于图像处理、视觉分析等领域。但传统稀疏编码往往忽略样本之间的内在几何结构,导致学到的基向量和稀疏表示可能不具备良好的判别性或局部保持性。
Sparse Concept Coding(SCC)是一种改进的稀疏编码框架,它在学习基的同时引入图正则化(基于样本相似性构建的邻接图),鼓励相邻样本在新的表示空间中依然保持相似,从而学到更具“概念”意义的稀疏基和表示。这种方法特别适合视觉任务,能提取出更具语义的特征。
算法核心思想
SCC的目标是最小化重构误差 ||X - B V||²,同时要求V的每一列(即每个样本的系数)是稀疏的。
整个过程分为两个主要阶段:
基学习阶段(Basis Learning)
使用谱图正则化(Spectral Regularization)学习基矩阵B。
首先根据数据X构建样本相似性矩阵W(默认使用k近邻+热核权重),然后通过求解带图正则的降维问题得到B,使得B既能很好重构数据,又保持数据的局部流形结构。
稀疏表示学习阶段(Sparse Representation Learning)
固定学到的基B,对每个样本独立求解L1正则化的最小二乘问题(即LASSO),得到稀疏系数矩阵V。
支持多种稀疏度控制方式:固定正则化参数γ,或指定不同的基数(cardinality,非零元素个数)要求。
最终输出的B是概念基,V是对应的高稀疏度表示。