Multi-Label Learning Based on Global and Local Target Point Correlation
Traditional single-label learning generally assumes that an example is related to only one label. However, with the development of technology and the increasingly complex form of data, an example is often related to multiple labels at the same time in real life scenarios. In the face of this situation, the multi-label learning framework is proposed. Most of the existing multi-label learning is considered from the perspective of label correlation, however, the correlation of target points is also a problem worth studying. At present, the target point correlation algorithms are all from the global perspective, or only from the local perspective to study the multi-label learning problem, which is not completely applicable to the actual situation. In this paper, we propose a new multi-label learning algorithm that utilizes both global object point correlation and local object point correlation. Firstly, the correlation of global target points is obtained by deep neural network, then the global target points are divided into local target points by K-nearest neighbor algorithm, and the correlation of local target points is measured by Euclidean distance. Finally, the global target point correlation and local target point correlation are combined to get an optimal solution. Experimental results on 8 multi-label data sets validate the effectiveness and feasibility of the proposed algorithm.
Multi-Label Learning
多标签学习
为了更好地处理多标签学习问题,越来越多的学者将注意力转移到如何更好地利用目标点相关性这一方面
因此,本文创新地提出了一种在多标签学习过程中能够同时捕捉到目标点的全局相关性和局部相关性的算法(multi-label learning using similarity of global and local target points, ML-GAL)。对于全局目标点相关性,通过深度神经网络学习得到。计算局部目标点相关性时,首先对于给定的一个目标点,利用k近邻算法来求其最近的几个目标点,然后用欧式距离计算出它们的相关性。最后,在不同领域共8个数据集上,对本文算法与其他主流方法进行仿真实验,证明了ML-GAL的性能在解决多标签问题时的有效性。
本文的主要贡献包括3个方面:
1) 提出了一种新的全局与局部目标点信息融合算法,更适用于现实中的多标签问题;
2) 利用深度学习方法,通过神经网络的不断迭代,得到多标签问题的最优解;
3) 与4种主流的多标签学习算法进行充分实验仿真,结果证明本文算法的有效性。
多标签学习算法可以分为两大类别,一类是“问题转换”策略,另一类是“算法适应”策略。
“问题转换”策略的核心思路在于通过对多标签训练样本进行处理,能够将多标签学习问题转化为其他熟悉并解决的问题,再进行求解。其中,单标签学习问题就属于经过“问题转换”策略解决后的结果。具有代表性的学习算法有binary relevance (BR)
“算法适应”策略的核心思路在于对传统的监督学习算法进行适应性改造,使其能够直接适应并处理多标签数据的学习内容。具有代表性的学习算法是ML-KNN
以上述两类算法为基础,许多学者正在考虑如何进一步利用目标点的相关性来提高模型性能。如上文说到的ML-KNN
在本节中,主要介绍本文提出的同时利用目标点的全局相关性和局部相关性的多标签算法(ML-GAL)。
在详细介绍本文的算法之前,先对多标签学习做一个最基础的解释。
在已有的多标签学习中,以流形为基础,相关的示例通常处于较小的局部领域,因此标签也十分相关。所以本文利用近邻的样本信息来帮助优化多标签模型。
假设示例集合为X = {x1,x2,…,xn},其中n表示示例的个数。每个示例x都可以与标签集合L的一个子集相对应。标签集合L = {l1,l2,..,lk},其中k为标签的总数。根据这些示例的标签可以获得指示向量y,该向量是一个长度为k的二进制向量。若x属于第i个标签,那么yi= 1,否则yi= 0。多标签问题就是找到一个函数f: X→{0,1}k,使f(x) = y。这也是本文算法要完成的任务。
在考虑如何将全局目标点相关性加入到本文模型中时,运用神经网络,通过其强大的学习和处理能力,来更准确地捕捉和解析目标点之间的关联。示例x可以为一个输入向量
,其中α为输入向量的维度。神经网络
对于最后一层,
,其中Wo为输出层的权重,bo为输出层的偏置,hm是最后一个隐藏层的输出。σ*为Sigmoid函数(如
为了训练上述构建的神经网络,我们定义一个损失函数来衡量预测值与真实值之间的差异,如下所示:
(1)
本文在这里使用的是二元交叉熵损失,其中L为所有标签的平均损失。
如前所述,从特征空间考虑,当样本的特征相关程度较高时,往往样本的标签集相关程度较高,因此,关注目标点的局部相关性是必要的。虽然已有很多学者在研究过程中利用到了目标点及其临近样本的信息,但是要么根据这些信息直接推断未知样本的标签集合,或者使用由局部信息计算的相关度作为权重。本文考虑从局部目标点相关性出发,用于约束对应标签空间中标签的相关性。
局部目标点相关性是指在一个特定样本的近邻范围内,目标点之间的关联程度。这种相关性通常体现在部分数据中,即相关的目标点往往具有相关的标签。局部目标点相关性和全局目标点相关性的主要区别在于它们的关注范围和影响方式。局部目标点相关性关注特定目标点及其近邻点的关系,有助于提高模型的局部预测精度;而全局目标点相关性关注整个数据集,有助于理解数据的整体结构和发现潜在的模式。在实际应用中,根据数据特点和任务需求,需要综合考虑这两种相关性来优化模型性能。
综上所述,局部目标点相关性和全局目标点相关性在多标签学习中各有优劣,将二者结合可以扬长避短。所以下面介绍本文对于局部目标点相关性的计算以及将其和全局目标点相关性融合的过程。
在计算局部范围内目标点的相关性时,假设一个查询点 ,我们的目标就是在X中找到与q点最近的num个点。首先利用欧式距离,公式为:
(2)
其中xij表示向量xi的第j个分量,qj表示查询点q的第j个分量。利用k近邻算法求距离q最近的num个点,并把它们保存到集合Nq中,过程如下式所示:
(3)
这里 表示数据集X中与查询点q最近的num个点的集合, 则为集合S的大小。
此时,最近的num个点中,经过上述神经网络输出的结果应该相近。即如下式所示:
(4)
其中 表示神经网络 输入xi得到的预测值, 表示神经网络 输入第j个xi的最近邻点得到的预测值。
结合上述(1)~(4)式,在同时考虑了全局目标点相关性及局部目标点相关性后,我们可以把最终需要优化的目标函数整理为下式:
(5)
在公式(5)中,λ1和λ2是平衡因子。目标函数中的第一项是为了防止过拟合的正则化项。第二项是预测值与真实值之间的全局差距,利用到了全局目标点的相关性。第三项是对不同示例的局部目标点的相关性进行约束。
由于目标函数呈现出非凸和不光滑的特性,它的梯度变化并不稳定。因此,传统的梯度下降方法在这种情况下无法有效工作。本文中,使用了拟牛顿下降法L-BFGS
本文在8种真实的多标签数据集上进行了充分的对比实验,来验证所提算法的有效性。实验中所使用的数据集详细信息如
名称 |
样本数 |
特征数 |
标签数 |
标签密度 |
数据类型 |
art |
5000 |
462 |
26 |
1.64 |
text |
business |
5000 |
438 |
30 |
1.59 |
text |
cal500 |
502 |
68 |
174 |
26.04 |
music |
enron |
1702 |
1001 |
53 |
3.38 |
text |
image |
2000 |
294 |
5 |
1.24 |
image |
llog |
1460 |
1004 |
75 |
1.18 |
text |
medical |
978 |
1449 |
45 |
1.25 |
text |
yeast |
2417 |
103 |
14 |
4.237 |
biology |
实验中,本文采用了5个广泛使用的多标签评价指标来全面评估各算法的表现。这5个评价指标包括Average precision、Ranking loss、Hamming loss、One error和Coverage。其中Ranking loss、Hamming loss、One error和Coverage
本文所提出的算法参数λ1、λ2的取值范围是
。此外,k近邻算法中k的取值范围是
数据集 |
BR |
ML-LOC |
ML-kNN |
GLOCAL |
ML-GAL |
arts |
0.594 ± 0.006 (4) |
0.623 ± 0.004 (2) |
0.524 ± 0.002 (5) |
0.607 ± 0.003 (3) |
0.631 ± 0.006 (1) |
business |
0.861 ± 0.007 (5) |
0.878 ± 0.002 (3) |
0.882 ± 0.001 (2) |
0.883 ± 0.001 (1) |
0.875 ± 0.001 (4) |
cal500 |
0.343 ± 0.017 (5) |
0.473 ± 0.003 (4) |
0.493 ± 0.002 (3) |
0.507 ± 0.001 (2) |
0.625 ± 0.003 (1) |
enron |
0.575 ± 0.006 (5) |
0.599 ± 0.003 (4) |
0.629 ± 0.002 (3) |
0.669 ± 0.002 (2) |
0.683 ± 0.007 (1) |
image |
0.788 ± 0.008 (3) |
0.650 ± 0.005 (5) |
0.795 ± 0.003 (2) |
0.766 ± 0.004 (4) |
0.802 ± 0.003 (1) |
llog |
0.207 ± 0.024 (5) |
0.339 ± 0.005 (2) |
0.306 ± 0.004 (4) |
0.316 ± 0.003 (3) |
0.351 ± 0.002 (1) |
medical |
0.748 ± 0.039 (5) |
0.894 ± 0.003 (1) |
0.802 ± 0.005 (4) |
0.815 ± 0.007 (2) |
0.803 ± 0.003 (3) |
yeast |
0.747 ± 0.010 (4) |
0.757 ± 0.003 (3) |
0.762 ± 0.002 (1) |
0.609 ± 0.001 (5) |
0.759 ± 0.001 (2) |
AvgRank |
4.500 |
3.000 |
3.000 |
2.750 |
1.750 |
数据集 |
BR |
ML-LOC |
ML-kNN |
GLOCAL |
ML-GAL |
arts |
0.201 ± 0.005 (5) |
0.152 ± 0.002 (4) |
0.148 ± 0.001 (3) |
0.137 ± 0.001 (2) |
0.134 ± 0.001 (1) |
business |
0.072 ± 0.005 (5) |
0.052 ± 0.002 (4) |
0.038 ± 0.001 (2) |
0.040 ± 0.001 (3) |
0.035 ± 0.006 (1) |
cal500 |
0.233 ± 0.008 (5) |
0.225 ± 0.002 (4) |
0.183 ± 0.001 (3) |
0.178 ± 0.001 (2) |
0.165 ± 0.002 (1) |
enron |
0.194 ± 0.006 (5) |
0.157 ± 0.002 (4) |
0.147 ± 0.001 (3) |
0.114 ± 0.002 (1) |
0.147 ± 0.001 (3) |
image |
0.205 ± 0.017 (4) |
0.311 ± 0.005 (5) |
0.172 ± 0.002 (1) |
0.199 ± 0.003 (3) |
0.185 ± 0.005 (2) |
llog |
0.328 ± 0.030 (5) |
0.273 ± 0.010 (4) |
0.165 ± 0.001 (1) |
0.182 ± 0.004 (3) |
0.179 ± 0.001 (2) |
medical |
0.089 ± 0.021 (5) |
0.023 ± 0.001 (2) |
0.044 ± 0.002 (3) |
0.058 ± 0.003 (4) |
0.017 ± 0.002 (1) |
yeast |
0.183 ± 0.006 (3) |
0.186 ± 0.003 (4) |
0.169 ± 0.001 (2) |
0.349 ± 0.002 (5) |
0.132 ± 0.003 (1) |
AvgRank |
4.625 |
3.875 |
2.250 |
2.875 |
1.500 |
实验结果是针对各个算法在8个数据集上实施了10次5折交叉验证,所得实验结果不仅展示了均值,还涵盖了方差。
实验结果表明,本文提出的ML-GAL算法在提升多标签学习性能方面是有效果的。在以上16组(2评价指标 × 8数据集)对比实验结果中,ML-GAL算法共有10次排在第一,3次第二,2次第三以及1次第四。并无排在最后的情况。
度量指标 |
FF |
临界值 |
Hamming loss |
5.0594 |
2.4004 |
One error |
19.2479 |
|
Coverage |
6.1513 |
本文采用了Friedman检验对5种不同算法的性能进行了显著性检验,并在
图4. ML-GAL与其他四个算法在Bonferroni-Dunn检验下的比较结果
通过分析
(1) ML-GAL算法在这三种评价指标上的表现均最为出色;
(2) ML-GAL算法在这三种评价指标上的性能都显著优于BR
(3) ML-GAL在One error评价指标下的数值表现尤为突出。与GLOCAL
本文提出了一种新的多标签学习算法,在解决多标签问题过程中同时考虑到了全局和局部目标点相关性。详细流程是先考虑整个训练数据中所包含的全局检测目标点的相关性,并利用神经网络来学习相关性。然后在一个簇中选定查询点,利用欧式距离计算局部目标点的相关性。将两种目标点相关性整合到一起来提升多标签学习模型的性能。最后在多种类型的数据集上和其他算法进行对比实验。实验结果表明了ML-GAL算法在多标签学习上的有效性和合理性。