Skip to content
Free planNo credit card requiredStart writing

Search 250 million research papers

Read the abstract, see who wrote it and who cites it, and get the citation in APA, MLA, Chicago or Harvard.

About 10,000 papers for “Machine code”

Plagiarism Detection in Source Code using Machine Learning

Surendran, Sumisha · Scholarship at UWindsor (University of Windsor) · 2024

This thesis presents the development and evaluation of an advanced plagiarism detection system designed to analyze source code. The system leverages a combination of Convolutional Neural Networks (CNN), Long Short-Term Memory networks (LSTM), and a Code Pre-trained Model (CodePTM) to detect various levels of plagiarism within C programming submissions. The goal was to improve the detection accuracy across different types of plagiarism, from simple copy-paste to more sophisticated structural and semantic plagiarism that is difficult to detect with traditional methods. The methodology encompasses a comprehensive preprocessing stage that involves tokenization, generation of Abstract Syntax Trees (AST), and transformation into vectors that encapsulate lexical, structural, and semantic features of the code. These features are then analyzed through a multistage feature extraction process, utilizing the strengths of CNNs to discern structural patterns, LSTMs to capture contextual dependencies, and CodePTMs to understand deep semantic relationships. Our results demonstrate that the integrated approach significantly enhances the capability to detect a wide range of plagiarism activities, achieving high precision and recall rates across six defined levels of plagiarism. Specifically, the system excels in identifying complex plagiarism cases that involve significant modifications to the code's structure or semantics, which are traditionally the most challenging to detect. The implications of this research are profound, offering not only a more effective tool for academic settings to uphold integrity and originality in programming assignments but also potential applications in legal and professional domains where code originality is critical. Future work can extend this model to other programming languages and explore the integration of real-time detection capabilities, further broadening the impact and applicability of this research.

Cited by 0Open access

Machine Learning Approaches for Predicting Code Refactoring Opportunities

Lídices Reyes-Hung, Ismael Soto · 2025

Early detection of code areas that require refactoring is key to maintaining quality and reducing technical debt. This work presents a scalable and efficient pipeline for predicting refactoring needs using static metrics, validated on over 740,000 Java classes. The approach combines advanced gradient boosting techniques such as LightGBM, XGBoost, and CatBoost; Bayesian optimization using Optuna; and ensemble methods like stacking and blending. The results indicate that LightGBM provides the best balance between performance and efficiency in CI/CD environments. It achieves an F1-score of 0.6399 and a recall of 0.7117, which are essential for detecting important components and reducing technical debt. Base models are faster and lighter, such as CatBoost, which has a throughput of 736,240 instances per second. On the other hand, blending achieves the best class discrimination, with an ROC-AUC of 0.6754. This work lays the groundwork for integrating code quality predictions into industrial operational workflows and continuous integration processes.

Cited by 0

Language identification of code-mixed using machine learning

Sumit Sanjay Date, Rakesh Sarma, Manash Jyoti Talukdar et al. · Computational Methods in Science and Technology · 2024

A major problem for language identification systems is code-mixing, the phenomenon where different languages are blended inside a single utterance. Using four different approaches—dictionary-based, lexicon-based, character n-gram, and Viterbi algorithm—this study investigates the identification of code-mixed sentences combining English, Hindi, Assamese, Telugu, and Marathi languages. The degree to which the linguistic components in the code-mixed phrases can be reliably identified using each approach is assessed. Language identification using the dictionary-based approach depends on matching terms with dictionaries tailored to a given language. A linguistic analysis of the code-mixed sentences’ word structures and patterns is required for lexicon-based identification. To identify patterns unique to a language, the character n-grams approach extracts character sequences of different lengths. The Viterbi algorithm shows the best accuracy, followed by the lexicon-based approach, character n-grams, and dictionary-based method.

Cited by 0

Blueprint code of an example trial state machine.

Katharine A. Shapcott (20570616), Marvin Weigand (20570619), Mina Glukhova (20570622) et al. · Figshare · 2025

The grey entry box shows where the state machine begins and arrows connecting boxes show possible transitions between states. (TIF)

Cited by 0Open access

The semantics of x86-CC multiprocessor machine code

Susmit Sarkar, Peter Sewell, Francesco Zappa Nardelli et al. · Scopus · 2009

Multiprocessors are now dominant, but real multiprocessors do not provide the sequentially consistent memory that is assumed by most work on semantics and verification. Instead, they have subtle relaxed (or weak) memory models, usually described only in ambiguous prose, leading to widespread confusion.

Cited by 154Open access

Are Machine Programming Systems using Right Source-Code Measures to Select Code Repositories?

Niranjan Hasabnis · arXiv (Cornell University) · 2022

