Graph Neural Network (GNN) is emerging as a new field of AI. GNN is a neural network technology that can be usefully applied when data is expressed in a graph, a structure connected by a number of nodes and edges, and although it still needs to be improved in terms of technology maturity, it is highly evaluated in terms of its potential.
The typical existing means of representing and storing data is a relational DB (RDB) such as Oracle, but there are many situations where the efficiency is very poor with RDB. For example, a large number of related tables and schemas need to be designed to express the friendship of social media, content preferences for each user, and hobbies. Even in this case, a complicated process is required to analyze the linkage with friends of friends. GraphDB such as Neo4j saves data in graph form with nodes, edges, and properties to solve this problem and makes it easy to query. GNN can be viewed as a set of AI technologies targeting data represented by this structure.
Here are links to articles listing some of the applications of GNN:
The article above gives examples of the following five areas:
- Recommender Systems
- Recommendation system using the relationship between users and items, preferences for each user, and relationships between items
- Combinatorial Optimization
- Comprehensive optimization of multiple interrelated elements
- Computer Vision
- Modeling of semantic scene connection relationships expressed in scene graph
- Analyze new phenomena from the relationship between basic units such as molecules and cells
- Drug Discovery
- Predict the structure of a new drug or analyze its efficacy from the constituents and their association
As another example, consider a way of expressing human knowledge itself. Human knowledge is not simply expressed as an array of facts, but is made up of an organic connection between numerous facts and a set of characteristics of that connection. Therefore, it is common to express it in a form commonly referred to as a knowledge graph. Current deep learning-based chatbots can also perform Q&A on open-domain, but they are trained with large-scale enumerated data or retrieval rather than knowledge graph-based. The limitations of this method are obvious. If they do not appear directly in the learning data, or if they need to be inferred by association, it is difficult to respond appropriately. In order to implement a more advanced interactive AI, an inference process based on the data in which the relationship is expressed must be implemented, and I think that GNN can be considered as one of those directions.