ml4se
500 subscribers
448 photos
1 file
527 links
Machine Learning for Software Engineering
Download Telegram
BLOOM is an autoregressive Large Language Model (LLM), trained to continue text from a prompt on vast amounts of text data using industrial-scale computational resources. As such, it is able to output coherent text in 46 languages and 13 programming languages that is hardly distinguishable from text written by humans. BLOOM can also be instructed to perform text tasks it hasn't been explicitly trained for, by casting them as text generation tasks.
MLGOPerf: An ML Guided Inliner to Optimize Performance (Huawei)

MLGOPerf — the first end-to-end framework capable of optimizing performance using LLVM’s ML-Inliner.

The experimental results show MLGOPerf is able to gain up to 1.8% and 2.2% with respect to LLVM’s optimization at O3 when trained for performance on SPEC CPU2006 and Cbench benchmarks, respectively. Furthermore, the proposed approach provides up to 26% increased opportunities to autotune code regions for our benchmarks which can be translated into an additional 3.7% speedup value.
CodeT: Code Generation with Generated Tests (Microsoft)

The work explores the use of pre-trained language models to automatically generate test cases. Method is titled CodeT: Code generation with generated Tests. CodeT executes the code solutions using the generated test cases, and then chooses the best solution based on a dual execution agreement with both the generated test cases and other generated solutions.
ESEC/FSE 2023
https://conf.researchr.org/home/fse-2023
Sat 11 - Fri 17 November 2023 San Francisco, California, United States

Thu 26 Jan 2023 Research Papers Paper registration
Thu 2 Feb 2023 Research Papers Full paper submission
Thu 4 May 2023 Research Papers Initial notification
Thu 29 Jun 2023 Research Papers Revised manuscript submissions (major revisions only)
Thu 27 Jul 2023 Research Papers Final notification for major revisions
Thu 24 Aug 2023 Research Papers Camera ready
Amazon CodeWhisperer is a machine learning (ML)–powered service that helps improve developer productivity by generating code recommendations based on their comments in natural language and code in the integrated development environment (IDE).
List of code generation models
So Much in So Little: Creating Lightweight Embeddings of Python Libraries (JetBrains, Huawei)

- python library embeddings
- a prototype tool for suggesting relevant libraries to a given project
The Universal Approximation Theorem for neural networks
Hardin and Taylor proved that any function of the real numbers can be correctly predicted based solely on its past behavior at almost any point in time. However, these results do not provide a practical means of predicting the future. For example, the definition of the \mu-strategy requires the Axiom of Choice. One might wonder if a different approach could yield similar results without using the Axiom of Choice. In nontrivial cases, the answer is no.

A peculiar connection between the axiom of choice and predicting the future
Category Theory for AI

Program
Week 1: Why Category Theory?
Week 2: Essential building blocks: Categories and Functors
Week 3: Categorical Dataflow: Optics and Lenses as data structures for backpropagation
Week 4: Geometric Deep Learning & Naturality
Week 5: Monoids, Monads, Mappings, and lstMs
No More Fine-Tuning? An Experimental Evaluation of Prompt Tuning in Code Intelligence

The authors compare fine-tuning and prompt-tuning for different tasks in code understanding: defect prediction, code summarization and code translation. They come to the conclusion that prompt-tuning is more effective than fine-tuning on the code intelligence tasks, with respect to different pre-trained models and different programming languages. Besides, the advantage of prompt tuning is more obvious for smaller pre-trained models. Also prompt tuning is more effective in low-resource scenarios than fine-tuning. The fewer training instances, the larger the improvement achieved by prompt tuning. And prompt-tuning also shows superior performance on the cross-domain code intelligence task.
Stanford, CS 349M: Machine Learning for Software Engineering

In recent years, tools based on machine learning have become increasingly prevalent in the software engineering field. The ubiquity of machine learning is an important factor, but just as important is the availability of software engineering data: there are billions of lines of code available in public repositories (e.g. on GitHub), there is the change history of that code, there are discussion fora (e.g. Stack Overflow) that contain a wealth of information for developers, companies have access tontelemetry on their apps from millions of users, and so on. The scale of software engineering data has permitted machine learning and statistical approaches to imagine tools that are beyond the capabilities of traditional, semantics-based approaches. In this graduate seminar, students will learn the various ways in which code and related artifacts can be treated as data, and how various developer tools can be built by applying machine learning over this data. The course will consist of discussion of a selection of research papers, as well as a hands-on project that can be done in small groups.nnPrerequisites: Familiarity with basic machine learning, and either CS143 or CS295.
BigCode project

Large Language Models (LLMs) are fast becoming an essential tool for all fields of AI research. One striking feature of these large pre-trained models is that they can be adapted to a wide variety of language tasks, often with very little in-domain data.

BigCode is focused on developing state-of-the-art LLMs for code. Code LLMs enable the completion and synthesis of code, both from other code snippets and natural language descriptions, and work across a wide range of domains, tasks, and programming languages. These models can, for example, assist professional and citizen developers with coding new applications.

BigCode invites AI researchers to collaborate on the following topics:
* A representative evaluation suite for code LLMs, covering a diverse set of tasks and programming languages
* Responsible data governance and development for code LLMs
* Faster training and inference methods for LLMs
Hi everyone! Who knows good datasets for the clone detection problem?
Anomaly Detection in Time Series: A Comprehensive Evaluation

The authors collected and re-implemented 71 anomaly detection algorithms from different domains and evaluated them on 976 time series datasets. Paper: https://vldb.org/pvldb/vol15/p1779-wenig.pdf