Authorship attribution of source code by using back propagation neural network based on particle swarm optimization
Authorship attribution is to identify the most likely author of a given sample among a set of candidate known authors. It can be not only applied to discover the original author of plain text, such as novels, blogs, emails, posts etc., but also used to identify source code programmers. Authorship attribution of source code is required in diverse applications, ranging from malicious code tracking to solving authorship dispute or software plagiarism detection. This paper aims to propose a new method to identify the programmer of Java source code samples with a higher accuracy. To this end, it first introduces back propagation (BP) neural network based on particle swarm optimization (PSO) into authorship attribution of source code. It begins by computing a set of defined feature metrics, including lexical and layout metrics, structure and syntax metrics, totally 19 dimensions. Then these metrics are input to neural network for supervised learning, the weights of which are output by PSO and BP hybrid algorithm. The effectiveness of the proposed method is evaluated on a collected dataset with 3,022 Java files belong to 40 authors. Experiment results show that the proposed method achieves 91.060% accuracy. And a comparison with previous work on authorship attribution of source code for Java language illustrates that this proposed method outperforms others overall, also with an acceptable overhead.
Code (1)
Tasks
Authorship AttributionSimilar Papers 제목 키워드 기반
SHIELD: Thwarting Code Authorship Attribution
Authorship attribution has become increasingly accurate, posing a serious privacy risk for programmers who wish to remain anonymous. In this paper, we introduce SHIELD to examine the robustness of different code authorsh…
Authorship AttributionMisleading Authorship Attribution of Source Code using Adversarial Learning
In this paper, we present a novel attack against authorship attribution of source code. We exploit that recent attribution methods rest on machine learning and thus can be deceived by adversarial examples of source code.…
Authorship AttributionRoPGen: Towards Robust Code Authorship Attribution via Automatic Coding Style Transformation
Source code authorship attribution is an important problem often encountered in applications such as software forensics, bug fixing, and software quality analysis. Recent studies show that current source code authorship …
Authorship AttributionBug fixingData AugmentationDiversity+1I Can Find You in Seconds! Leveraging Large Language Models for Code Authorship Attribution
Source code authorship attribution is important in software forensics, plagiarism detection, and protecting software patch integrity. Existing techniques often rely on supervised machine learning, which struggles with ge…
Adversarial RobustnessAttributeAuthorship AttributionFew-Shot Learning+1Neural Authorship Attribution: Stylometric Analysis on Large Language Models
Large language models (LLMs) such as GPT-4, PaLM, and Llama have significantly propelled the generation of AI-crafted text. With rising concerns about their potential misuse, there is a pressing need for AI-generated-tex…
Authorship AttributionLanguage ModelingLanguage ModellingMisinformation