Text 如何使用weka进行术语提取?

Text 如何使用weka进行术语提取?,text,terminology,weka,categorization,Text,Terminology,Weka,Categorization,我需要从大型培训语料库中提取特定领域的术语,如政治术语等。如何使用Weka及其过滤器来瞄准此对象? 我是否可以在Weka中使用StringToVector()过滤器生成的特征向量来执行此操作?只要有合适的数据集,至少可以部分执行此操作。例如,假设您有这样一个数据集: @relation test @attribute text String @attribute politics {yes,no} @attribute religion {yes,no} @data "this is a t

我需要从大型培训语料库中提取特定领域的术语,如政治术语等。如何使用Weka及其过滤器来瞄准此对象?
我是否可以在Weka中使用
StringToVector()
过滤器生成的特征向量来执行此操作?

只要有合适的数据集,至少可以部分执行此操作。例如,假设您有这样一个数据集:

@relation test

@attribute text String
@attribute politics {yes,no}
@attribute religion {yes,no}

@data
"this is a text about politics",yes,no
"this text is about religion",no,yes
"this text mixes everything",yes,yes
例如,要获取有关政治的术语,您可以:

  • 删除宗教属性
  • StringToWordVector
    过滤器应用于文本属性以获取术语
  • 使用
    Ranker
    infogainattributeval
    应用
    AttributeSelection
    过滤器,以获取排名靠前的术语
  • 后一步将为您提供一个对政治类别最具预测性的术语列表。其中大多数是政治领域的术语(尽管有些术语可能是预测性的,但仅仅因为它们不在政治领域——也就是说,它们提供了负面证据)


    术语的质量取决于数据集。它涉及的主题越多,对你的结果越好;因此,与其像我的数据集中那样有两个类(政治类、宗教类),不如为每个类别提供大量的类和许多示例。

    谢谢。但我无法理解第1步。因为我的arff文件位于这个fomat(使用TextDirectoryLoader):`@relation'TestCats'@attribute@@@class@{mis,pol}@data“这是策略性文本…”,pol“这不是策略性文本…”,mis“我如何删除mis属性?”在您的情况下,类是重叠的,您不能使用步骤3,因为它将为您提供一个最能同时预测所有类的单词列表。所以你必须得到和我建议的相同的格式。为此,您可以使用filter
    MakeIndicator
    将标称类转换为多个属性,每个值一个属性。