• 论文笔记:多标签学习——LIFT算法


    原文见 Zhang, M.-L., & Wu, L. (2015). LIFT: Multi-label learning with label-specific features. IEEE Transactions on Pattern Analysis and Machine Intelligence, 37, 107–120.在线地址
    特点
    把多标签问题转换成了多个二分类问题。

    关键步骤

    1. label-specific features construction
    2. classification models induction

    符号系统

    符号含义说明
    X = R d \mathcal{X}=\mathbb{R}^d X=Rd d d d维特征向量
    Y = { l 1 , l 2 , ⋯   , l q } \mathcal{Y}=\{l_1,l_2,\cdots,l_q\} Y={l1,l2,,lq}标签空间 l k l_k lk表示标签,其中 k ∈ [ 1 , q ] k\in[1,q] k[1,q]
    ϕ k ( x ) \phi_k(\mathbf{x}) ϕk(x) ϕ k ( x ) = [ d ( x , P 1 k ) , ⋯   , d ( x , P m k k ) , d ( x , N 1 k ) , ⋯   , d ( x , N m k k ) ] \phi_k(\mathbf{x})=[\mathbf{d}(\mathbf{x},\mathbf{P}_1^k),\cdots,\mathbf{d}(\mathbf{x},\mathbf{P}_{m^k}^k),\mathbf{d}(\mathbf{x},\mathbf{N}_1^k),\cdots,\mathbf{d}(\mathbf{x},\mathbf{N}_{m^k}^k)] ϕk(x)=[d(x,P1k),,d(x,Pmkk),d(x,N1k),,d(x,Nmkk)]将原特征空间映射到新的特征空间,其中 k ∈ [ 1 , q ] k\in[1,q] k[1,q]
    B k \mathcal{B}_k Bk由新的特征空间构成的二分类训练数据集其中 k ∈ [ 1 , q ] k\in[1,q] k[1,q]
    f : X → Y \mathcal{f}:\mathcal{X}\rightarrow \mathcal{Y} f:XY分类器

    主要过程:
    Step1:数据集分为标签含有 l k ( k ∈ [ 0 , q ] ) l_k(k\in[0,q]) lk(k[0,q])标签: P k = { x i ∣ ( x i , Y i ) ∈ D , l k ∈ Y i } \mathcal{P}_k=\{\mathbf{x}_i|(\mathbf{x}_i,\mathbf{Y}_i)\in D,l_k\in \mathbf{Y}_i\} Pk={xi(xi,Yi)D,lkYi}和不含 l k l_k lk标签: N k = { x i ∣ ( x i , Y i ) ∈ D , l k ∉ Y i } \mathcal{N}_k=\{\mathbf{x}_i|(\mathbf{x}_i,\mathbf{Y}_i)\in D,l_k\notin \mathbf{Y}_i\} Nk={xi(xi,Yi)D,lk/Yi}的两个数据集,针对这两个数据集进行k-means聚类成 m k m_k mk个簇,其中 m k m_k mk的取值为:
    m k = ⌈ r ⋅ m i n ( ∣ P k ∣ , ∣ N k ∣ ) ⌉ m_k=\lceil r\cdot \mathop {min(|P_k|,|N_k|)}\rceil mk=rmin(Pk,Nk)
    (其中 r ∈ [ 0 , 1 ] r\in[0,1] r[0,1] m k m_k mk取最小值可以避免 ∣ P k ∣ ≪ ∣ N k ∣ \mathcal{|P_k|\ll |N_k|} PkNk导致的类失衡,训练出的模型不准确)。
    完成聚类后的簇的中心表示为:
    针对正样本数据集: { p 1 k , p 2 k , ⋯   , p m k k } \{\mathbf{p_1^k,p_2^k,\cdots,p_{m^k}^k}\} {p1k,p2k,,pmkk}
    针对负样本数据集: { n 1 k , n 2 k , ⋯   , n m k k } \{\mathbf{n_1^k,n_2^k,\cdots,n_{m^k}^k}\} {n1k,n2k,,nmkk}
    于是,每个训练数据到每个中心点的距离组成了新的特征空间:
    ϕ k ( x ) = [ d ( x , P 1 k ) , ⋯   , d ( x , P m k k ) , d ( x , N 1 k ) , ⋯   , d ( x , N m k k ) ] \phi_k(\mathbf{x})=[\mathbf{d}(\mathbf{x},\mathbf{P}_1^k),\cdots,\mathbf{d}(\mathbf{x},\mathbf{P}_{m^k}^k),\mathbf{d}(\mathbf{x},\mathbf{N}_1^k),\cdots,\mathbf{d}(\mathbf{x},\mathbf{N}_{m^k}^k)] ϕk(x)=[d(x,P1k),,d(x,Pmkk),d(x,N1k),,d(x,Nmkk)]

    Step2: 由新的特征空间构成的二分类训练数据集进行训练,得到分类器 f k f_k fk
    如果对所有标签都完成上述操作,那么会得到 q q q个分类器,当预测时,同样需要对数据的原特征空间进行映射操作,然后经过 q q q个分类器进行分类,得到预测结果。

    论文中的伪代码:
    在这里插入图片描述
    LIFT算法的缺点:由于是对各个标签进行独立学习,没有考虑标签的相关性。

    总结:作者将一个多标签问题转换成了多个二分类问题来解决,通过聚类中心构建了新的特征集合(我们是不是也可以通过这种方式进行数据处理呀),然后根据新的特征空间生成多个分类器,最后结合多个分类器进行总体分类。

  • 相关阅读:
    学习笔记——并查集
    Pytorch实现线性回归
    自然语言处理学习笔记-lecture07-句法分析01
    C++入门篇2
    详细解读 React useCallback &useMemo
    内存一致性,指令重排序,内存屏障,volatile解析
    【Linux】升级GCC(版本9.3),补充:binutils
    浅谈java中的String
    【JavaScript 逆向】猿人学 web 第五题:乱码增强
    区域入侵AI算法如何应用在工地场景,保卫工地施工安全?
  • 原文地址:https://blog.csdn.net/Z__XY_/article/details/125471314