Reviewerly/exHarmony huggingface dataset:
Namesake: A Checker of Lexical Similarity in Identifier Names

Identifier naming is one of the main sources of information in program comprehension, where a significant portion of software development time is spent. Previous research shows that similarity in identifier names could potentially hinder code comprehension, and subsequently code maintenance and evolution. In this paper, we present an open-source tool for assessing confusing naming combinations in Python programs. The tool which we call Namesake, flags confusing identifier naming combinations that are similar in orthography (word form), phonology (pronunciation), or semantics (meaning). Our tool extracts identifier names from the abstract syntax tree of a program, splits compound names, and evaluates the similarity of each pair in orthography, phonology, and semantics. Problematic identifier combinations are flagged to programmers along with their line numbers. In combination with existing coding style checkers, Namesake can provide programmers with an additional resource to enhance identifier naming quality. The tool can be integrated easily in DevOps pipelines for automated checking and identifier naming appraisal.
A Drift Handling Approach for Self-Adaptive ML Software in Scalable Industrial Processes

Most industrial processes in real-world manufacturing applications are characterized by the scalability property, which requires an automated strategy to self-adapt machine learning (ML) software systems to the new conditions. In this paper, we investigate an Electroslag Remelting (ESR) use case process from the Uddeholms AB steel company. The use case involves predicting the minimum pressure value for a vacuum pumping event. Taking into account the long time required to collect new records and efficiently integrate the new machines with the built ML software system. Additionally, to accommodate the changes and satisfy the non-functional requirement of the software system, namely adaptability, we propose an automated and adaptive approach based on a drift handling technique called importance weighting. The aim is to address the problem of adding a new furnace to production and enable the adaptability attribute of the ML software. The overall results demonstrate the improvements in ML software performance achieved by implementing the proposed approach over the classical non-adaptive approach.
A real-world case study for automated ticket team assignment using natural language processing and explainable models

In the context of software development, managing and organizing agile boards of multi-disciplinary teams distributed around the world is a great challenge, especially regarding the process of assigning tickets to the correct team roles. Incorrectly assigned tickets can result in significant resource waste in any project and directly influence delivery outcomes and project costs. This work proposes a method for ticket analysis and automatic team assignment using Natural Language Processing and explainable Machine Learning models. Results show that the models perform well on a real-world team assignment task and provide insights into their decision.
Towards Robust Models of Code via Energy-Based Learning on Auxiliary Datasets

Existing approaches to improving the robustness of source code models concentrate on recognizing adversarial samples rather than valid samples that fall outside of a given distribution, which we refer to as out-of-distribution (OOD) samples. To this end, we propose to use an auxiliary dataset (out-of-distribution) such that, when trained together with the main dataset, they will enhance the model’s robustness. We adapt energy-bounded learning objective function to assign a higher score to in-distribution samples and a lower score to out-of-distribution samples in order to incorporate such out-of-distribution samples into the training process of source code models. In terms of OOD detection and adversarial samples detection, our evaluation results demonstrate a greater robustness for existing source code models to become more accurate at recognizing OOD data while being more resistant to adversarial attacks at the same time.
Generalizability of Code Clone Detection on CodeBERT

Transformer networks such as CodeBERT already achieve outstanding results for code clone detection in benchmark datasets, so one could assume that this task has already been solved. However, code clone detection is not a trivial task. Semantic code clones, in particular, are challenging to detect.
Simulating cyber security management: A gamified approach to executive decision making

Executive managers are not all equipped with the cyber security expertise necessary to enable them to make business decisions that accurately represent the status and needs of the cyber security side of the business. Unfortunately, the lack of understanding between the business and cyber security domains contribute to structurally endorsed vulnerabilities within a business context, where either the business needs were considered without understanding the impact on cyber security, or alternatively, the cyber security needs were considered without fully understanding the impact this would have on the business strategy and financial stability. To combat this dilemma, a gamified approach to cyber security training for executives is proposed as a solution to not only minimise the realisation of cyber vulnerabilities within a business context, but also to improve business outcomes that are supported by cyber security measures. We developed a serious game software platform, Aurelius, to simulate an executive decision maker’s role in managing the everyday cyber security investment decisions, and linking that to business metrics to incorporate the business and cyber security understanding. Our game includes simulated cyber security attacks that would require the executive decision maker (the player) to respond appropriately. The algorithms underpinning our simulated cyber security game are a product of a complex systems approach, as this most accurately models an executive’s experience. In our design, we set up Aurelius to fulfil eight of the nine criteria specified for a state of the art serious game in the cyber security domain.
Do Regional Variations Affect the CAPTCHA User Experience? A Comparison of CAPTCHAs in China and the United States

