【问题标题】:Converting Multilabel dataset into Single Label?将多标签数据集转换为单标签?
【发布时间】:2015-01-24 12:38:32
【问题描述】:

我正在使用 reuter-21578 数据集进行单标签文本分类,但默认情况下该数据集是多标签的。许多研究人员从这个数据集中删除了多标签实例,他们在路透社类别中的实例数量与我的完全不同。如何删除数据集中属于多个类别的所有实例?我可以为此使用 weka 或 Rapidminer 来识别数据集中的多标签实例吗?

示例:

输入数据集 = {x1, x2, x3, x4, x5, x6, x7, x8, x9, x10} 标签 = {acq、earn、grain、corn} 分类结果 = x1, x2, x3 = 获取 x4, x5 = 赚取 x6, x7, x8 = 谷物 x9 = 谷物、玉米 x10 = 谷物,acq 输出数据集(我想要的)= 输出数据集 = {x1, x2, x3, x4, x5, x6, x7, x8} 输出标签 = {acq、earn、grain、corn} 分类结果 = x1, x2, x3 = 获取 x4, x5 = 赚取 x6, x7, x8 = 谷物 **要么** {这就是我假设我用 PolynomiaByBinomial Operator 实现的目标} 输出数据集 = {x1, x2, x3, x4, x5, x6, x7, x8, x9, x10} 输出标签 = {acq、earn、grain、corn} 分类结果 = x1, x2, x3 = 获取 x4, x5 = 赚取 x6、x7、x8、x9、x10 = 谷物 x9 = 谷物 x10 = 谷物

提前致谢

【问题讨论】:

  • 通常可以使用 RapidMiner(顺便说一下,包括 Weka),但我不太了解这个问题,无法给出准确的答案。你能举个例子吗?
  • @awchisholm 我有一个数据集 reuters-21578,默认情况下它是一个多标签数据集,其中某些文档可能属于多个类别,例如“谷物”和“玉米”等类别中的文档。我想通过删除属于多个类别的所有文档,将这个多标签数据集转换为单标签数据集。
  • 所以你的意思是你有多个列。每列本身就是一个可能的标签。是否要删除除一个标签列之外的所有列并保留所有行?
  • @awchisholm 看起来我没有正确提出问题,这让读者感到困惑,对此我深表歉意。从昨天开始,我搜索了很多东西,得出的结论是,我所要做的就是“使用二元相关性(或任何其他方式)进行问题转换”,将我的多标签数据集转换为单标签。我是通过 Rapid Miner 中的“Polynomial By Binomial”运算符来做的。我还在 rapidminer 论坛上找到了这个问题“rapid-i.com/rapidforum/index.php?topic=2505.0”,这正是我想要实现的。非常感谢

标签: machine-learning weka data-mining rapidminer text-classification


【解决方案1】:

最简单的方法是将数据集分解为二元问题。例如,如果您有数据集

text1: science
text2: sports, politics

将数据集分成3个数据集:

dataset1 (science): text1:true, text2:false
dataset2 (sports): text2:false, text2:true
dataset3 (science): text1:false, text2:true

创建3个二元分类器,每个类一个,使用对应的数据集训练它们,并组合结果。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-05
    • 2018-12-26
    • 1970-01-01
    • 2020-09-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-19
    相关资源
    最近更新 更多