我正在研究一个项目“从文本参数中提取关键短语”。为此,我首先使用stanford解析器(POS标记)进行输入清理,然后确定候选短语列表(总共大约300个)。然后我计算了每个短语的特征值。我在数据集中的每个文档上都遵循了这些步骤。现在我该如何进行,即如何使用WEKA找到关键短语。我应该如何在weka中存储短语和特征值(TFXIDF)。如何找到最终项目的效率?
答案 0 :(得分:1)
WEKA使用文本分类任务(如文本分类和聚类)完成了一项非常简单的工作,其中实例是相对较长的文本片段(例如从推文到文档)和类(当可用时)是非重叠标签(例如经济/体育/ ......,垃圾/合法电子邮件,情绪分析中的积极/消极等主题类别)。
然而,WEKA 不能直接适用于术语分类任务,例如Specch标记,Word Sense消歧,命名实体识别,或者在您的情况下,关键短语提取。对于应用WEKA,你不仅需要原始文本和手动提取的关键短语,而且要确定使这些文本片段成为实际关键短语的属性。例如,您必须检查您的示例,并确定关键阶段中的单词的词性和周围的单词实际上是重要的,以便猜测一段文本是关键短语。
我强烈建议您查看CONLL NER共享任务(CONLL 2002和2003)中使用的数据集中使用的表示形式。命名实体中的每个单词都是独立的,并在命名实体的中间或末尾标记为起始。此外,您可以使用的功能包括实际单词,周围单词及其词性。
例如,在NER 2003数据集的示例中:
U.N. NNP I-NP I-ORG
official NN I-NP O
Ekeus NNP I-NP I-PER
heads VBZ I-VP O
for IN I-PP O
你有“Ekeus”这个词是NNP
,它在名词短语(I-NP
)里面,它是“人”类型的命名实体(I-PER
)。您可以处理此格式以获取一个实例文件,您可以在其中使用POS标记和双字窗口中的实际单词:
@attribute word-2 string
@attribute word-1 string
@attribute word string
@attribute word+1 string
@attribute word+2 string
@attribute postag-2 {NNP, NN, ....} // The full list of available POS tags
@attribute postag-1 {NNP, NN, ....}
// ../..
@attribute named-entity-class {O, I-PER, I-ORG, ...} // The full list of possible NE tags
@data
"U.N.","official","Ekeus","heads","for",NNP,NN,NNP,VBZ,IN,I-PER
../..
如您所见,您必须确定每个单词所需的属性,并使用属性构建窗口。