237 citations · 2.5k across the 105 of their papers we have counts for
110 papers
Less, but Stronger: On the Value of Strong Heuristics in Semi-supervised Learning for Software Analytics
Huy Tu, Tim Menzies
In many domains, there are many examples and far fewer labels for those examples; e.g. we may have access to millions of lines of source code, but access to only a handful of warni…
Learning from Very Little Data: On the Value of Landscape Analysis for Predicting Software Project Health
Andre Lustosa, Tim Menzies
When data is scarce, software analytics can make many mistakes. For example, consider learning predictors for open source project health (e.g. the number of closed pull requests in…
When Less is More: On the Value of "Co-training" for Semi-Supervised Software Defect Predictors
Suvodeep Majumder, Joymallya Chakraborty, Tim Menzies
Labeling a module defective or non-defective is an expensive task. Hence, there are often limits on how much-labeled data is available for training. Semi-supervised classifiers use…
Do I really need all this work to find vulnerabilities? An empirical case study comparing vulnerability detection techniques on a Java application
Sarah Elder, Nusrat Zahan, Rui Shu +4
CONTEXT: Applying vulnerability detection techniques is one of many tasks using the limited resources of a software project. OBJECTIVE: The goal of this research is to assist manag…
Reducing the Cost of Training Security Classifier (via Optimized Semi-Supervised Learning)
Rui Shu, Tianpei Xia, Huy Tu +2
Background: Most of the existing machine learning models for security tasks, such as spam detection, malware detection, or network intrusion detection, are built on supervised mach…
Dazzle: Using Optimized Generative Adversarial Networks to Address Security Data Class Imbalance Issue
Rui Shu, Tianpei Xia, Laurie Williams +1
Background: Machine learning techniques have been widely used and demonstrate promising performance in many software security tasks such as software vulnerability prediction. Howev…
How to Find Actionable Static Analysis Warnings: A Case Study with FindBugs
Rahul Yedida, Hong Jin Kang, Huy Tu +3
Automatically generated static code warnings suffer from a large number of false alarms. Hence, developers only take action on a small percent of those warnings. To better predict…
AI-driven Development Is Here: Should You Worry?
Neil Ernst, Gabriele Bavota
AI-Driven Development Environments (AIDEs) Integrate the power of modern AI into IDEs like Visual Studio Code and JetBrains IntelliJ. By leveraging massive language models and the…
How to Improve Deep Learning for Software Analytics (a case study with code smell detection)
Rahul Yedida, Tim Menzies
To reduce technical debt and make code more maintainable, it is important to be able to warn programmers about code smells. State-of-the-art code small detectors use deep learners,…
DebtFree: Minimizing Labeling Cost in Self-Admitted Technical Debt Identification using Semi-Supervised Learning
Huy Tu, Tim Menzies
Keeping track of and managing Self-Admitted Technical Debts (SATDs) is important for maintaining a healthy software project. Current active-learning SATD recognition tool involves…
What Not to Test (for Cyber-Physical Systems)
Xiao Ling, Tim Menzies
For simulation-based systems, finding a set of test cases with the least cost by exploring multiple goals is a complex task. Domain-specific optimization goals (e.g. maximize outpu…
PyTorrent: A Python Library Corpus for Large-scale Language Models
Mehdi Bahrami, N. C. Shrikanth, Shade Ruangwan +6
A large scale collection of both semantic and natural language resources is essential to leverage active Software Engineering research areas such as code reuse and code comprehensi…
Fair Enough: Searching for Sufficient Measures of Fairness
Suvodeep Majumder, Joymallya Chakraborty, Gina R. Bai +2
Testing machine learning software for ethical bias has become a pressing current concern. In response, recent research has proposed a plethora of new fairness metrics, for example,…
SNEAK: Faster Interactive Search-based SE
Andre Lustosa, Jaydeep Patel, Venkata Sai Teja Malapati +1
When AI tools can generate many solutions, some human preference must be applied to determine which solution is relevant to the current project. One way to find those preferences i…
FairMask: Better Fairness via Model-based Rebalancing of Protected Attributes
Kewen Peng, Joymallya Chakraborty, Tim Menzies
Context: Machine learning software can generate models that inappropriately discriminate against specific protected social groups (e.g., groups based on gender, ethnicity, etc). Mo…
An Expert System for Redesigning Software for Cloud Applications
Rahul Yedida, Rahul Krishna, Anup Kalia +3
Cloud-based software has many advantages. When services are divided into many independent components, they are easier to update. Also, during peak demand, it is easier to scale clo…
FRUGAL: Unlocking SSL for Software Analytics
Huy Tu, Tim Menzies
Standard software analytics often involves having a large amount of data with labels in order to commission models with acceptable performance. However, prior work has shown that s…
Crowdsourcing the State of the Art(ifacts)
Maria Teresa Baldassarre, Neil Ernst, Ben Hermann +2
In any field, finding the "leading edge" of research is an on-going challenge. Researchers cannot appease reviewers and educators cannot teach to the leading edge of their field if…
Fairer Software Made Easier (using "Keys")
Tim Menzies, Kewen Peng, Andre Lustosa
Can we simplify explanations for software analytics? Maybe. Recent results show that systems often exhibit a "keys effect"; i.e. a few key features control the rest. Just to say th…
FairBalance: How to Achieve Equalized Odds With Data Pre-processing
Zhe Yu, Joymallya Chakraborty, Tim Menzies
This research seeks to benefit the software engineering society by providing a simple yet effective pre-processing approach to achieve equalized odds fairness in machine learning s…
Lessons learned from hyper-parameter tuning for microservice candidate identification
Rahul Yedida, Rahul Krishna, Anup Kalia +3
When optimizing software for the cloud, monolithic applications need to be partitioned into many smaller *microservices*. While many tools have been proposed for this task, we warn…
Preference Discovery in Large Product Lines
Andre Lustosa, Tim Menzies
When AI tools can generate many solutions, some human preference must be applied to determine which solution is relevant to the current project. One way to find those preferences i…
VEER: Enhancing the Interpretability of Model-based Optimizations
Kewen Peng, Christian Kaltenecker, Norbert Siegmund +2
Many software systems can be tuned for multiple objectives (e.g., faster runtime, less required memory, less network traffic or energy consumption, etc.). Optimizers built for diff…
Bias in Machine Learning Software: Why? How? What to do?
Joymallya Chakraborty, Suvodeep Majumder, Tim Menzies
Increasingly, software is making autonomous decisions in case of criminal sentencing, approving credit cards, hiring employees, and so on. Some of these decisions show bias and adv…