Knowledge Base

Google Knowledge Graph

Google 自己对它的介绍:「one of the key breakthroughs behind the future of search」。

When you search, you’re not just looking for a webpage . You’re looking to get answers, understand or explore .

So we’re building a massive graph of real-world things and their connections , to bring you more meaningful results.

See it in action. Discover answers to questions you never thought to ask, and explore collections and lists.

Zoom into the right thing, fast.

Language can be ambiguous —do you mean Rio the city, the movie, or the casino? With the Knowledge Graph, Google can understand the difference, helping you more precisely express what you mean as you enter your search.


这个 suggestion 的方法,仍然明确了 suggestion 和 search 在交互和功能上的界限。



They aren’t just words, they refer to real things in the world. That a building is a building and an animal is an animal and that they’re not just random strings of characters. If we could understand that those words are talking about those real world things , then we can do a better job of getting you just the content that you want off the web .

当你去搜索引擎中搜索一个词时,其他人可能去搜索过同样的事情了。Google can jumpstart your research process by combining the information that others found useful with the information in the: All the collective human wisdom that comes through our Search Engine, what people are searching for tells us what are the interesting things to put in our database.

其实就是豆瓣书影音很早就做的事情,构建一个知识库。 “what are the interesting things” 是搜索索引的热度排序。这里有两个问题:回流速度、效果量化。Airbnb 在 QCon 说他们日志数据可以在分钟级别回流到业务。

others found useful


  1. 你想了解 renaissance painters,但是你只知道 Leanardo da Vincl,通过知识图谱,就可以了解到更多其他的文艺复兴时期画家以及著名的画作。
  2. 所有获得诺贝尔奖的女性。

We’re in the early phases of moving from being an information engine to becoming a Knowledge engine and these enhancements are one step in that direction.

知识库足够大,才可以 understand ,understand user queries, understand the information that’s out there on the web, and intelligently connect the two. 类似于机器人,目前不能民用的最大困难之一,就是机器人不能 understand 它所处的环境,环境感知。 is a collaborative, community activity with a mission to create, maintain, and promote schemas for structured data on the Internet, on web pages, in email messages, and beyond. vocabularies cover entities, relationships between entities and actions .

Founded by Google, Microsoft, Yahoo and Yandex, vocabularies are developed by an open community process, using the mailing list and through GitHub .

Yandex 是一家俄罗斯互联网企业,旗下的搜索引擎在俄国内拥有逾60%的市场占有率,是目前世界第五大搜索引擎。

A shared vocabulary makes it easier for webmasters and developers to decide on a schema and get the maximum benefit for their efforts. It is in this spirit that the founders, together with the larger community have come together - to provide a shared collection of schemas .

For each of the types (such as Person ) and properties (such as name ) there is a corresponding full URI, as in the following examples:

Announcing Actions


An action performed by a direct agent and indirect participants upon a direct object. Optionally happens at a location with the help of an inanimate instrument. The execution of the action may produce a result. Specific action sub-type documentation specifies the exact expectation of each argument/role.

TODO direct / indirect, agent / participants / object

IBM Watson Conversation service



The application sends the user input to the Conversation service .

  • The application connects to a workspace, which is a container for your dialog flow and training data.
  • The service interprets the user input, directs the flow of the conversation and gathers information that it needs.
  • You can connect additional Watson services to analyze user input, such as Tone Analyzer or Speech to Text.


  • Configure a workspace. With the easy-to-use graphical environment, you set up the dialog flow and training data for your application.

Getting Started

Entity 的设置包括 Entity title 和 (Entity values, Synonyms) 元组列表。例如:

  • Entity title @City
  • Entity values: 例如 Manhattan
  • Synonyms: NYC, New York City, New York, Concrete jungle

Conversation service

Defining intents

An intent is a purpose or goal expressed in a customer’s input, such as answering a question or processing a bill payment.

从视频的介绍看,intent 是独立于 target 存在的。视频中举了一个 intent=turn off 的例子,可以是 turn off headlights / music / wipers 等可以 turn off 的任何东西。另外,添加 intent 时,必须给出不少于5个真实的用户输入,turn off 的几个例子:

  • I want to turn off my headlights
  • I don’t want to hear music anymore
  • Can I cancel cruise control
  • Switch my headlights off
  • I don’t need my wipers anymore