Systems worldwide deploy CAPTCHAs as a security mechanism to protect from unauthorized automated access. Typically, the effectiveness of CAPTCHAs is evaluated based on their resilience against bots. User perceptions of the interactive experience and effectiveness of CAPTCHAs have received less attention, especially for comparing the variations of CAPTCHAs presented in different regions across the world. As the first step toward filling this gap, we conducted semi-structured interviews with ten participants fluent in Chinese and English to investigate whether user perceptions are affected by variations in CAPTCHAs presented in China and the United States, respectively. We found notable differences in the perceived user experience and effectiveness across the different CAPTCHA types, but not across regional variations of the same type. Our findings point to a number of avenues for making the CAPTCHA user experience more universal and inclusive.
Detecting Build Conflicts in Software Merge for Java Programs via Static Analysis

In software merge, the edits from different branches can textually overlap (i.e., textual conflicts) or cause build and test errors (i.e., build and test conflicts), jeopardizing programmer productivity and software quality. Existing tools primarily focus on textual conflicts; few tools detect higher-order conflicts (i.e., build and test conflicts). However, existing detectors of build conflicts are limited. Due to their heavy usage of automatic build, current detectors (e.g., Crystal) only report build errors instead of identifying the root causes; developers have to manually locate conflicting edits. These detectors only help when the branches-to-merge have no textual conflict.
Identifying Sexism and Misogyny in Pull Request Comments

Being extremely dominated by men, software development organizations lack diversity. People from other groups often encounter sexist, misogynistic, and discriminatory (SMD) speech during communication. To identify SMD contents, I aim to build an automatic misogyny identification (AMI) tool for the domain of software developers. On this goal, I built a dataset of 10,138 pull request comments mined from Github based on a keyword-based selection, followed by manual validation. Using ten-fold cross-validation, I evaluated ten machine learning algorithms for automatic identification. The best performing model achieved 80% precision, 67.07% recall, 72.5% f-score, and 95.96% accuracy.
A Transferable Time Series Forecasting Service Using Deep Transformer Model for Online Systems

Many real-world online systems expect to forecast the future trend of software quality to better automate operational processes, optimize software resource cost and ensure software reliability. To achieve that, all kinds of time series metrics collected from online software systems are adopted to characterize and monitor the quality of software services. To meet relevant software engineers’ requirements, we focus on time series forecasting and aim to provide an event-driven and self-adaptive forecasting service. In this paper, we present TTSF-transformer, a transferable time series forecasting service using deep transformer model. TTSF-transformer normalizes multiple metric frequencies to ensure the model sharing across multi-source systems, employs a deep transformer model with Bayesian estimation to generate the predictive marginal distribution, and introduces transfer learning and incremental learning into the training process to ensure the performance of long-term prediction. We conduct experiments on real-world time series metrics from two different types of game business in Tencent®. The results show that TTSF-transformer significantly outperforms other state-of-the-art methods and is suitable for wide deployment in large online systems.
How students choose names: A replication study

Names of classes/methods/variables play an important role in code readability. To investigate how developers choose names, Feitelson et al. conducted an empirical survey and suggested a method to improve naming quality. We replicated their study, but limited the survey subjects to university students. Specifically, we conducted two experiments including 341 students from freshmen to seniors. The aim of the first experiment was to investigate the characteristics of the names given by students. The experimental results showed that the name length as well as the number of words contained in names increased with the grade and students have ambiguity in understanding variable names. The second experiment was to verify whether Feitelson et al.’s naming method can help improve the quality of the names given by students. The experimental results showed an improvement in naming quality for more than 67% of cases, which confirms the validity of the method for university students.
Scalable Sampling of Highly-Configurable Systems: Generating Random Instances of the Linux Kernel

