Python 仅保留特定于域的关键字?

Python 仅保留特定于域的关键字?,python,nlp,machine-learning,nltk,Python,Nlp,Machine Learning,Nltk,我试图为我收藏的某类文档确定最流行的关键字。假设领域是“计算机科学”(当然包括网络、计算机体系结构等),那么从文本中保留这些领域特定关键字的最佳方法是什么?我尝试使用Wordnet,但我不太清楚如何最好地使用它来提取这些信息 考虑到我事先不知道所有特定领域的关键字,是否有任何众所周知的单词列表可以用作白名单?或者有什么好的nlp/机器学习技术来识别特定领域的关键词吗?您需要大量的培训文档。这个集合的一小部分(但仍然是一大组文档)应该表示给定的域。使用nltk计算词形统计,过滤掉停止词。好的统计数

我试图为我收藏的某类文档确定最流行的关键字。假设领域是“计算机科学”(当然包括网络、计算机体系结构等),那么从文本中保留这些领域特定关键字的最佳方法是什么?我尝试使用Wordnet,但我不太清楚如何最好地使用它来提取这些信息


考虑到我事先不知道所有特定领域的关键字,是否有任何众所周知的单词列表可以用作白名单?或者有什么好的nlp/机器学习技术来识别特定领域的关键词吗?

您需要大量的培训文档。这个集合的一小部分(但仍然是一大组文档)应该表示给定的域。使用nltk计算词形统计,过滤掉停止词。好的统计数据是TF*IDF,它大致是一个单词在域子集中出现的次数除以整个集合中包含该单词的文档数。关键词是具有最大TF*IDF的单词。

我使用过简约语言模型(LMs),在类似任务中取得了一些成功;这些术语将文档特定术语与一般语料库术语分开。已知它们比tf idf统计数据更强,但在拟合它们时需要设置参数

您可以找到我的Python实现;要使用它,请将每个主题的所有文档连接到一个文档中,然后从各个主题构建一个
简约LM
,并获取每个文档的
.top(K)
术语