近日,高盛最新推出了一份讲解人工智能生态的重磅报告《高盛人工智能(AI)生态报告》(AI, Machine Learning and Data Fuel the Future of Productivity)(共99页)。报告从人工智能概念梳理开始,内容包括人工智能即将改变的行业、人工智能生态、应用案例、背后的主要驱动者(包括谷歌、亚马逊、英伟达、百度等科技巨头)等,并附有高盛调查得到的150多家人工智能与机器学习公司列表。 AI, Machine Learning and Data Fuel the Future of Productivity

额…计算能力还得跟得上。我假设l z的意思是完全不用现有的ontology从头建一个新的,那么参考google knowledge vault那篇纸..lz要是没有个data center估计得爬个10年..


作者:詹晨迪 链接: 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

知识库问答要解决的问题是计算机能够利用知识库中的知识对人们输入的自然语言问句给出答案,例如:“奥巴马的夫人是谁?”->“米歇尔.拉沃恩.奥巴马”。 具体方法可以参考论文中是如何实现的:

  1. 目前学术界采用的方法大致可以分成三大类:

    1. 基于信息提取(Information Extraction)的方法,这种方法先利用问句信息结合知识库资源获取候选答案,然后再从候选答案中甄别得到最佳答案 Yao Xuchen, Benjamin Van Durme. Information extraction over structured data: Question answering with freebase.
    2. 基于语义解析(Semantic Parsing)的方法,该方法关键在于将自然语言问句解析成一种表达问句语义的逻辑形式(Logical Form),再基于这种结构化的表达从知识库中寻找答案 Jonathan Berant, Andrew Chou, Roy Frostig, Percy Liang. Semantic Parsing on Freebase from Question-Answer Pairs;Jonathan Berant, Percy Liang. Semantic parsing via paraphrasing(有开源工具)
    3. 基于向量空间建模(Vector Space Modeling)的方法,与前两种方法需要人工设计规则、提取特征不同,这种方法使用向量空间描述自然语言问句以及知识库中的实体和关系,利用收集的问题-答案对进行各向量表征的自动训练,通过比较问句和备选答案在向量空间中的距离实现对于输入问题的回答 Antoine Bordes, Jason Weston, Nicolas Usunier. Open question answering with weakly su-pervised embedding models
  2. 也可以按照输入问题的复杂度分成:

    1. 简单问句:这种问题只需要一个三元组就能搞定,比较基础的通过LR的方法: Antoine Bordes, Jason Weston, Nicolas Usunier. Open question answering with weakly su-pervised embedding models;或者结合CNN、RNN神经网络的方法:Character-Level Question Answering with Attention
    2. 复杂问句:需要多个三元组,有时需要进一步的推理或者做一些计算。回答这类问题目前采用上面基于语义解析一类的方法效果较好。贴个微软目前比较新的工作 Wen-tau Yih, Ming-Wei Chang, Xiaodong He, and Jianfeng Gao. 2015. Semantic parsing via staged query graph generation: Question answering with knowledge base.


QA 1

你好!感觉你的回答非常到位,另外还想请教一个问题: 目前是否有关于解决知识库问答的相关开源软件?即,以上所提到的这些方法有开源的实现嘛?谢谢!

有,但不是很多,基于语义解析的方法回答复杂问题的一个开源工具:SEMPRE: Semantic Parsing with Execution

QA 2

赞!请教一下,您提到的三元组具体是指什么,可有相关文献么?谢谢!刚刚搜了一下,是不是这个?Triplestore - Wikipedia

嗯,我说的三元组就是里面的triple。A triple is a data entity composed of subject-predicate-object, like “Bob is 35” or “Bob knows Fred”.



作者:走刀口 链接:

机器学习里的分类算法。 自然语言处理里的信息检索、信息抽取以及一些基础技术包括句法分析、命名实体识别等等。 如果想做的更加智能,还可以应用人工智能的一些技术,比如知识推理等等。 可以参考下我之前做的关于问答系统的笔记:



