我把文本存储在python字符串中。
我想要什么
记住..。
我有什么
我已经在使用nltk将语料库分解成标记并删除停止词:
# split across any non-word character
tokenizer = nltk.tokenize.RegexpTokenizer('[^\w\']+', gaps=True)
# tokenize
tokens = tokenizer.tokenize(text)
# remove stopwords
tokens = [w for w in tokens if not w in nltk.corpus.stopwords.words('english')]我知道BigramCollocationFinder和TrigramCollectionFinder为这两种情况所做的正是我想要的。
问题
我需要更高级别的n克建议,改进来自BCF和TCF的结果种类,并就识别最独特的个人关键词的最佳方法提供建议。
非常感谢!
发布于 2011-10-06 16:33:54
对于识别最独特的个别关键词的最佳方法,tfidf是总的衡量标准。因此,您必须以某种方式集成一个搜索引擎(或制作一个简单的自定义倒排索引,该索引是动态的,并保存术语频率、文档频率),以便高效、快速地计算tfidf。
至于您的N-克,为什么不使用“窗口”方法(窗口长度为N)创建一个自定义解析器,以标识其中最常见的解析器?(只需将每个N克作为字典中的一个键,其值为频率或分数(基于单个术语的tfidf ))。
https://stackoverflow.com/questions/7677201
复制相似问题