查找问题相似性的算法

标签 algorithm search data-mining

我做了同样的数据挖掘,并从 glassdoor 上提取了谷歌和微软的所有面试问题: http://letschat.info/?p=34

http://letschat.info/?p=37

我有两个列表。

我想做的是可能会拉一些其他公司的面试问题,并尝试在多个来源中找到相似的问题。

我做了一些谷歌搜索,我找到了这个项目:

http://lucene.apache.org/core/

我可以做以下事情: http://javatechniques.com/blog/lucene-in-memory-text-search-example/

然而,这似乎有点矫枉过正。有没有更简单的算法可以帮助我找到类似的问题?栈溢出用什么算法?

我在考虑是否可以根据两个问题之间匹配的单词数生成一个分数,然后以这种方式进行过滤。

我想尝试将问题列表缩减为唯一数量的问题列表。

更新:

我决定使用lucene。我将整个列表放入索引并遍历列表并使用 lucene 搜索 10 个类似的项目。然后我将这 10 个结果的分数相加,看看哪些问题被问得最多。

这里是实际代码的链接:http://letschat.info/ranking-of-reduced-amazon-questions/

这并不复杂。以下是结果示例: http://letschat.info/ranking-of-reduced-amazon-questions/

来源: http://letschat.info/list-of-amazon-questions/

最佳答案

实际上,cosine similaritytf-idf vectors ,这是 Lucene 实现的,是一种常见的(并且非常基本的)测量文档间相似性的方法。如果我是你,我会尝试一下(尽管你的文件可能有点短,但它不能很好地发挥作用)。 Lucene 也做了一些不错的文本规范化。

关于查找问题相似性的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9456874/

相关文章:

python - 所有分类算法列表

c++ - 如何为自定义文件格式构建过滤器处理程序,以便可以通过 Windows 搜索搜索其内容?

machine-learning - XGBoost 和 Sklearn 中的对数损失相同吗?

c - 使用 C 中的 Miracle Library 进行 ECC 加密

algorithm - 动态规划算法 : Walking on Grid

python - 在 Python 中编辑距离

search - 在 vim 中用另一行代码替换一行代码?

string - 为什么朴素的字符串搜索算法更快?

machine-learning - 决策树——节点的熵可以为零吗?

machine-learning - 无监督学习中的集成学习