作者:Losin 链接: 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


自然语言处理 (词性标注POS,命名实体识别NER,关系依存树dependency tree,信息抽取information extraction等)

机器学习 (分类算法,凸优化,矩阵分解)

进一步,可能会涉及到一些 深度学习 的知识,如长短时记忆网络LSTM,卷积神经网络CNN,记忆网络,动态记忆网络,注意力机制和各种神经网络的优化方法(dropout、batch normalization、weight decay、gradient clip等)和各种训练算法(学习率自适应,冲量momentum等)。


实际编程中可能会涉及到一些 大数据处理 和 访问数据库 的知识。



作者:Weichen Shi 链接: 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

大型QA系统大多数是基于Web信息检索的,各级NLP技术比如句法分析,NER,IR/IE等都会涉及。还有一种是基于Knowledge Base的, 将自然问句形式化成Query,到知识库里检索答案。


怎样从零开始做一个 Google Knowledge Graph 或者 Freebase 一样的的知识库系统,有哪些困难?

  1. 复杂的数据模型构建 freebase 的namespace domain type property,其中的相互关联关系。
  2. 数据结构、数据存储图数据存储
  3. 数据收集困难这种结构化的数据,添加困难,需要的字段比较多
  4. 完整的体系freebase的体系价值很大,需要内部构建基础的数据,同时需要定制规则,让其他数据源接入,商业合作类型的。需要大量的人工进行审核和规范。

作者:大唐 链接: 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

Google 收购 Freebase 意欲何为?

去年 Google 收购了开放数据领域领先的创业公司 Freebase,这次收购非常低调,确切的交易资料至今尚未可知。这是 Google 在使用结构化(语义)数据方面的一次重要迈进,或者仅仅是一次防御性的收购?

现在来看,其在搜索中的直接应用体现在Google Knowledge Graph上,搜索发展到现在,已经逐渐从基于关键词(keyword-based)过滤到基于用户意图了,而用户查询意图的理解比较复杂,除了利用用户行为,还有就是通过知识图谱了。现在大部分主流的搜索都在做(或者应用)知识图谱了,比如百度的“知心”

作者:苏绥 链接: 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


In computer science and information science, an ontology is a formal naming and definition of the types, properties, and interrelationships of the entities that really or fundamentally exist for a particular domain of discourse. It is thus a practical application of philosophical ontology, with a taxonomy.

以Freebase为实例,Freebase里众多的entity每一个都代表了一个真实的概念或者实体。比如实体观海同志(Barack Obama),你可以看到观海同志是一个实体,他有名字,他是一个实实在在的存在。那么这个存在的本质是什么呢?观海同志首先是一个人,那么知识库中必然有一个定义,叫做人,人就是上面定义的一个type。人还有属性,比如性别,年龄,这些就是上面定义里的property。观海同志还有第一夫人,那么观海同志及其夫人之间就有一个配偶关系,这个关系就是上面的interrelationships 。本体就是这些概念,计算机科学里本体其实就可以看成关系数据库里的关系模式,也就是一个关系和数据的描述系统。

知识库(Knowledge Base),就是一个知识数据库,包含了知识的本体和知识。Freebase是一个知识库(结构化),维基百科也可以看成一个知识库(半结构化),等等。知识图谱(Knowledge Graph),这个名词是Google的知识库的名字(The Knowledge Graph is a knowledge base used by Google to enhance its search engine’s search results with semantic-search information gathered from a wide variety of sources.),只是叫这个名字而已。。。不过好像最近很多把知识图谱等价于知识库来看待,原因大概在于很多场合中知识库的数据都是以 RDF三元组 的模式存储的,等价于一个图。。。而且感觉知识图谱听起来有点高大上的感觉。。。知识图谱识别。。。这个第一次听说啊什么鬼。。。

Google quietly debuts Chatbase, a chatbot analytics platform

Posted May 17, 2017 by Ingrid Lunden (@ingridlunden)

As our source describes it, chatbots are a “dark space” for Google. “Most of the traffic [for chatbots] goes through Facebook Messenger, Slack, and other platforms. With Chatbase, Google hopes to gain knowledge about conversations brands are having with customers.”

Google Actions