Papers › Convolutional Neural Networks over Tree Structures for Programming Language Processing

Convolutional Neural Networks over Tree Structures for Programming Language Processing

18 Sep 2014arXiv:1409.5718archive 2025-07-28

Lili Mou, Ge Li, Lu Zhang, Tao Wang, Zhi Jin

Programming language processing (similar to natural language processing) is a hot research topic in the field of software engineering; it has also aroused growing interest in the artificial intelligence community. However, different from a natural language sentence, a program contains rich, explicit, and complicated structural information. Hence, traditional NLP models may be inappropriate for programs. In this paper, we propose a novel tree-based convolutional neural network (TBCNN) for programming language processing, in which a convolution kernel is designed over programs' abstract syntax trees to capture structural information. TBCNN is a generic architecture for programming language processing; our experiments show its effectiveness in two different program analysis tasks: classifying programs according to functionality, and detecting code snippets of certain patterns. TBCNN outperforms baseline methods, including several neural models for NLP.

PaperPDFCode

In Syntology Open this paper in Syntology's Atlas, the map of the papers in Syntology's graph and their citations.

Code

RyanMarcus/TreeConvolution mentioned on GitHubpytorch report
bdqnghi/bi-tbcnn mentioned on GitHubtf report
bdqnghi/tbcnn-tensorflow mentioned on GitHubtf report
bdqnghi/tbcnn.tensorflow mentioned on GitHubtf report
crestonbunch/tbcnn mentioned on GitHubtf report
handdl/btcnn mentioned on GitHubpytorch report
jacobwwh/tbcnn-dgl mentioned on GitHubpytorch report
rabbitjy/fuzztuning mentioned on GitHubpytorch report
spcl/ncc mentioned on GitHubtf report

Repository list and official/mentioned flags are the archive's, frozen 2025-07-28. Reachability, where shown, is from one Syntology probe window (2026-09-16 to 2026-09-18); repositories not probed show nothing. GitHub stars are not tracked.

Code Syntology ran Syntology

Not run by Syntology. Nothing on this page verifies that the listed code works.

Tasks

Sentence

Results from the paper archive 2025-07-28

No leaderboard rows for this paper in the archive.

Methods

Convolution

Report a problem or propose a change · a person checks every report against the paper or source before anything changes; decisions are listed on /corrections