在智能对话领域,现在工业界应用最多的还是用相似度算法来匹配知识库的做法。以这种思想构建的聊天机器人一般都不具备真正的智能,聊天的效果在很大程度上依赖于人工编辑的知识库的质量和数量。多轮对话更是没有效果。今天介绍的知识图谱将能够进一步挖掘出用户的聊天意图,具备一定联想和推理能力。将改善人机的对话效果。
一 知识图谱是什么
知识图谱用一句话说就是用图的形式去存储和表示知识。它的组成元素是节点(Node)和边(Edge),节点代表现实中的万物,而边则代表万物之间的关系。它用图的形式描绘了我们的现实世界。下面我用知识图谱表示了日本著名动画导演宫崎骏和他的作品以及他的作品和演员之间的关系。从图中可以看出,宫崎骏导演了包括《龙猫》在内的多部电影,而电影《龙猫》的演员有高木均等。这样千千万万个导演,演员和电影联系在一起,就形成了一个电影的知识图谱。
*该图是用Neo4j展示的,关于Neo4j的详情将在知识的表示一节中介绍
二知识图谱的优势
1.知识表示:知识图谱形象的表示出了万事万物的联系,在表示上很自然,符合人的理解逻辑。而且可以表现概念和实例的关系,父子的关系等等。
2.知识搜索:知识图谱用图的形式去除,在很多场景下将加快知识搜索的效率,试想一下,如果让我们用mysql这样的数据库去存导演,演员和电影的数据。要搜索“宫崎骏导演的电影的参演演员有哪些“。这将会是几张表来回的join。效率极低。而如果我们在图上搜索,以宫崎骏这个节点为起点,进行深度为2的搜索就会搜索到所有的演员。效率将会非常高。
3.推理和扩展:知识图谱是一个联系的世界,我们通过A可以找到B,通过B又可以找到C,而通过C又可以找到其他的东西,这对于知识的推理和扩展具有非常大的左右。比如,在上图中,宫崎骏是龙猫的导演,高木均是龙猫的演员。我们能不能推导出宫崎骏和高木均是好朋友呢?
三知识图谱的应用
一 智能对话
基于知识图谱的智能对话系统将比传统的基于相似度匹配的算法具有较高的准确率。更能理解用户的意图
二 推荐系统
如果图中的节点时商品或者是人,那根据节点间的联系可以为用户推荐相关联的用户或商品
网友评论