谁能在Smalltalk中展示一个用于自然语言处理的tf-idf算法的简单实现或用法示例?我在一个名为NaturalSmalltalk的包中找到了一个实现,但它似乎太复杂了,无法满足我的需求。Python语言中的一个简单实现类似于this one。
我注意到Hapax中还有另一个tf-idf,但它似乎与软件系统词汇表的分析有关,我没有找到如何使用它的示例。
发布于 2012-11-08 03:20:19
我是Visualworks的原始Hapax包的作者。Hapax是一个通用的信息检索包,它应该能够处理任何类型的文本文件。我只是碰巧用它来分析源代码文件。
您正在寻找的类是TermDocumentMatrix,应该有两个方法globalWeighting:和localWeighting:,您可以将InverseDocumentFrequency的实例以及LogTermFrequency或TermFrequency的实例传递给它们,具体取决于您的需要。通常,当提到tfidf时,人们的意思是将对数项频率包括在内。
应该使用一个小的示例语料库来演示TDM类的最佳测试。如果测试还没有移植到Squeak,请让我知道,这样我就可以给你提供一个例子。
发布于 2012-07-08 15:39:14
TextLint是一个基于PetitParser的自然语言模式解析和匹配系统。它没有提供您所要求的内容,但将模型扩展到计算词频应该不会太难。
https://stackoverflow.com/questions/11381050
复制相似问题