与传统的机器学习的目的是学习一个函数F,由F(X)->Y,X中每个x对应一个y的模式不同的是,多标签学习的目标域Y具有多个y对应一个x。可表达为H(X)->2^Y
多标签学习的关键挑战
1 从多标签数据学习的一个关键挑战在于输出矩阵空间的巨大规模,即标签集的数量随着类标签数量的增加呈指数增长。例如,对于具有20个类标签的标签空间,可能的标签集数量将超过100万(即2的20次方)
为了应对指数大小输出空间的挑战,必须通过利用标签之间的相关性(或相关性)来促进学习过程。例如,如果我们知道一幅图像有“雨林”和“足球”的标签,那幺它被标注“巴西”标签的概率就会很高;如果一份文件涉及政治,就不太可能被贴上娱乐的标签。因此,有效利用标签相关性信息被认为是多标签学习技术成功的关键。根据学习技术考虑的相关性顺序,现有的标记相关性利用的策略可以大致分为三类:
一阶策略:以逐个标签的方式处理多标签学习任务,忽略与其他标签的关系,例如将多标签学习问题分解为多个独立的分类问题。一阶策略的突出优点在于其概念简单和高效。
二阶策略:通过考虑标签对之间的关系,两两一组的来解决多标签学习的任务,如将相关标签和不相关标签之间进行排序,或在任何标签对间进行交互等。由于标签相关性在某种程度上被二阶策略利用,所得方法可以实现良好的泛化性能。然而,在某些实际应用中,标签相关性并不遵守二阶策略的先验假设,即标签间关系并不总是两两相关的。
高阶策略:通过考虑标签之间的高阶关系来解决多标签学习的任务,例如将所有其他标签的影响施加到每个标签,或寻址标签的随机子集之间的连接等。显然,高阶策略比一阶和二阶策略具有更强的相关性建模能力。
多目标学习算法
1 问题转换方法:这类算法通过将多标签学习问题转换为其他成熟的学习场景来解决该问题。
1.1 分类链
该算法的基本思想是将多标签学习问题转化为一个二元分类问题链,链中后续的二元分类器建立在前一个二元分类器的预测基础上构建训练集D{(X,PRE(X)|O(Yr,Y)}
PRE(X)=concat(PRE(xi-1),O(yr,yi-1))
这里X为输入特征向量,PRE(X)为链表,表中数据为上一个x中的PRE(x),Yr为与X对应的标签集,Y为预测得到的标签,O(Yr,y)为判别函数当Y为Yr子集时输出1,否则为0。
1.2 随机k -标签集
该算法的基本思想是将多标签学习问题转化为多类分类问题的集成,集成中的每个组件学习器以Y的一个随机子集为目标,通过label Powerset (LP)技术构建一个多类分类器。LP是一种将多标签学习问题转化为多类(单标签)分类问题的简单方法。
在训练阶段,LP首先将原来的多标签训练集D转换为子多类训练集,将D中出现的每一个不同的标签集都作为一个新类处理:D{(X,Q(Y))},这里Q为子类映射函数
对于测试集中的不可见实例x,LP通过先查询多分类器的预测,再映射回Y的幂集来预测其关联的标签集Y,即Y=Q(g(x))
遗憾的是,LP在实际可行性上有两个主要的局限性:a)不完备性:LP局限于预测训练集中出现的标签集,即不能推广到训练集以外的标签集;b)低效率:当Y很大时,可能会有太多新映射的类导致训练的复杂性过高,另外同时也会有一些新映射类的训练示例极少。
为了保持LP的简单性,同时克服它的两个主要缺点,Random k-Labelsets选择结合集成学习,其关键策略是仅在随机k-标签集(Y中的size-k子集)上调用LP以保证计算效率,然后集成多个LP分类器以实现预测完备性。