visit
“”. .
I’ve worked in the technology industry for 20 years and much has changed in that time. But one thing that hasn’t is the firehose of unfamiliar terminology used, abused, and generally misused, usually in a range of different contexts. These days, it’s easier than ever to of new jargon, but, every so often I hit a phrase that leaves me in a loop of Google searches and open browser tabs. Some phrases seem to defy clear description: I’ve already covered “ontology” in a .
Here, I aim to simplify another such example. You too may have heard the phrase “knowledge graph” and turned to Google to find out what it means. Did you ever work it out? If not, read on. All will be explained…The output of Google’s Knowledge Graph following a search for Bertrand Russell In their 2012 , Google announced
“… we’ve been working on an intelligent model — in geek-speak, a ‘graph’ — that understands real-world entities and their relationships to one another: things, not strings.”There is no official information about exactly how Google’s Knowledge Graph works, but it draws upon public sources such as Wikipedia, and also amasses data on what people search for on the web. By the end of 2016 it contained 70 billion connected facts.
From “”. OK. Quite a range — from reasonably clear to completely opaque. In the same article, after outlining the various definitions above, the authors then go on to propose the following definition of a knowledge graph, highlighting reasoning as a key characteristic:
A knowledge graph acquires and integrates information into an ontology and applies a reasoner to derive new knowledge.
This is the main difference between the terms knowledge graph and knowledge base. The terms are used interchangeably, but they are not necessarily synonymous. While every knowledge graph is a knowledge base, or uses a knowledge base, the key is in the word “graph”.
A knowledge graph is organised as a , which is not always true of knowledge bases. The primary benefits of a graph are that connections (relationships) in the data are , you can easily connect new data items as they are injected into the data pool, and, finally, you can easily traverse links to discover how remote parts of a domain relate to each other (there’s a huge value in linking information). A graph is one of the most flexible formal data structures, so you can easily map other data formats to graphs using generic tools and pipelines.Terminology alert! By “semantic”, I mean that the meaning of the data is encoded alongside the data in the graph, in the form of the ontology. A knowledge graph is self-descriptive, or, simply put, it provides a single place to find the data and understand what it’s all about.
There is an additional benefit in that you can submit queries in a style that is much closer to a natural language, using a familiar domain vocabulary. That is, the meaning of the data is typically expressed in terms of entity and relation names that are familiar to those interested in the given domain. This enables smarter search, more efficient discovery, and narrows the communication gap between data providers and consumers.Duh — it’s a graph. Relationships are first-class citizens and the links between data add huge value, as well as flexibility.
It’s semantic or self-descriptive and has a natural language-like representation, making it easy to query and explore.
It’s smart. Inference can uncover hidden knowledge that is too complex for human cognition, and being a graph means you can apply various graph-computing techniques and algorithms.
It’s alive. You can use a knowledge graph to store information in a form that is easy to reuse.
Let me know how you think I did in clearing up the confusion…and what I should take on next! Many thanks to my colleagues at for help in writing this article, particularly for helping me find a path through the concepts and difficult words.