多标签学习:LIFT: Multi-Label Learning with Label-Specific Features
多标签学习:LIFT: Multi-Label Learning with Label-Specific Features
@(Machine Learning)
Intro
LIFT是张敏灵教授提出的多标签(multi-label)的学习方法。关于multi-label的介绍可以看我这篇博客,其中主要描述了multi-class、multi-label、multi-task的定义和区别。
本人根据论文总结了LIFT算法,并根据提供的matlab语言的code,完成了LIFT算法的Python版本,主要用到了sklearn提供的api,以便我自己使用该算法。
论文原文、论文代码和我重写的Python版本的LIFT代码可以在文末的Source找到
Algorithm
论文给出的伪代码:
根据论文,LIFT可以分为两个步骤:
1. label-specific features construction
2. classification models induction
其中主要的是第一个步骤,构造标签间关系定义的特征,其也可以包括下面的步骤:
将训练样本划分为正类和负类:
在正类和负类中聚类,保存centers,聚类的数目由下式给出:(论文提到,这个选择的原因是class-imbalance问题)
将原特征映射为新特征:(该步骤也就是求每一个原特征到每一个class得到的所有centers的欧式距离)
需要注意的是第三个步骤中,论文提到”which can be served as appropriate building blocks”,这个的意思是做映射的时候,可以将原特征分为一个一个的block进行映射,最后一个block可能会不够一个block的数量,需要特殊处理,这可能是论文给出的代码中需要花时间理解的部分。
然后就可以把得到的特征放入分类器中进行分类,也就是说LIFT的第二个步骤。该步骤在论文给出的代码中使用的是SVM,利用了matlab的libsvm库,论文提到可以使用其他二分类器。为了方便使用其他二分类器,我才将源码重写为python的版本,这样就可以非常方便地调用sklearn的二分类器了。
描述完算法后,论文用很大的篇幅写了Experiments,使用了很多metrics,来说明LIFT是多标签分类的有效的方法。关于怎么去测试和评判一个算法的好坏,论文非常严谨,也是非常值得学习的地方。
Source
From Prof. MinLing Zhang:
Paper Download
Code Download
From my github:
LIFT in Python
多标签学习:LIFT: Multi-Label Learning with Label-Specific Features相关推荐
- 多示例学习(Multi Instance Learning)和 弱监督学习(Weakly Supervised Learning)
目录 弱监督: 多示例学习: 弱监督: 1. 弱在缺标签:标签是不完全的,有的有标签,有的无标签 2. 弱在标签不准确:有的标签正确,有的标签错误 3. 弱在标签不精准: 标签不是在样本上,而是在更高 ...
- Multi task learning多任务学习背景简介
2020-06-16 23:22:33 本篇文章将介绍在机器学习中效果比较好的一种模式,多任务学习(Multi task Learning,MTL).已经有一篇机器之心翻译的很好的博文介绍多任务学习了 ...
- 论文阅读笔记——Multi-Label Learning with Global and Local Label Correlation(具有全局和局部标签相关性的多标签学习)
目录 方法 一.低秩矩阵 二.矩阵填充 三.矩阵分解 四.模型 (1)利用标签相关性:使用标签相关性来规范模型: (2)全局和局部标签相关性可能共存,引入标号流形正则化来合并全局和局部标签: (3)学 ...
- 论文翻译 —— Disambiguation-Free Partial Label Learning 非消歧偏标记学习(PL-ECOC)
标题:Disambiguation-Free Partial Label Learning 文章链接:http://aaai.org/ocs/index.php/AAAI/AAAI17/paper/v ...
- 极限多标签学习综述(Extreme Multi-label Learning)
A Survey on Extreme Multi-label Learning 先给地址: https://arxiv.org/abs/2210.03968 博主曾整理过Multi-Label Im ...
- MIML系列(一):Fast Multi-Instance Multi-Label Learning 快速多示例多标签学习
MIML系列(一):Fast Multi-Instance Multi-Label Learning 快速多示例多标签学习 目前的研究方向是基于MIML的,然而网上关于MIML的论文讲解有点少,因 ...
- 综述系列 | 多标签学习的新趋势
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 导读 随着Deep learning领域的不断发展,我们面对的问题 ...
- 最新综述:多标签学习的新趋势
这里给大家带来一篇武大刘威威老师.南理工沈肖波老师和 UTS Ivor W. Tsang 老师合作的 2020 年多标签最新的 Survey,我也有幸参与其中,负责了一部分工作. 论文链接: http ...
- Deep Label Distribution Learning With Label Ambiguity
2017 年Deep Label Distribution Learning With Label Ambiguity精读 2021-06-21最近想要做关于semantic segmentation ...
最新文章
- 通过MySQL自动同步刷新Redis
- erlang使用leveldb
- 网易云音乐直链提取及下载
- Conda的PyTorch安装
- ajax直接调用数据库数据库数据库,AJAX调用mysql数据库简单例子(示例代码)
- 带“小弟”其实是一种投资
- 华为云平台 IP SAN 存储配置
- 解读大内老A的《.NET Core框架本质》
- 红月所有物品完全代码
- ScriptManager脚本管理器
- Kubernetes(K8s) —— 容器编排管理技术
- 杨百万:股市就要见顶了 但没前一次悲惨
- 两点定标法_生化分析仪的定标方法
- Smart Socket隐私权政策
- 如何设置 OctaneRender 渲染软件离线模式的加密狗?丨使用教程丨软件安装教程丨正版(非破解版)
- 信奥一本通2069(糖果问题)配解析
- RSA攻击方法总结笔记
- easyui-filebox再苹果手机上只能打开摄像头不能选择文件
- 机房收费系统文档总结(反思篇)
- 【Mybatis】Helloworld
热门文章
- js截取数组slice(),splice()两种方法
- 图像分割的java程序_基于java的图像分割(数字图像处理)
- 微信跳转手机浏览器下载app和访问指定页面无法自动跳转的解决方案
- 计算机视觉行为分析,计算机视觉技术在人体行为分析中的研究与应用
- java+s2sh+mysql音乐网站
- mysql 全文 搜不出_mysql全文搜索失败
- setcellvalue 格式_组态常用函数
- Linux进程间通信:共享内存函数(shmget、shmat、shmdt、shmctl)及其范例
- C语言float与char类型转换
- 2021中国人工智能年度评选开启:让更多人看到AI的真正价值