Knowledge Graph – The Emerging AI Paradigm
When searching for a person or place in Google, have you noticed that along with the web links, Google gives additional information in a box on the right-hand side of the result page? (Figure 1) Google brings this very precise additional information about your search because of a new AI technique called ‘Knowledge Graph’.
Figure 1: The output of Google search result
The term ‘Knowledge Graph’, introduced by Google as a knowledge base to enhance its search engine results, has been adopted by many tech giants like Amazon, Apple and eBay. Furthermore, Gartner Inc, a global research and advisory firm, also recognized knowledge graphs as an emerging technology in its 2018 Emerging Technologies Hype Cycle. Even after this wide fame or adoption, there is no clear consensus on the definition of ‘Knowledge Graph’.
In laymen terms we can compare the knowledge graph to a map of tourist-attractions in a city (Figure 2). That is, if a person is interested in visiting a city, he should automatically be given the information about the attractions he could visit and how these are connected on a road. Clearly the traveler would want to know the eateries (regular or fine-dining), malls (to purchase souvenirs or general merchandise), and others like transport hubs. These associated but essential information should ideally be presented to him without much effort on search and this is achieved by knowledge graphs.
Figure 2: A snapshot of tourist attraction map
Formally put, “a knowledge graph acquires and integrates information into an ontology and applies a reasoner to derive new knowledge” [Ehrlinger, SEMANTICS 2016] where ‘ontology’ is defined as “formal, explicit specification of a shared conceptualization” [Studer, Data and knowledge engineering, 1998]. Sounds dense, does it not?
A conceptualization is defined as an abstract, simplified view of the world that we wish to represent for some purpose. For example, consider human resource management in a company where employees are identified by an employee code. Figure 3 shows employees and relations available in an organization.
Figure 3: A conceptualized partial view of our domain
In human communication, we need to use a language to refer to the elements of conceptualization e.g., in Figure 3, if we have to say that 104673 cooperates with 104675, we introduce the symbol ‘cooperates with’ which represents our intention i.e., a conceptual relation. Furthermore, the symbol (here, a directed arrow) selected should be machine-interpretable and robust enough to clearly define the domain-concepts, relations and constraints. Shared conceptualization is a consensus on the domain interpretation and not just an individual’s interpretation (which could vary from one individual to the other). For example, the concept of a cat produces different interpretations for different people (Figure 4).
Figure 4: Multiple interpretations of the same concept
Thus a knowledge graph is composed of a set of assertions (edges labeled with relations) that are expressed between entities (vertices). The meaning of the graph is encoded in its structure, where the relations and entities are unambiguously identified, and a limited set of relations are used to label the edges. The knowledge graph for a domain is built on specific vocabulary with the shared conceptualization (of different concepts) rigorously defined along with their relations. These graphs are extensively utilized in cutting-edge technologies like Amazon Alexa, Apple Siri and eBay Search.
SAAL specializes in using graphs for Natural Language Processing, Data Management and Learning Management Systems.