What is a knowledge graph?
A knowledge graph acquires and integrates information into an ontology and applies a reasoner to derive new knowledge.
(Lisa Ehrlinger and Wolfram Wöß – University of Linz in Austria)
Useful concepts, places, people, organizations, etc. are organized into entities that can be brought up to display important information about the entity from a wide database. These entities connect through each other through various relationships. It utilizes machine learning technology to develop applications to collect and display custom search engine results programmatically. Some knowledge graphs utilize special programming such as Google, who uses JSON API and schema.org markup to create schematic data that enables website content to be embedded in the SERP.
The term knowledge graph has been frequently used in research and business, in close association with Semantic Web technologies, linked data, web-scale data analytics, and cloud computing. At SEMANTiCS, a few years ago, a research paper titled “Towards a Definition of Knowledge Graphs” by the Institute for Application Oriented Knowledge Processing of the University of Linz was presented to propose a definition of the knowledge graph that focuses on data modeling and reasoning.
“Towards a definition of a Knowledge Graph”
The popularity of the term is strictly connected with the launch of the Google Knowledge Graph in 2012, and by the introduction of other large databases by major tech companies, such as Yahoo, Microsoft, AirBnB and Facebook, that have created their own “knowledge graphs” to power semantic searches and enable smarter processing of data.
In the context of Semantic Web, a knowledge graph is a way of representing knowledge. In short, you start from a few triples and those triples are put in relationship to build a graph. For instance, let’s have a closer look – using Semantic Web technologies – at the Apology of Socrates entity on this blog:
As you can see we have a set of triples that tell us a story: The Apology of Socrates, also known as Apology of Socrates is about Socrates, has been written by Plato and mentions the concepts of Daemon and Socratic Dialogue.
A knowledge graph doesn’t speak any particular language. Language is human; a knowledge graph gets expressed in open linked data, which is the language of machines.
Imagine your entire website built upon a large knowledge graph made of all the metadata that describes the thing that you write about. That knowledge graph becomes part of a larger graph that comprises the new web. That is the power of Semantic Web.
Popular Knowledge Graphs
There are many different types of knowledge graphs developed by different companies that are used for different purposes. While many companies use an internal or smaller knowledge graph for online functions, some of the biggest ones are being used by many people all over the world. Below lists a selection of some of the largest knowledge graphs to date from Microsoft, Google, Facebook, IBM and eBay.
Purpose & Function
Stage of Development
Uses knowledge graph for the Bing search engine, LinkedIn data & Academics.
Actively used in products
Knowledge graph is used as a massive categorization function across Google’s devices and directly imbedded in the search engine.
Actively used in products
Develops connections between people, events and ideas, mainly focusing on news, people and events related to the social network.
Actively used in products
Provides a framework for other companies and/or industries to develop internal knowledge graphs.
Actively used by clients
Currently developing a knowledge graph that functions to provide connections between users and products provided on the website.
Early Stage of Development
Most people conducting SEO will tend to focus on the Google Knowledge Graph as it’s the most frequently used and relevant knowledge graph for SEO. As Google, being the most popular search engine and the driver behind a lot of search engine innovation, it’s important to focus on developing entities and embedding them into the knowledge graph. Microsoft’s knowledge graph is still something to pay close attention to, as while not as many people use Bing, plenty of people do use Microsoft’s services, including LinkedIn. So while Google may be the primary focus of SEO and entity development, it’s important not to forget about Microsoft. Thankfully, they both use schema markup, so developing entries for both of them shouldn’t be too difficult.
Other knowledge graphs may be useful in SEO in certain circumstances. For example, Facebook’s knowledge graph might be useful for branding, local businesses, and people hosting events for embedding in their social network. IBM’s knowledge graph might be useful in working within the internal knowledge graphs of other companies but may still hold value for SEO. The same goes for eBay’s knowledge graph, though it is more uncertain as their knowledge graph is still in the early stages of implementation and development. There are also many more knowledge graphs not listed above that are used by many publishers and developers across many different platforms.
The History of Knowledge Graphs
Believe it or not, but the history of knowledge graphs and their use predates both search engines and the internet as a whole. Many of you may remember the graphs used in Geometry, Algebra and Calculus classes in high school or college. Knowledge graphs function in a similar manner, only instead of lines and shapes being used to connect points on a graph, entities are connected to other entities through lines of structured data and schema markup.
In 1735, famous mathematician Leonhard Euler was presented with a problem in the city of Königsberg, Prussia in what is now Kaliningrad in modern day Russia. There were 7 bridges in the city that connect through a central island and run across the Pregel River, and the challenge was whether or not it was possible to form a straight path where every bridge is crossed only once. Rather than making every possible walk throughout the city to figure this out, he chose to create the first chart and plot out the city and the end points of every bridge. While his ultimate conclusion was that this was not possible, he ended up inventing graph theory in the process.
The famous Königsberg bridge problem that helped Euler develop graph theory in trying to solve it.
While Graph theory continued to develop throughout the centuries, the first major breakthrough in developing the basis of knowledge graphs came in 1966 with Joseph Weizenbaum’s development of the ELIZA computer program. The program would use a system of code known as DOCTOR to conduct machine learning in a manner that would allow the program to communicate with humans as though it were an empathetic therapist. This enabled the software to conduct a primitive version of queries and delivering results. Although Weizenbaum began to question the nature of his program and the role of artificial intelligence, ELIZA laid the important foundations of knowledge graphs to come.
Taking both graph theory and machine learning technology provided by ELIZA, the development of the enterprise graph was the next major step in the development of knowledge graphs. Enterprise graphs were developed to organize and identify all available information on a specific topic, field, person, product, etc. within an organization. Think of it as an internal knowledge graph or database utilized within a specific company, organization or industry. It’s not known when exactly the first enterprise graph was developed, though the development of knowledge graphs by Google and Facebook in organizing their content and entities. While it took a while before knowledge graphs could properly get off the ground, they’re certainly starting to shine today.
The Development of Knowledge Graphs
The first knowledge graph was launched by Google on May 12th, 2012 as a means of enhancing the value of knowledge provided by the search engine. By using structured data through schema markup, a user could provide information in HTML code that could then be picked up and used in knowledge cards and the newly developing featured snippets. What this meant is that websites could gain traction by providing answers to queries directly on the SERP.
Other search engines and companies began to also develop knowledge graphs. Some, like Microsoft, developed them for a similar purpose to Google; while others, like Facebook, have been developing them for different reasons, namely people and events as opposed to general knowledge about the world. When it comes to SEO, schema markup has expanded to be compatible with Yahoo and Microsoft Bing in addition to Google, making it easy to provide markup for the top search engines.
Today, knowledge graphs are being utilized in many companies and provide a knowledge network for a variety of different functions. As knowledge graph technology continues to develop and evolve, it faces many new challenges. Issues like changing knowledge, potential consequences of machine learning, managing identities, as well as concerns regarding security and privacy are all ongoing issues facing many knowledge graph developers. These issues will continue to be a challenge for some time to come and perhaps more so in the future.