- Introduction: We would like to examine how geometrical structure can be detected in networks (graphs). There are generally three classes of geometry of surfaces: positive, negative, and zero curvature (e.g. spherical, hyperbolic, and flat surfaces). One problem in network science is to determine if a given network is compatible with one of these three geometries in the sense that the network nodes could be arranged on some kind of surface such that nodes sufficiently close to each other in the surface are connected in the graph. We can train a neural network to classify the geometric structure by asking it to classify whether generated networks are consistent with positive, negative, or zero curvature surfaces. We can generate graphs/networks by randomly scattering points on a surface of a given type and connecting nodes that are within some given distance, forming a network, labeled by its geometry.
- Challenges: Our first challenge of this project is how the training data can be constructed. Because network geometry is not a well studied area, there has not been much literature and publically available data on this topic. Therefore, we decided to simulate the training data. This can be done by generating the adjacency matrices for each type of network that we are considering. The difficulty of simulating the training data is that we have to ensure the simulation is practically meaningful. To encounter this problem, we set the area of the network surface to be equal for each type of the network. In addition, there are equal number of nodes on each network, such that the difference only comes from network type, and hopefully this difference can be distinguished by the neural network classifier. Another challenge is the model architecture in this classification. We start by considering the simplest architecture first: convolutional neural network. Each adjacency matrix can be considered as an image, and thus can be fed into CNN. Additional architecture to explore can include MPNN. Finally, there are challenges in evaluating the model performances. Due to the lack of existing classification methods that can perform similar tasks, we do not have any baseline performances to compare with. Also, we are unsure whether it is actually feasible to classify the networks based on geometry, but hopefully this is a question that we will be able to answer through this project.
- Insights: At this stage, we have built the simulation mechanism for generating the training data. We are starting to build CNN for the classification, therefore, we do not have any concrete results yet. We also consider using MPNN. However, we are not sure if it will have a better performance than CNN, because even though we are classifying networks in this project, we do not have any kind of messages to pass between nodes. The classification is based on examining the adjacency matrices. Using MPNN may be unnecessary.
- Plan: Based on the performance, we will decide if we will use alternative neural network architecture. We also plan to augment the training data by using different network features. Once the model is finalized, we will find a dataset where we can obtain information about its network geometry and find some real-world interpretations.
Log in or sign up for Devpost to join the conversation.