Machine programming (MP) is an emerging field at the intersection of deterministic and probabilistic computing, and it aims to assist software and hardware engineers, among other applications. Along with powerful compute resources, MP systems often rely on vast amount of open-source code to learn interesting properties about code and programming and solve problems in the areas of debugging, code recommendation, auto-completion, etc. Unfortunately, several of the existing MP systems either do not consider quality of code repositories or use atypical quality measures than those typically used in software engineering community to select them. As such, impact of quality of code repositories on the performance of these systems needs to be studied. In this preliminary paper, we evaluate impact of different quality repositories on the performance of a candidate MP system. Towards that objective, we develop a framework, named GitRank, to rank open-source repositories on quality, maintainability, and popularity by leveraging existing research on this topic. We then apply GitRank to evaluate correlation between the quality measures used by the candidate MP system and the quality measures used by our framework. Our preliminary results reveal some correlation between the quality measures used in GitRank and ControlFlag's performance, suggesting that some of the measures used in GitRank are applicable to ControlFlag. But it also raises questions around right quality measures for code repositories used in MP systems. We believe that our findings also generate interesting insights towards code quality measures that affect performance of MP systems.

Cited by 0Open access

of Object-Oriented Components to Untyped Machine Code

Marco Patrignani, Dave Clarke, Frank Piessens et al. · 2013

A fully abstract compilation scheme prevents high-level code security features from being bypassed by an attacker operating at a lower level. This paper presents a fully abstract compilation scheme from a realistic object-oriented language with dynamic memory allocation to untyped machine code. Full abstraction of the compilation scheme relies on enhancing the low-level machine model with a finegrained, program counter-based memory access control mechanism. This paper contains the outline of a formal proof of full abstraction of the compilation scheme, guaranteeing that low- and high-level attackers have the same power. Secure Compilation

Cited by 0

Automatic Code-generation from an Object-machine Description

Miller, Perry L. · DSpace@MIT (Massachusetts Institute of Technology) · 1970

This memo outlines the basic elements of a macro code-generating system, and develops an informal machine-independent model of a code generator. Then the memo discusses how an implementation of this model could be set up to generate code for a particular machine from machine-dependent information given in descriptive form.

Cited by 0Open access

ROPfuscator: machine code obfuscation through Return Oriented Programming

Ferla, Daniele · AMS Degree Thesis (University of Bologna) · 2019

La protezione del software da attacchi di reverse engineering, atti a violarne la proprietà intellettuale, `e diventata una priorità assoluta per le aziende produttrici di soluzioni informatiche: dilatare il tempo richiesto per ottenere informazioni cruciali sul funzionamento interno di un programma può giocare un ruolo determinante in termini di profitti generabili. Allo stato dell’arte, soluzioni per l’offuscamento di programmi sono presenti in letteratura e utilizzano un’ampia varietà di tecniche per raggiungere lo scopo.
\n
\nIn questo lavoro di tesi viene presentata l’implementazione di un offuscatore che impiega Return Oriented Programming (ROP) - da cui il nome -, una tecnica ampiamente utilizzata nell’ambito dell’exploit development, ma poco approfondita nel campo della software obfuscation. Vengono inoltre presentate delle innovative metodologie per aumentare l’efficacia dell’offuscamento: symbol anchoring, per referenziare ROP gadget in memoria nonostante il binario di appartenenza sia allocato in memoria in una locazione non-deterministica, e gadget generalisation, per consentire il riutilizzo di ROP gadget anche con operandi differenti.

Cited by 0

Machine Learning Based Code Generation of Security Patches

Tsang, Ewada, Huang, Cecilia · Lund University Publications Student Papers (Lund University) · 2023

In this thesis, we explore the feasibility of using a machine learning model to generate security fixes for software vulnerabilities.Patching security bugs is crucial to ensure the safety of both individuals and organizations from malicious attacks, but it is also a time-consuming task.Despite recent advances in machine learning, automatic detection and fixing of security vulnerabilities are still largely unsolved problems.There is ongoing research in this field, which suggests to the potential of using machine learning as a tool to generate security fixes.However, these studies do not address the various variables that influence model performance.Therefore, we implemented a machine learning model to study how the dataset used to train it affects performance, aiming to understand important factors for practical use.Our observations on the impact of dataset size, lines changed, splitting method, weakness categories, and repository distributions provide valuable insights for developing a more generalizable model and performing data engineering on future datasets.

Cited by 0Open access

Code Optimization using Java Profiler and Machine Learning

International Research Journal of Modernization in Engineering Technology and Science · 2026

This research paper presents an automated approach for code optimization using Java profiler data combined with machine learning techniques.The primary objective of this study is to improve the performance of Java applications by identifying execution bottlenecks and inefficient code segments.The system design involves collecting runtime metrics such as CPU usage, memory allocation, execution time, and thread activity from Java profilers.These profiling metrics are processed and analyzed using machine learning models to detect performance issues and generate optimization recommendations.The experimental analysis demonstrates that the proposed approach effectively identifies resource-intensive methods and improves application efficiency by reducing execution time and memory consumption.The integration of machine learning minimizes manual effort required for performance tuning and enhances the accuracy of bottleneck detection.The results indicate that data-driven optimization can significantly improve software performance and developer productivity.This study concludes that combining Java profiling with machine learning provides a scalable and intelligent solution for automated code optimization in modern software systems.

Cited by 0Open access

Using Machine Learning to Crack the Tax Code

Benjamin Alarie, Bettina Xue Griffin · TSpace · 2022

This article is published in Tax Notes Federal and is reproduced with the permission of Tax Analysts. The original article can be found at: https://www.taxnotes.com/featured-analysis/using-machine-learning-crack-tax-code/2022/01/28/7d3kn

Cited by 0Open access