Software systems are becoming increasingly configurable. A paradigmatic example is the Linux kernel, which can be adjusted for a tremendous variety of hardware devices, from mobile phones to supercomputers, thanks to the thousands of configurable features it supports. In principle, many relevant problems on configurable systems, such as completing a partial configuration to get the system instance that consumes the least energy or optimizes any other quality attribute, could be solved through exhaustive analysis of all configurations. However, configuration spaces are typically colossal and cannot be entirely computed in practice. Alternatively, configuration samples can be analyzed to approximate the answers. Generating those samples is not trivial since features usually have inter-dependencies that constrain the configuration space. Therefore, getting a single valid configuration by chance is extremely unlikely. As a result, advanced samplers are being proposed to generate random samples at a reasonable computational cost. However, to date, no sampler can deal with highly configurable complex systems, such as the Linux kernel. This paper proposes a new sampler that does scale for those systems, based on an original theoretical approach called extensible logic groups. The sampler is compared against five other approaches. Results show our tool to be the fastest and most scalable one.
B-AIS: An Automated Process for Black-box Evaluation of Visual Perception in AI-enabled Software against Domain Semantics

AI-enabled software systems (AIS) are prevalent in a wide range of applications, such as visual tasks of autonomous systems, extensively deployed in automotive, aerial, and naval domains. Hence, it is crucial for humans to evaluate the model’s intelligence before AIS is deployed to safety-critical environments, such as public roads.
A novel feature enhancement module for small object detection

Generic object detection has made great progress in recent years, yet small object detection is still facing a serious problem of missed detection. The problem is caused by two reasons: low resolution in small targets and feature loss during deep convolution downsampling. Some previous studies used feature pyramid structures and multi-scale training predictions to alleviate this problem, but still cannot efficiently utilise the feature information of small targets. In this paper, firstly we propose a novel and effective feature enhancement module to extract more features; secondly, a filter size design method is presented to extract features of matching objects and incorporate context information; finally, an adaptive fusion method is used to process outputs of our module and improve model robustness. We select YOLOv3 as base model and carry out several experiments on a special Small Object Dataset and the results show that our work can achieve an increase of about seven percentage points (35.73%) compared to 28.78% on baseline.
Multivariate Beta Dirichlet Process-based Hidden Markov Models Applied to Medical Applications

Hidden Markov Models (HMMs) are known as one of the most capable statistical tools applied to various applications. Determining the number of hidden states has been an attractive topic in research. In this work, we assume a state space with a nonparametric structure. Moreover, we suppose emission probabilities follow multivariate Beta distribution (MB) which is a flexible and powerful distribution. We present multivariate Beta Dirichlet process mixture as a nonparametric extension of finite mixture model. This elegant structure provides more capability to model in fitting data. Such modifications will empower the classical framework of HMMs. We name our novel clustering method multivariate Beta Dirichlet process-based HMM. To learn our proposed model, we apply variational inference as a compelling approach. We evaluate our model performance by testing it on two medical applications including dementia detection and analyzing colonoscopy images. The results indicate that our proposed model has good potential and could be applied as a promising technique.
Context-aware multi-feature fusion for open-domain dialogue generation

With the rapid development of deep learning, open-domain dialogue models are able to generate relatively fluent conversations. However, current generative models present incomplete representations of dialogue features, which make it prone to generate low-quality or irrelevant-semantic responses. To address this problem, this paper presents a novel context-aware multi-feature fusion model, integrating keywords and category-semantic information into the dialogue generation. Specifically, distinct keywords share various significance in a sentence, incorporating this significance into the conversation text can improve the generative ability of the generative model. Our method enhances the feature representation of the text and thus generates high-quality conversation. Finally, we conducted comprehensive experiments on the DailyDialog dataset and EmpatheticDialogues dataset, analyzing the experimental results and verifying the feasibility of our approach.
A Learning Approach to Multi-robot Task Allocation with Priority Constraints and Uncertainty

Multi-robot task allocation has an important impact on the efficiency of multi-robot collaboration. For single-shot allocation without complicated constraints, some exact algorithms and heuristic algorithms can find the optimal solution efficiently. However, considering the priority constraints and uncertain execution time of robots for multiple times of allocation in an approximate dynamic programming environment, traditional methods such as heuristic algorithms have limited performance. To obtain better performance, we propose a method based on deep reinforcement learning. Specifically, we first use the directed acyclic graph to describe the priority relationship between tasks. Then we propose a graph neural network with a hierarchical attention mechanism to extract the characteristics of the task groups. Finally, we design the policy network to solve the approximate dynamic programming problem of multi-robot task allocation. Through training on the dataset of a given environment, the policy network can gradually refine the decision-making process by reinforcement learning. Experiment results show that the proposed modeling and solving method can find better solutions than existing heuristic algorithms. Furthermore, the learned strategy can be directly applied in other untrained environments with superior performance.
A Robust Blind Deblurring Method for Natural Blurry Images

