文本摘要:如何选择正确的n-gram大小

时间:2015-01-21 16:33:14

标签: nlp data-mining information-retrieval text-mining summary

我正在努力总结文本,使用nltk库我能够提取bigrams unigrams和trigrams并按频率对它们进行排序

由于我是这个领域的新手(NLP),我想知道我是否可以使用统计模型,这将允许我自动选择合适的Ngrams大小(我的意思是大小为N-gram的长度)单词unigram,两个单词双字母,或3个单词trigram)

例如,让我说我有这个我想要总结的文本,作为总结,我将保留5个最相关的N-gram:

"A more principled way to estimate sentence importance is using random walks 
and eigenvector centrality. LexRank[5] is an algorithm essentially identical 
to TextRank, and both use this approach for document summarization. The two 
methods were developed by different groups at the same time, and LexRank 
simply focused on summarization, but could just as easily be used for
keyphrase extraction or any other NLP ranking task." wikipedia

然后作为我想要的输出,"随机漫步"," texRank"," lexRanks","文档摘要", "关键短语提取"," NLP排名任务"

换句话说,我的问题是:如何推断unigram比bigram或trigram更有意义? (仅使用频率作为N-gram相关性的度量将不会给我我想要的结果)

任何人都可以向我指出研究论文,算法或已经使用或解释过此类方法的课程

提前谢谢。

3 个答案:

答案 0 :(得分:1)

考虑到您有一个语料库,您可以尝试使用主题建模技术(例如Biterm)来帮助您推断出与给定主题最相关的术语,因为您的术语也可以是n-gram。这将是概率近似,因为正如您所提到的,简单地计算频率并不会产生良好的结果。

当然,这种方法考虑了词形还原和停用词。

答案 1 :(得分:0)

  1. 我认为文档摘要是依赖于域的。因此,如果您有域语料库,您可以使用tf-idf来了解您正在提取的n-gram的相关性。你可以对n-gram应用一些词形还原,以获得更好的相关性分数。

  2. 使用也可以浏览谷歌N-gram http://www.ngrams.info/来计算相关性得分。

答案 2 :(得分:0)

正如Adrian所指出的那样,一种简单但有点蛮力的方法是为语料库中的所有n-gram计算TF IDF分数。另一种方法可能是使用类似的方法-查找短语-两种统计方法(无耻的插件-我是帖子的作者,尽管不是所描述的方法)来确定多词短语的良好候选者。一旦有了这些短语,就可以按TF IDF分数对它们进行排序,以获得描述文本的N个最佳短语。一种更简单的方法可能是仅使用标准的关键字提取算法,例如RAKE或Kea。

相关问题