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
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
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
Zhao, Mengmeng · Figshare · 2025
The machine learning code used for establishing VTE risk model
Cited by 0Open access
Veldhuijzen van Zanten, G.E. · University of Twente Research Information · 1991
Cited by 0
Mohamed Amine Menacer, David Langlois, Denis Jouvet et al. · HAL (Le Centre pour la Communication Scientifique Directe) · 2019
International audience
Cited by 0Open access
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
Peter T. Breuer · 2016
Cited by 0
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
Yacine Hakimi, Riyadh Baghdadi, Yacine Challal · International Journal of Parallel Programming · 2023
Cited by 13Open access
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
Vrtanoski, Jordan · Zenodo (CERN European Organization for Nuclear Research) · 2021
A brief idea
Cited by 0Open access
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
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
Goerigk, Wolfgang, Hoffmann, Ulrich · MACAU (Kiel University) · 1998
Cited by 0
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
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
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
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
Atsushi Nakamura · Proceedings of The XXV International Symposium on Lattice Field Theory — PoS(LATTICE 2007) · 2008
Cited by 5Open access