如何构建知识图?

时间:2015-04-05 19:02:37

标签: algorithm search graph artificial-intelligence

我使用可在我的计算机上运行的pagerank创建了一个小型搜索引擎。我有兴趣在它上面构建一个知识图,它应该只返回在正确的上下文中查询的网页,类似于Google如何找到搜索问题的相关答案。我看到很多关于知识图的宣传,但没有很多文献,几乎没有伪代码,如建立一个指南。有没有人知道这些知识图如何在内部工作的良好参考,所以没有必要创建关于知识图的模型?

1 个答案:

答案 0 :(得分:35)

知识图是一个流行语。它是为实现结果而组合在一起的模型和技术的总和。 旅程的第一站以Natural language processingOntologiesText mining开头。这是一个广泛的人工智能领域,请here进行该领域的研究调查。

在构建自己的模型之前,我建议您使用专用工具箱(例如gensim)尝试不同的标准算法。您将了解tf-idf,LDA,文档特征向量等。

我假设你想要使用文本数据,如果你想使用其他图像进行图像搜索则不同。音频部分也是如此。

构建模型只是第一步,Google知识图中最困难的部分是每天实际扩展到数十亿个请求......

可以轻松构建良好的加工管道"在Apache Spark之上,"当前的Hadoop"。它提供了一个弹性分布式数据存储区,如果您想扩展,这是必需的。

如果您想将数据保存为图形,如图论(如pagerank),对于实时查询,我建议您使用Bulbs这是一个框架,它是"类似于ORM for图形,而不是SQL,您使用图形遍历语言Gremlin来查询数据库"。例如,您可以将后端从Neo4j切换到OpenRDF(如果您使用本体,则非常有用)。

对于图表分析,您可以使用Spark,GraphX模块或GraphLab

希望它有所帮助。