2011年9月6日,星期二

多标签众包数据建模:第二部分

先前 我讨论了两种分析通过众包获得的多标签分类数据集的策略。 (此处的``多标签''是指将固定集中的零个或多个标签分配给特定项目)。第一种策略是减少到一组独立的二元标记数据集(IBR),该数据集对应于观测值和地面真实情况中不存在特定标记的情况。 IBR速度很快,但是在成本敏感型多标签(CSML)分类的背景下,加权Hamming损失仅能持续减少。换句话说,由IBR产生的基本事实多标签集的分布必然是各个标签分布的产物。第二种策略是在强大的标签集上减少到多类标签数据集,我称之为 多低位提取 (这是执行任务的可执行文件的名称)。 多低位提取 对应于CSML始终如一地减少为成本敏感的多类分类(CSMC),但遭受组合爆炸的困扰。中的``低等级'' 多低位提取 是指对混淆矩阵使用低秩方法来降低样本复杂性要求(不幸的是,这不能减轻计算复杂性要求)。

我从一个相对较小的测试数据集中介绍了一个轶事,该数据表明从0/1(整个集)损失的角度来看,两种方法产生的结果相同。由于IBR比 多低位提取 对于后一种方法,这并不是一个好兆头。随后,我尝试了更大的数据集,我可以说 多低位提取 有时可以大大提高后验模式的质量。一个引人注目的示例是一项涉及在Twitter上将标签分配给面向流行文化的个人资料的任务。对于印度电影演员来说,众包工作者可靠地分配了``电影演员''标签,但通常无法为个人资料分配额外的``宝莱坞''标签。使用IBR,这些配置文件的后验模式通常为{``电影演员'')。但是用 多低位提取 ,如果只有一个工作人员为配置文件分配了“宝莱坞”标签,而所有工作人员均分配了“电影演员”标签,则该配置文件的后验模式为{“宝莱坞”,“电影演员”导致0/1(整个设定)的损失大大减少。尽管这可以说是设计不良的任务,但这恰恰是IBR无法捕获的标签相关性,并且可能在实践中出现。

回想起来,毫不奇怪 多低位提取 需要更大的数据集才能胜过IBR。 IBR本质上将标签的所有遗漏视为等效,但是要可靠地推断出联合标签上的更复杂的错误模式,则需要足够的数据。不幸, 多低位提取 比IBR慢得多;根据上述流行文化数据集,IBR大约需要一分钟,而 多低位提取 需要4个核心小时。 注意 多低位提取 是经过合理优化的代码:用C编写,利用了 代表性体操 SSE使用基于SGD的稀疏M步骤,并具有多核E步骤。不幸的是,我处于尝试加快慢速学习算法的位置,这从来都不是一件好事。

中的最新版本 nincompoop 代码存储库在速度方面有很大的改进,但仍然不是我认为的快速。但是,如果您遇到一个标签总数不多的标签问题(例如20个),并且在实际情况下可以出现的标签最大数目的合理上限(例如3个),我认为值得尝试。在入睡之前将其启动,也许您会在早晨感到惊喜。

没意见:

发表评论