2013-09-23 101 views
0

我的问题非常简单,我花了几个小时搜索现有生成主题/单词关键字的方法。 例如,如果我输入的是:生成与单词相关的单词

面向对象程序设计

我想我要输出的线沿线:

类,对象,友元函数,静态变量等

我目前的解决方案的想法是谷歌我感兴趣的特定主题生成关键字,抓住第一个X(许多)结果页面,删除所有标签,并从他们停止的话,传递每个单词通过Python nltk lemmatizer得到它的基本形式,所以我不计算的话意味着基本上是相同的硫不止一次(“表演”和“表演者”都会变成“表演”),然后统计每个单词的出现次数,并将最高的x%作为我搜索主题中最相关的单词。

这个问题的第一个问题是它不会生成任何短语,因为它会单独处理每个单词,第二个问题是必须有一些东西已经在这个领域完成了,而我在研究过程中提出的结果是:上下文向量(看起来和我想要的非常相似,但实际上它们并不是真的......我认为......)第二件事是Porter stemmer算法,但后来我意识到,因为我的原因,后缀化更好......我还看到很多“关键字生成器”用于网站增加流量,但我非常怀疑我可以使用任何这些来实现我试图做的事情。

如果任何人都可以在这个算法或现有的研究,或任何的方向指向我的人,身份证是真的心存感激:)

回答

1

你所寻找的是一个focused crawler。看看BootCat。 BootCat将关键字提取为n-gram,但您可以使用自己的算法从网页中提取关键字(而不是将空格分隔的字符串提取为单词)。您也可以使用一些库或REST API来提取关键字,这会为您提取多个关键字。 Here,在“外部链接”部分中,您可以找到一些关键字提取器的列表。