1. 引言
Lee和Seung于1999年提出非负矩阵分解(NMF) [1] 以来,NMF已广泛应用于数据挖掘和机器学习等领域。作为一种数据降维方法,非负矩阵分解将数据矩阵近似表示成两个非负因子矩阵的乘积,非负性约束使得该方法具有整体由部分表示的可解释性 [2] 。这使得NMF在文本挖掘 [3] 、模式识别 [4] 、DNA基因表达分析 [5] 等诸多方面得以广泛应用。根据具体问题的不同,人们提出了具有不同目标函数的NMF的衍变算法并将之应用于协同过滤、分类、约束聚类 [6] 等数据分析任务。C Ding等理论上分析了NMF与K-means聚类的潜在联系 [7] 。
在图像聚类任务中,NMF以矩阵的Frobenius范数作为目标函数度量样本数据矩阵与重构后的矩阵元素间的整体误差,由于该目标函数对噪声和异常值不稳定 [8] ,且忽视了原始图像数据与重构后的图像列与列之间的近似关系,是重构后的数据矩阵对原始图像数据的“粗糙”近似。C Ding [9] 等使用矩阵的
范数作为目标函数,提出具有鲁棒性(robustness)的
NMF,相较于NMF而言,
NMF的目标函数度量是原始图像数据重排后的样本向量与重构后的矩阵列向量之间的误差,虽然相较于NMF而言,
NMF能够获得更为精细的图像表示,但仍然没有考虑到原始图像数据和重构后图像的列之间的近似关系。
因此,为使目标函数能够度量原始图像数据和重构后图像列之间的近似关系,从而减少原始图像数据空间结构的改变产生的影响,本文定义了向量的
函数并提出相应的
NMF算法,该算法具有与
NMF相当的鲁棒性的同时,兼顾了原始图像数据的空间结构,实验结果上看
NMF算法也具有更好的图像表示能力和图像聚类表现。
后续内容安排如下:第二小节介绍了相关工作;第三小节定义
函数,并定义
NMF算法的目标函数,从不等式推导和数值实验两方面说明
NMF算法的有效性;第四节推导给出算法的更新公式;第五小节引入辅助函数分析算法的收敛性;第六小节展示了
NMF算法和三种对比算法在三个数据集上的实验结果。
2. 相关工作
NMF是为了得到数据的部分表示 [1] 。给定一个非负矩阵
,NMF要将X近似表示成两个非负因子矩阵
和
的乘积,即:
(1)
为了求解U和V,对如下目标函数最小化:
(2)
其中
表示矩阵A的Frobenius范数。
Lee和Seung [2] 给出了相应的更新公式:
(3)
(4)
然而,NMF以Frobenius范数为目标函数会导致该算法对噪声和异常值敏感 [8] ,为解决这一问题,D Kong和C Ding等提出了具有鲁棒性的
NMF,该算法以矩阵的
范数为目标函数,定义如下:
(5)
其中
表示向量的2范数。
文 [11] 中给出了相应的更新公式:
(6)
(7)
其中D是对角矩阵,对角元素定义如下:
(8)
在图像聚类任务中,图像数据矩阵
的每一列
都是由一张分辨率为
的灰度图像按列重排后的样本向量,即
的每r个元素就是灰度图像中的一列。对比式(2)和式(5)可以看出,NMF度量X与UV所有元素间的误差,而
NMF度量的是样本向量
与重构后的数据矩阵列向量
间的误差。不难验证下式成立:
(9)
上式表明,样本数据矩阵与重构后数据矩阵列向量之间的误差达到设定的误差限时,矩阵元素间的整体误差也能达到误差限,反之则不然。这使得
NMF能够度量样本数据矩阵与重构后数据矩阵列向量间的近似关系,从实验结果上看,
NMF表示出的图像较之NMF要更加精细。
然而,
NMF度量的仍然忽略了原始图像数据与重构后的图像列之间的近似关系,这使得样本向量与重构后的样本向量间误差较小时并不能保证原始图像数据的列向量间的误差也足够小。
因此,本文考虑了新的目标函数来度量原始图像数据与重构后图像数据列之间的近似关系。
3.
目标函数
3.1.
函数
给定
,本文定义x的一个实值函数如下:
定义1
(10)
易验证,
满足范数的三条性质:
(1) 正定性 (2) 齐次性 (3) 三角不等式
对
,我们有:
(11)
当且仅当
时,不等式取等,显然当
且
,
时式(11)严格成立,因此
是关于变量x的严格凸函数。对于向量
,若
,该实值函数是x的
范数;若
,则该实值函数是x的
范数。限于定义中r,c是给定的,所以
并不是严格意义上
中的向量范数。
3.2.
NMF目标函数
为了对原始图像数据逐列度量误差,本文提出的
NMF的目标函数定义如下:
(12)
对于
,将
的每一列对应一张
的图像,借由式(9),不难验证下式成立:
(13)
由上式可知,对于
NMF而言,当原始图像数据与重构后的图像列之间的误差达到设定的误差限时,
NMF的目标函数值也能达到,反之则不然。这使得本文给出的目标函数相较于NMF、
NMF更能在减少目标函数值的过程中兼顾原始图像数据和重构后图像列之间的近似关系。
4.
NMF算法及鲁棒性说明
4.1.
NMF算法
本节给出
NMF算法的更新公式及推导过程。重述目标函数如下:
(14)
其中
,
。式(14)的拉格朗日函数如下:
(15)
(16)
(17)
其中
,
,
是哈达玛积(Hardamard product),表示矩阵元素间的乘积。
由KKT条件
,
;
,
即可得U和V的更新公式:
(18)
(19)
NMF算法见算法1。
4.2.
函数的鲁棒性说明
我们使用二维数据点来说明
NMF的鲁棒性。示例的十个数据点中有三个是异常值,对每一个数据点
我们使用
进行拟合,k值取1,如此我们把数据点投影到1维子空间中,实验中
NMF设定参数
,
。给定的数据点以及分别使用NMF、
NMF和
NMF得到的拟合值见图1,从图中可以看出,
NMF和
NMF得到的拟合值远离异常值的同时更加贴近原数据点,而NMF的拟合值则受到三个异常值的影响偏离了原数据点。对应数据点的残差
见图2,图中可以清晰地看出
NMF能够与异常值保持更大的残差从而减小异常值对拟合结果的影响,除开三个异常值处的残差外,相比于NMF而言,
NMF和
NMF都有更小的残差。
![](//html.hanspub.org/file/51-2623229x117_hanspub.png?20230331080025816)
Figure 1. The results of fitting ten data points
图1. 拟合十个数据点的结果
![](//html.hanspub.org/file/51-2623229x118_hanspub.png?20230331080025816)
Figure 2. The residual histogram of fitting the data points
图2. 拟合数据点的残差直方图
为进一步说明
NMF的有效性。我们在数据集上运行
NMF、
NMF和NMF算法进行对比。本文展示Yale数据集上的对比结果。该数据集中,每一个
都是由一张图像按列向量化所得,因此分解得到的基矩阵
中的每一个向量
也对应一张图像,将
重排成原始大小的图像,展示见图3。
图像排成两行,每一行的上、中、下层分别是
NMF、
NMF和NMF算法收敛后得到的基矩阵U重排后的图像结果。从图像可见,
NMF表示出的特征脸具有更加清晰的面部特征,例如对比明显的第一行的第1、2、5、6列和第二行的2、3、6、7、8列。总的来讲,
NMF和
NMF都能降低数据中的噪声和异常值对算法的影响,而
NMF相较于
NMF进一步兼顾了原始图像数据的空间结构,因此能获得比
NMF更加清晰的图像表示结果。以上从理论和实验结果两方面说明了
NMF算法的有效性。
![](//html.hanspub.org/file/51-2623229x135_hanspub.png?20230331080025816)
![](//html.hanspub.org/file/51-2623229x136_hanspub.png?20230331080025816)
Figure 3. The base matrix obtained on the Yale dataset
图3. Yale数据集上得到的基矩阵
5. 收敛性分析
定理1 对于
,目标函数
在更新规则式(17)和式(18)下是非增的。
为证定理1,引入辅助函数的定义以及引理1。
定义2 如果下列条件满足:
(20)
(21)
则称
是
的一个辅助函数。
引理1 若
是
的辅助函数,那么
在下列更新规则下是非增的:
(22)
证明:由定义2及引理1有
接下来给出辅助函数。记
是目标函数
关于
的部分,
对
的一阶导
和二阶导
分别如下:
(23)
(24)
其中
。
引理2 函数
(25)
是
在
处的辅助函数。
证明:取
在
处的泰勒展式
(26)
(27)
故
成立,显然,当
,有
,引理1得证。
易知
是关于
的二次函数,可得:
(28)
该式恰是更新规则式(19),故而定理1得证。篇幅所限,关于U的证明不再赘述。
6. 数值实验
本节使用本文提出的
NMF算法进行图像聚类实验,并与K-means、NMF算法 [2] 和
NMF算法 [9] 以及GNMF算法 [10] (正则项参数根据文献设定为10)进行图像聚类效果比较,实验使用的数据集是Yale、ORL。
6.1. 数据集介绍
Yale包含15个人,每个人不同表情、姿态和光照下的11张人脸图像,共165张图片,每张图片大小为32 × 32。
ORL包含40个人,每个人不同表情、姿态和光照下的10张人脸图像,共400张图片,每张图片大小为32 × 32。
6.2. 评估指标
本文以广泛使用的聚类精度(ACC)、归一化互信息(NMI)作为评估指标 [11] [12] 。
聚类精度(ACC)定义如下:
其中
是样本点的真实标签,
是算法得到的该样本点的聚类标签,n是数据样本总数,
定义如下:
是置换映射函数(permutation mapping function),Kuhn-Munkres算法可以得到最佳映射 [13] 。
记C为真实标签集合,
为算法获得的聚类标签,两者的互信息(mutual information)定义如下:
其中
和
分别是从数据集中任意选取一个样本,该样本属于
和
所在类的概率,而
则表示任意选取一个样本,该样本同属于
和
所在类的联合概率(joint probability)。
归一化互信息(NMI)定义如下:
、
分别是C、
的熵(entropies)。
,若两集合相同,则
;两集合无关,则
。
6.3. 参数设置
本文提出的
NMF需要根据原始图像数据的大小来确定 和 的值。在实验所用的Yale和ORL数据集中,每个样本向量表示一张32行、32列的原始图像,这两个数据集上
,
。
本文的数值实验环境为:Matlab 2016a,11th Gen Intel(R) Core(TM) i7-11800H @ 2.30GHz 2.30 GHz,16.00GB内存,Windows1164位操作系统。
具体步骤如下:
步骤一:从数据集中随机选取k类样本;
步骤二:使用算法1对选取的样本数据矩阵进行分解得到V;
步骤三:使用k-means算法对V进行聚类;
步骤四:计算ACC和NMI两个聚类指标。
重复上述步骤15次,记录ACC和NMI的平均值。
![](Images/Table_Tmp.jpg)
Table 1. Experimental results of three algorithms on the Yale dataset
表1. 三种算法在Yale数据集上的实验结果
![](Images/Table_Tmp.jpg)
Table 2. Experimental results of the three algorithms on the ORL dataset
表2. 三种算法在ORL数据集上的实验结果
7. 结论
本文定义了具有鲁棒性且兼顾原始数据图像空间结构的
函数并给出相应的
NMF算法,拟合测试数据时目标函数具有较好的抗噪(robustness)表现,图像数据集上聚类实验结果可看出,
NMF算法兼顾了原始图像数据结构,相对于K-means、NMF算法和
NMF算法以及GNMF算法而言在AC和NMI指标下具有更好的聚类性能,实验结果见表1、表2。以上均证实了本文算法的有效性。