Program Classification Using Gated Graph Attention Neural Network for Online Programming Service
The online programing services, such as Github,TopCoder, and EduCoder, have promoted a lot of social interactions among the service users. However, the existing social interactions is rather limited and inefficient due to the rapid increasing of source-code repositories, which is difficult to explore manually. The emergence of source-code mining provides a promising way to analyze those source codes, so that those source codes can be relatively easy to understand and share among those service users. Among all the source-code mining attempts,program classification lays a foundation for various tasks related to source-code understanding, because it is impossible for a machine to understand a computer program if it cannot classify the program correctly. Although numerous machine learning models, such as the Natural Language Processing (NLP) based models and the Abstract Syntax Tree (AST) based models, have been proposed to classify computer programs based on their corresponding source codes, the existing works cannot fully characterize the source codes from the perspective of both the syntax and semantic information. To address this problem, we proposed a Graph Neural Network (GNN) based model, which integrates data flow and function call information to the AST,and applies an improved GNN model to the integrated graph, so as to achieve the state-of-art program classification accuracy. The experiment results have shown that the proposed work can classify programs with accuracy over 97%.
Code (0)
등록된 구현이 없습니다.
Tasks
General ClassificationGraph AttentionGraph Neural NetworkMethods 이 논문이 사용한 방법론
Similar Papers 제목 키워드 기반
GaAN: Gated Attention Networks for Learning on Large and Spatiotemporal Graphs
We propose a new network architecture, Gated Attention Networks (GaAN), for learning on graphs. Unlike the traditional multi-head attention mechanism, which equally consumes all attention heads, GaAN uses a convolutional…
General ClassificationNode ClassificationQuerying in the Age of Graph Databases and Knowledge Graphs
Graphs have become the best way we know of representing knowledge. The computing community has investigated and developed the support for managing graphs by means of digital technology. Graph databases and knowledge grap…
Knowledge GraphsManagementAttentional Heterogeneous Graph Neural Network: Application to Program Reidentification
Program or process is an integral part of almost every IT/OT system. Can we trust the identity/ID (e.g., executable name) of the program? To avoid detection, malware may disguise itself using the ID of a legitimate progr…
Graph ClassificationGraph EmbeddingGraph Neural NetworkIntrusion Detection+1Auditory Attention Decoding from EEG using Convolutional Recurrent Neural Network
The auditory attention decoding (AAD) approach was proposed to determine the identity of the attended talker in a multi-talker scenario by analyzing electroencephalography (EEG) data. Although the linear model-based meth…
ClassificationEEGElectroencephalogram (EEG)General Classification+1Learning to Solve an Order Fulfillment Problem in Milliseconds with Edge-Feature-Embedded Graph Attention
The order fulfillment problem is one of the fundamental combinatorial optimization problems in supply chain management and it is required to be solved in real-time for modern online retailing. Such a problem is computa…
Combinatorial OptimizationGraph AttentionManagement