PL-PLE 基于标签分布和纠错输出代码的部分标签学习 21年软计算

21年软计算期刊论文地址

简要总结

本文提出了一种名为 PL-PIE 的部分标签学习(Partial Label Learning, PLL)算法,该算法基于标签分布的先验信息和误差纠正输出码(Error-Correcting Output Codes, ECOC)框架。PL-PIE 通过利用标签分布信息生成稳定的 ECOC 编码矩阵,并结合损失加权解码算法,解决了 PLL 中候选标签集包含唯一正确标签的问题。实验结果表明,PL-PIE 在多个受控 UCI 数据集和真实 PLL 数据集上表现出色,与现有最先进的 PLL 算法相比具有高度竞争力。

以下是对该文献假设、技术路线、技术细节、数学公式、创新点及实验结果分析的详细说明。


基于的假设

PL-PIE 算法基于以下两个核心假设:

  1. 候选标签集包含正确标签:每个数据样本的候选标签集 S i S_i Si 中必然包含其真实的 ground-truth 标签 λ ground-truth ∈ S i \lambda_{\text{ground-truth}} \in S_i λground-truthSi。这是 PLL 问题的基本前提,确保算法能够在候选标签集中寻找正确标签。

  2. 标签分布先验信息有效性:标签分布的先验信息(如训练样本中标签集的出现频率和标签对的共现频率)能够显著提高 PLL 算法的性能。这一假设认为,标签分布反映了数据的潜在结构,可用于优化标签分解和分类器的训练。


算法流程

在这里插入图片描述

使用的技术路线

PL-PIE 算法采用以下技术路线,将 PLL 问题分解为多个二元分类问题并加以解决:

  1. 先验知识构建:从训练数据集中提取标签分布的先验信息,包括候选标签集的排序数量和标签对的共现频率。
  2. ECOC 编码阶段:基于先验信息生成 ECOC 编码矩阵,通过组合、合并和填充三个步骤完成。
  3. 训练二元分类器:根据编码矩阵的每一列训练一个二元分类器,分别对应正类(+1)和负类(-1)。
  4. 解码阶段:使用损失加权解码算法,根据分类器的经验性能和预测置信度对未知样本进行标签预测。

这种路线充分利用了 ECOC 框架的纠错能力和标签分布的结构信息,从而提高预测的准确性和稳定性。


实现的技术细节

PL-PIE 算法的具体实现分为以下几个关键部分:

1. 先验知识构建
  • 唯一类别集合 Q Q Q:将具有相同候选标签集的训练样本归为一类,形成唯一类别集合 Q = { S 1 u , S 2 u , … , S k u } Q = \{S_1^u, S_2^u, \ldots, S_k^u\} Q={ S1u,S2u,,Sku},其中 k k k 为唯一类别数。
  • 排序集合 Q ′ Q' Q:根据每个类别中的训练样本数量 ∣ T m ∣ |T_m| Tm Q Q Q 进行降序排序,得到 Q ′ = { S 1 ′ , S 2 ′ , … , S k ′ } Q' = \{S_1', S_2', \ldots, S_k'\} Q={ S1,S2,,Sk}。样本数量多的标签集在后续分解中优先级更高。
  • 共现矩阵 O O O:计算所有候选标签集中标签对 ( λ i , λ j ) (\lambda_i, \lambda_j) (λi,λj) 的共现频率,构建共现矩阵 O O O,用于指导标签分解。
2. ECOC 编码阶段
  • 组合阶段
    • Q ′ Q' Q 从中间分成两半( Q 1 ′ Q_1' Q1 Q 2 ′ Q_2' Q2)。
    • 从两半中各选取一个标签集(如 S i S_i Si S j S_j Sj)作为正类和负类的初始组,优先选择样本数量较多的标签集。
    • 初始列定义为 column = S i − ( S j − S i ∩ S j ) \text{column} = S_i - (S_j - S_i \cap S_j) column=Si(SjSiSj),确保正类完整性。
  • 合并阶段
    • 迭代地从 Q Q Q 中选择新标签集 S i S_i Si
    • 根据 S i S_i Si 与正类和负类的共现程度(通过共现矩阵 O O O 计算),将其合并到正类或负类。若 S i S_i Si 与两者均有交集,则丢弃。
  • 填充阶段
    • 对编码矩阵中的 0 元素进行填充,替换为 +1 或 -1。
    • 目标是减少正负训练样本数量的不平衡,并确保每个标签集至少参与一次训练。
    • 填充规则:
      • 若存在未训练标签集 u ∈ U u \in U uU u ⊆ pos j u \subseteq \text{pos}_j uposj,则置为 +1。
      • u ⊆ neg j u \subseteq \text{neg}_j unegj,则置为 -1。
      • 否则,根据正负样本数量差 N j neg − N j pos N_j^{\text{neg}} - N_j^{\text{pos}} NjnegNjpos 的符号决定。
3. 训练二元分类器
  • 对 ECOC 编码矩阵 C M \boldsymbol{CM} CM 的每一列 C M ( : , j ) \boldsymbol{CM}(:, j) CM(:,j) 训练一个二元分类器 C j C_j Cj
  • 正类训练样本 T R j pos = { T m ∣ S m u ⊆ pos j } T R_j^{\text{pos}} = \{T_m \mid S_m^u \subseteq \text{pos}_j\} TRjpos={ TmSmuposj},负类训练样本 T R j neg = { T m ∣ S m u ⊆ neg j } T R_j^{\text{neg}} = \{T_m \mid S_m^u \subseteq \text{neg}_j\} TRjneg={ TmSmunegj}
4. 解码阶段
  • 使用损失加权解码算法,综合考虑每个分类器的经验性能和预测置信度,预测未知样本的标签。

详细的数学公式表达

PL-PIE 算法涉及以下关键数学公式:

  1. Hamming 距离

H D ( V , C M ) = arg ⁡ min ⁡ λ i = 1 , … , q ∑ j = 1 L 1 − sign ⁡ ( C j ( x ) ⋅ C M ( i , j ) ) 2 HD(V, CM) = \arg\min_{\lambda_i=1,\ldots,q} \sum_{j=1}^L \frac{1 - \operatorname{sign}(C_j(x) \cdot CM(i,j))}{2} HD(V,CM)=argλi=1,,qminj=1L21sign(Cj(x)CM(i,j))

用于衡量分类器输出向量与编码矩阵行之间的差异。

  1. 欧几里得距离

E D ( V , C M ) = arg ⁡ min ⁡ λ i = 1 , … , q ∑ j = 1 L ( C j ( x ) − C M ( i , j ) ) 2 ED(V, CM) = \arg\min_{\lambda_i=1,\ldots,q} \sum_{j=1}^L (C_j(x) - CM(i,j))^2 ED(V,CM)=argλi=1,,qminj=1L(Cj(x)CM(i,j))2

计算预测输出与编码矩阵的平方差。

  1. 经验损失加权距离

L W ( V , C M ) = arg ⁡ min ⁡ λ i = 1 , … , q ∑ j = 1 L 1 P M ( i , j ) e − C j ( x ) × C M ( i , j ) LW(V, CM) = \arg\min_{\lambda_i=1,\ldots,q} \sum_{j=1}^L \frac{1}{PM(i,j) e^{-C_j(x) \times CM(i,j)}} LW(V,CM)=argλi=1,,qminj=1LPM(i,j)eCj(x)×CM(i,j)1

结合分类器的经验性能和预测置信度。

  1. 性能矩阵

P M ( i , j ) = 1 D i ∑ ( x t , S t ) ∈ D i I { sign ⁡ ( C j ( x t ) ) = sign ⁡ ( C M ( i , j ) ) } PM(i,j) = \frac{1}{D_i} \sum_{(x_t, S_t) \in D_i} \mathbb{I}\{\operatorname{sign}(C_j(x_t)) = \operatorname{sign}(CM(i,j))\} PM(i,j)=Di1(xt,St)DiI{ sign(Cj(xt))=sign(CM(i,j))}

其中 D i = { ( x t , S t ) ∣ λ i ∈ S t } D_i = \{ (x_t, S_t) \mid \lambda_i \in S_t \} Di={(xt,St)λiSt} I \mathbb{I} I 为指示函数,衡量分类器 C j C_j Cj 在标签 λ i \lambda_i λi 上的经验性能。

  1. 规范化性能矩阵

P M ‾ ( i , j ) = P M ( i , j ) ∑ j = 1 L P M ( i , j ) \overline{PM}(i,j) = \frac{PM(i,j)}{\sum_{j=1}^L PM(i,j)} PM(i,j)=j=1LPM(i,j)PM(i,j)

对性能矩阵进行归一化,消除分类器间预测置信度的差异。

  1. 最终预测

f ( x ∗ ) = arg ⁡ min ⁡ λ i = 1 , … , q ∑ j = 1 L 1 P M ‾ ( i , j ) e − C j ( x ∗ ) × C M ( i , j ) f(x^*) = \arg\min_{\lambda_i=1,\ldots,q} \sum_{j=1}^L \frac{1}{\overline{PM}(i,j) e^{-C_j(x^*) \times CM(i,j)}} f(x)=argλi=1,,qminj=1LPM(i,j)eCj(x)×CM(i,j)1

通过最小化损失加权距离预测测试样本 x ∗ x^* x 的标签。


提出的创新点

PL-PIE 算法提出了以下创新点:

  1. 利用标签分布先验信息:通过标签集排序数量和标签对共现频率生成 ECOC 编码矩阵,克服了随机二分法的不稳定性。
  2. 优化编码矩阵生成:设计了组合、合并和填充三个步骤,确保每个分类器的二元分解更加合理且覆盖所有标签集。
  3. 损失加权解码:结合分类器的经验性能和预测置信度,提高解码阶段的预测准确性。

这些创新点共同提升了算法在 PLL 问题上的性能和稳定性。


实验结果分析

实验设置
  • 数据集
    • 受控 UCI 数据集:9 个数据集(如 E. coli、Segment 等),通过参数 r r r(候选标签数)、 p p p(部分标签比例)和 ϵ \epsilon ϵ(共现概率)生成 PLL 数据。
    • 真实 PLL 数据集:5 个数据集(Lost、BirdSong、MSRCv2、Soccer Player、Yahoo! News)。
  • 对比算法:PL-KNN、PL-SVM、CLPL、PL-ECOC。
  • 评估方法:10 次十折交叉验证,记录平均准确率和标准差,使用 0.05 显著性水平的双尾 t t t 检验。
结果分析
  1. 受控 UCI 数据集

    • PL-PIE 在 9 个数据集上的表现:
      • 优于 CLPL 的 100%(9/9)。
      • 优于 PL-KNN 的 90.9%(229/252 次测试),劣于 1.2%(3/252)。
      • 优于或相当于 PL-SVM 的 90.9%(229/252),劣于 1.6%(4/252)。
      • 优于或相当于 PL-ECOC 的 84.5%(213/252),劣于 0.4%(1/252)。
    • 随着 p p p ϵ \epsilon ϵ 增加,所有算法性能下降,但 PL-PIE 保持相对优势。
  2. 真实 PLL 数据集

    • Lost:64.41 ± 0.16,优于 PL-ECOC(59.62 ± 0.44)、PL-KNN(34.90 ± 0.16)、PL-SVM(62.38 ± 0.21),稍逊于 CLPL(69.68 ± 0.27)。
    • BirdSong:73.48 ± 0.27,显著优于所有对比算法。
    • MSRCv2:45.32 ± 0.46,显著优于所有对比算法。
    • Soccer Player:49.31 ± 0.26,与 PL-ECOC(49.23 ± 0.33)和 PL-KNN(49.36 ± 0.17)相当,优于 PL-SVM 和 CLPL。
    • Yahoo! News:61.90 ± 0.42,与 PL-ECOC(61.03 ± 0.38)相当,优于 PL-KNN 和 CLPL,逊于 PL-SVM(62.85 ± 0.37)。
  3. 参数敏感性

    • 基础分类器:PL-PIE 对分类器选择敏感,SVM 下性能最佳,优于 PL-ECOC;其他分类器(如 Bayes、KNN)在部分数据集上表现较差。
    • 组合阈值 ξ \xi ξ:在 ξ ∈ [ 0.5 , 0.7 ] \xi \in [0.5, 0.7] ξ[0.5,0.7] 时性能最佳,表明合并和填充的平衡对算法至关重要。
结论

PL-PIE 在大多数受控和真实数据集上优于或相当于现有 PLL 算法,尤其在小样本类别和复杂标签分布场景下表现突出。其优势源于标签分布先验信息和优化编码策略的应用。


以上是对该文献的全面分析,涵盖了假设、技术路线、技术细节、数学公式、创新点和实验结果的精确表述。