Image deblurring refers to the deconvolution of blurry images and blur kernels to get sharp images.The process of deblurring when the blur kernel is unknown is called blind deblurring. In general, blind image deblurring includes two steps. One is the estimation of blur kernel, which is actually estimating how images become blurry. The other is to use the blur kernel for image deconvolution. In this paper, a blind deblurring method for natural images is proposed. Firstly, we take a preprocession and denoise the image to eliminate the influence of noise on kernel estimation and avoid the noise being amplified in the final image reconstruction stage. Secondly, we extract the main structure of the image by a relative total variation method, next enhance the structure image by the shock filter, and then extract its high frequency layer. This method can provide effective and significant edges for kernel estimation. In the kernel estimation stage, we use both the image intensity and gradient value as regularization terms to ensure the sparsity and continuity of the blur kernel. Finally, in image reconstruction stage, we use a simple hyper-Laplacian prior, which is fast and robust for small kernel errors. Extensive experiments showed that our method has the highest quality score quantitatively and the best visual effect qualitatively.
Unsupervised Person Re-identification via Mining Label Homogeneity

This paper studies the fully unsupervised person reidentification (Re-ID) problem which does not need any labeled data to train the re-ID network. To make fully unsupervised training possible, the model needs to generate pseudo labels. Unlike human-labeled annotation, the generated pseudo labels contain noisy labels. One of the best fully unsupervised methods till now formulated person Re-ID as a multi-label classification task. This approach only considered similarities between images and ignore relations among the generated labels. In this paper, we follow the multi-label classification training strategy but utilize the generated labels as auxiliary labels to further refine the noisy labels. The proposed approach seeks auxiliary labels by investigating two underlying homogeneity in generated labels, i.e. Symmetric Homogeneity (S) and Neighbor Homogeneity (N). The network is optimized under the joint supervision of the main pseudo label and two auxiliary labels in our proposed mutual label learning training strategy. The experimental results confirm the effectiveness of our discovered label homogeneities and the proposed mutual label learning on two mainstream datasets, Market-1501 and DukeMTMC-reID.
A CPU-based Pedestrian Detector using Deep Learning for Intelligent Surveillance Systems

This paper presents real-time pedestrian detection based on a deep learning approach for localizing human areas. It introduces lightweight architecture using a convolutional neural network that can smoothly work on a CPU device. Specifically, the framework contains three main modules. Firstly, light extractor features utilize an Efficient Bottleneck Partitioning (EBP) block to distinguish person features and background features rapidly. Secondly, the Path Aggregation Network (PANet) helps the network’s ability to obtain fused information from different feature frequencies. Lastly, Triple prediction anchor-based layers to predict various human sizes. An end-to-end network is comprehensively trained on the MS COCO 2017 dataset to gain knowledge of discrimination for multiple challenges. The pedestrian detection network (PdNet) produces lower trainable parameters than other detectors. As a result, it achieves competitive performance evaluated on the MS COCO 2017, PASCAL VOC 2007, and 2012 datasets. Moreover, the main advantage of this detector is that it can run 14 frames per second when working in real-time on CPU devices.
A microservice based generic consensus engine for BaaS

Blockchain-as-a-Service (BaaS) has gradually serve as an infrastructure, providing underlying blockchain services for the rapid deployment and transaction on-chain of large-scale enterprise application scenarios. By hosting different blockchains in its underlying structure layers, BaaS platform satisfies the requirements of consensus algorithms in different scenarios, and still uses its own consensus algorithms in different blockchains, which has limited scalability and is difficult to satisfy the requirements of future applications. To deal with such problems, MGCE, a microservice based generic consensus engine for BaaS is proposed in this paper. It is a functional framework based on microservices architecture which can load the appropriate consensus algorithm and perform the consensus process of transactions for blockchain nodes according the different scenarios. The engine is composed of Consensus Node Group, Consensus Management and four functional modules, namely Consensus Network, Transactions Pool, Consensus Protocol and Consensus Outcome. For microservice purpose, each functional module is deployed into a independently project, running in its own process, which is easy to modify and test, and interacts with other modules through the http APIs to complete the consensus process together. To test the function and performance of this engine, three common consensus algorithms have been implemented including Raft, BFT-SMART and PoW. Through experiments, it is proved that this engine could realize the loading and use of different consensus algorithms. Through the performance comparison between using the engine and with the direct use of each consensus algorithm, the results show that the overhead introducing the engine is acceptable. Through the operation result of three algorithms in different projects, the design of engine architecture could satisfy the microservice objective.