A knowledge graph, also known as a semantic network, represents a network of real-world entities—i.e. objects, events, situations, or concepts—and illustrates the relationship between them. This information is usually stored in a graph database and visualized as a graph structure, prompting the term knowledge “graph.”
A knowledge graph is made up of three main components: nodes, edges, and labels. Any object, place, or person can be a node. An edge defines the relationship between the nodes. For example, a node could be a client, like IBM, and an agency like, Ogilvy. An edge would be categorize the relationship as a customer relationship between IBM and Ogilvy.
A represents the subject, B represents the predicate, C represents the object
It is also worth noting that the definitions of knowledge graphs vary and there is research (PDF, 183 KB) (link resides outside of ibm.com), which suggests that a knowledge graph is no different than a knowledge base or an ontology. Instead, it argues that the term was popularized by the Google’s Knowledge Graph in 2012.
Ontologies are also frequently mentioned in the context of knowledge graphs, but again, there is still debate around how they differ from knowledge graphs. Ultimately, ontologies serve to create a formal representation of the entities in the graph. They are usually based on a taxonomy, but since they can contain multiple taxonomies, it maintains its own separate definition. Since knowledge graphs and ontologies are represented in a similar manner—i.e. through nodes and edges—and are based on the Resource Description Framework (RDF) triples, they tend to resemble each other in visualizations.
An example of an ontology might be if we examine a particular venue, like Madison Square Garden. An ontology distinguishes between the events at that location using a variable such as time. A sports team, like the New York Rangers, has a series of games within a season that will be hosted in that arena. They are all hockey games, and they are all located in the same venue. However, each event is distinguished by their date and time.
The Web Ontology Language (OWL) is an example of a widely adopted ontology, that is supported by the World Wide Web Consortium (W3C), an international community that champions open standards for the longevity of the internet. Ultimately, this organization of knowledge is supported by technological infrastructure such as databases, APIs, and machine learning algorithms, which exist to help people and services to access and process information more efficiently.
Knowledge graphs are typically made up of datasets from various sources, which frequently differ in structure. Schemas, identities and context work together to provide structure to diverse data. Schemas provide the framework for the knowledge graph, identities classify the underlying nodes appropriately, and the context determines the setting in which that knowledge exists. These components help distinguish words with multiple meanings. This allows products, like Google’s search engine algorithm, to determine the difference between Apple, the brand, and apple, the fruit.
Knowledge graphs, that are fueled by machine learning, utilize natural language processing (NLP) to construct a comprehensive view of nodes, edges, and labels through a process called semantic enrichment. When data is ingested, this process allows knowledge graphs to identify individual objects and understand the relationships between different objects. This working knowledge is then compared and integrated with other datasets, which are relevant and similar in nature. Once a knowledge graph is complete, it allows question answering and search systems to retrieve and reuse comprehensive answers to given queries. While consumer facing products demonstrate its ability to save time, the same systems can also be applied in a business setting, eliminating manual data collection and integration work to support business decision-making.
The data integration efforts around knowledge graphs can also support the creation of new knowledge, establishing connections between data points that may not have been realized before.
There are a number of popular, consumer-facing knowledge graphs, which are setting user expectations for search systems across enterprises. Some of these knowledge graphs include:
However, knowledge graphs also have applications in other industries, such as:
IBM Cloud with Red Hat offers market-leading security, enterprise scalability and open innovation to unlock the full potential of cloud and AI.
Infuse AI into your applications with Watson AI to make more accurate predictions.
Build, run and manage AI models. Prepare data and build models on any cloud using open source code or visual modeling. Predict and optimize your outcomes.
An IBM Research team reaches top place at Facebook's KILT leaderboard for Knowledge Graph development — paving the way to take the technology to the real world.
IBM Research presents GraphGen4Code, a toolkit to build code knowledge graphs that can power apps, such as program search, code understanding, bug detection, and code automation.
You can use IBM Cloud, Watson services, Watson Studio and open-source technologies to support enterprise knowledge graph initiatives. Build your own knowledge graph from documents and derive insights from unstructured text content generated from various business domains.