Skip to main content

Showing 1–39 of 39 results for author: Allamanis, M

  1. arXiv:2404.14662  [pdf, other

    cs.LG cs.CL cs.PL cs.SE

    NExT: Teaching Large Language Models to Reason about Code Execution

    Authors: Ansong Ni, Miltiadis Allamanis, Arman Cohan, Yinlin Deng, Kensen Shi, Charles Sutton, Pengcheng Yin

    Abstract: A fundamental skill among human developers is the ability to understand and reason about program execution. As an example, a programmer can mentally simulate code execution in natural language to debug and repair code (aka. rubber duck debugging). However, large language models (LLMs) of code are typically trained on the surface textual form of programs, thus may lack a semantic understanding of h… ▽ More

    Submitted 22 April, 2024; originally announced April 2024.

    Comments: 35 pages

  2. arXiv:2402.08699  [pdf, other

    cs.SE cs.LG

    Unsupervised Evaluation of Code LLMs with Round-Trip Correctness

    Authors: Miltiadis Allamanis, Sheena Panthaplackel, Pengcheng Yin

    Abstract: To evaluate code large language models (LLMs), research has relied on a few small manually curated benchmarks, such as HumanEval and MBPP, which represent a narrow part of the real-world software domains. In this work, we introduce round-trip correctness (RTC) as an alternative evaluation method. RTC allows Code LLM evaluation on a broader spectrum of real-world software domains without the need f… ▽ More

    Submitted 27 May, 2024; v1 submitted 13 February, 2024; originally announced February 2024.

    Comments: Published in ICML 2024

  3. arXiv:2402.05980  [pdf, other

    cs.SE cs.AI cs.LG cs.PL

    Do Large Code Models Understand Programming Concepts? A Black-box Approach

    Authors: Ashish Hooda, Mihai Christodorescu, Miltiadis Allamanis, Aaron Wilson, Kassem Fawaz, Somesh Jha

    Abstract: Large Language Models' success on text generation has also made them better at code generation and coding tasks. While a lot of work has demonstrated their remarkable performance on tasks such as code completion and editing, it is still unclear as to why. We help bridge this gap by exploring to what degree auto-regressive models understand the logical constructs of the underlying programs. We prop… ▽ More

    Submitted 23 February, 2024; v1 submitted 8 February, 2024; originally announced February 2024.

  4. arXiv:2312.11805  [pdf, other

    cs.CL cs.AI cs.CV

    Gemini: A Family of Highly Capable Multimodal Models

    Authors: Gemini Team, Rohan Anil, Sebastian Borgeaud, Jean-Baptiste Alayrac, Jiahui Yu, Radu Soricut, Johan Schalkwyk, Andrew M. Dai, Anja Hauth, Katie Millican, David Silver, Melvin Johnson, Ioannis Antonoglou, Julian Schrittwieser, Amelia Glaese, Jilin Chen, Emily Pitler, Timothy Lillicrap, Angeliki Lazaridou, Orhan Firat, James Molloy, Michael Isard, Paul R. Barham, Tom Hennigan, Benjamin Lee , et al. (1325 additional authors not shown)

    Abstract: This report introduces a new family of multimodal models, Gemini, that exhibit remarkable capabilities across image, audio, video, and text understanding. The Gemini family consists of Ultra, Pro, and Nano sizes, suitable for applications ranging from complex reasoning tasks to on-device memory-constrained use-cases. Evaluation on a broad range of benchmarks shows that our most-capable Gemini Ultr… ▽ More

    Submitted 17 June, 2024; v1 submitted 18 December, 2023; originally announced December 2023.

  5. arXiv:2308.08203  [pdf, other

    cs.LG cs.SE

    Epicure: Distilling Sequence Model Predictions into Patterns

    Authors: Miltiadis Allamanis, Earl T. Barr

    Abstract: Most machine learning models predict a probability distribution over concrete outputs and struggle to accurately predict names over high entropy sequence distributions. Here, we explore finding abstract, high-precision patterns intrinsic to these predictions in order to make abstract predictions that usefully capture rare sequences. In this short paper, we present Epicure, a method that distils th… ▽ More

    Submitted 16 August, 2023; originally announced August 2023.

  6. arXiv:2212.09132  [pdf, other

    cs.SE cs.LG

    JEMMA: An Extensible Java Dataset for ML4Code Applications

    Authors: Anjan Karmakar, Miltiadis Allamanis, Romain Robbes

    Abstract: Machine Learning for Source Code (ML4Code) is an active research field in which extensive experimentation is needed to discover how to best use source code's richly structured information. With this in mind, we introduce JEMMA, an Extensible Java Dataset for ML4Code Applications, which is a large-scale, diverse, and high-quality dataset targeted at ML4Code. Our goal with JEMMA is to lower the barr… ▽ More

    Submitted 18 December, 2022; originally announced December 2022.

  7. arXiv:2207.12456  [pdf, other

    cs.PL cs.AI cs.SE

    Overwatch: Learning Patterns in Code Edit Sequences

    Authors: Yuhao Zhang, Yasharth Bajpai, Priyanshu Gupta, Ameya Ketkar, Miltiadis Allamanis, Titus Barik, Sumit Gulwani, Arjun Radhakrishna, Mohammad Raza, Gustavo Soares, Ashish Tiwari

    Abstract: Integrated Development Environments (IDEs) provide tool support to automate many source code editing tasks. Traditionally, IDEs use only the spatial context, i.e., the location where the developer is editing, to generate candidate edit recommendations. However, spatial context alone is often not sufficient to confidently predict the developer's next edit, and thus IDEs generate many suggestions at… ▽ More

    Submitted 25 July, 2022; originally announced July 2022.

    Comments: 25 pages, 7 Figures, 4 Algorithms, 3 Tables

  8. arXiv:2205.11023  [pdf, other

    cs.SE cs.CL

    AdaptivePaste: Code Adaptation through Learning Semantics-aware Variable Usage Representations

    Authors: Xiaoyu Liu, Jinu Jang, Neel Sundaresan, Miltiadis Allamanis, Alexey Svyatkovskiy

    Abstract: In software development, it is common for programmers to copy-paste or port code snippets and then adapt them to their use case. This scenario motivates the code adaptation task -- a variant of program repair which aims to adapt variable identifiers in a pasted snippet of code to the surrounding, preexisting source code. However, no existing approach has been shown to effectively address this task… ▽ More

    Submitted 6 October, 2023; v1 submitted 22 May, 2022; originally announced May 2022.

  9. arXiv:2205.10674  [pdf, other

    cs.LG

    NS3: Neuro-Symbolic Semantic Code Search

    Authors: Shushan Arakelyan, Anna Hakhverdyan, Miltiadis Allamanis, Luis Garcia, Christophe Hauser, Xiang Ren

    Abstract: Semantic code search is the task of retrieving a code snippet given a textual description of its functionality. Recent work has been focused on using similarity metrics between neural embeddings of text and code. However, current language models are known to struggle with longer, compositional text, and multi-step reasoning. To overcome this limitation, we propose supplementing the query sentence… ▽ More

    Submitted 7 November, 2022; v1 submitted 21 May, 2022; originally announced May 2022.

  10. arXiv:2204.07363  [pdf, ps, other

    cs.CL cs.SE

    Is Surprisal in Issue Trackers Actionable?

    Authors: James Caddy, Markus Wagner, Christoph Treude, Earl T. Barr, Miltiadis Allamanis

    Abstract: Background. From information theory, surprisal is a measurement of how unexpected an event is. Statistical language models provide a probabilistic approximation of natural languages, and because surprisal is constructed with the probability of an event occuring, it is therefore possible to determine the surprisal associated with English sentences. The issues and pull requests of software repositor… ▽ More

    Submitted 15 April, 2022; originally announced April 2022.

    Comments: 8 pages, 1 figure. Submitted to 2022 International Conference on Mining Software Repositories Registered Reports track

    ACM Class: H.3.3; I.2.7

  11. arXiv:2202.02195  [pdf, other

    stat.ML cs.LG

    Deep End-to-end Causal Inference

    Authors: Tomas Geffner, Javier Antoran, Adam Foster, Wenbo Gong, Chao Ma, Emre Kiciman, Amit Sharma, Angus Lamb, Martin Kukla, Nick Pawlowski, Miltiadis Allamanis, Cheng Zhang

    Abstract: Causal inference is essential for data-driven decision making across domains such as business engagement, medical treatment and policy making. However, research on causal discovery has evolved separately from inference methods, preventing straight-forward combination of methods from both fields. In this work, we develop Deep End-to-end Causal Inference (DECI), a single flow-based non-linear additi… ▽ More

    Submitted 20 June, 2022; v1 submitted 4 February, 2022; originally announced February 2022.

  12. arXiv:2201.12113  [pdf, other

    cs.LG cs.SE

    HEAT: Hyperedge Attention Networks

    Authors: Dobrik Georgiev, Marc Brockschmidt, Miltiadis Allamanis

    Abstract: Learning from structured data is a core machine learning task. Commonly, such data is represented as graphs, which normally only consider (typed) binary relationships between pairs of nodes. This is a substantial limitation for many domains with highly-structured data. One important such domain is source code, where hypergraph-based representations can better capture the semantically rich and stru… ▽ More

    Submitted 5 September, 2022; v1 submitted 28 January, 2022; originally announced January 2022.

    Comments: Published in TMLR

  13. arXiv:2110.08223  [pdf, other

    cs.LG

    Simultaneous Missing Value Imputation and Structure Learning with Groups

    Authors: Pablo Morales-Alvarez, Wenbo Gong, Angus Lamb, Simon Woodhead, Simon Peyton Jones, Nick Pawlowski, Miltiadis Allamanis, Cheng Zhang

    Abstract: Learning structures between groups of variables from data with missing values is an important task in the real world, yet difficult to solve. One typical scenario is discovering the structure among topics in the education domain to identify learning pathways. Here, the observations are student performances for questions under each topic which contain missing values. However, most existing methods… ▽ More

    Submitted 24 February, 2022; v1 submitted 15 October, 2021; originally announced October 2021.

  14. arXiv:2110.04866  [pdf, other

    cs.LG

    CoRGi: Content-Rich Graph Neural Networks with Attention

    Authors: Jooyeon Kim, Angus Lamb, Simon Woodhead, Simon Peyton Jones, Cheng Zheng, Miltiadis Allamanis

    Abstract: Graph representations of a target domain often project it to a set of entities (nodes) and their relations (edges). However, such projections often miss important and rich information. For example, in graph representations used in missing value imputation, items - represented as nodes - may contain rich textual information. However, when processing graphs with graph neural networks (GNN), such inf… ▽ More

    Submitted 10 October, 2021; originally announced October 2021.

  15. arXiv:2106.10158  [pdf, other

    cs.LG cs.SE

    Learning to Complete Code with Sketches

    Authors: Daya Guo, Alexey Svyatkovskiy, Jian Yin, Nan Duan, Marc Brockschmidt, Miltiadis Allamanis

    Abstract: Code completion is usually cast as a language modelling problem, i.e., continuing an input in a left-to-right fashion. However, in practice, some parts of the completion (e.g., string literals) may be very hard to predict, whereas subsequent parts directly follow from the context. To handle this, we instead consider the scenario of generating code completions with "holes" inserted in places where… ▽ More

    Submitted 23 January, 2022; v1 submitted 18 June, 2021; originally announced June 2021.

    Comments: Published in ICLR 2022

  16. arXiv:2105.12787  [pdf, other

    cs.LG cs.SE

    Self-Supervised Bug Detection and Repair

    Authors: Miltiadis Allamanis, Henry Jackson-Flux, Marc Brockschmidt

    Abstract: Machine learning-based program analyses have recently shown the promise of integrating formal and probabilistic reasoning towards aiding software development. However, in the absence of large annotated corpora, training these analyses is challenging. Towards addressing this, we present BugLab, an approach for self-supervised learning of bug detection and repair. BugLab co-trains two models: (1) a… ▽ More

    Submitted 16 November, 2021; v1 submitted 26 May, 2021; originally announced May 2021.

    Comments: Published in NeurIPS 2021

  17. arXiv:2006.04771  [pdf, other

    cs.LG stat.ML

    Copy that! Editing Sequences by Copying Spans

    Authors: Sheena Panthaplackel, Miltiadis Allamanis, Marc Brockschmidt

    Abstract: Neural sequence-to-sequence models are finding increasing use in editing of documents, for example in correcting a text document or repairing source code. In this paper, we argue that common seq2seq models (with a facility to copy single tokens) are not a natural fit for such tasks, as they have to explicitly copy each unchanged token. We present an extension of seq2seq models capable of copying e… ▽ More

    Submitted 14 December, 2020; v1 submitted 8 June, 2020; originally announced June 2020.

    Comments: Published in AAAI 2021

  18. arXiv:2004.13651  [pdf, other

    cs.SE cs.LG

    Fast and Memory-Efficient Neural Code Completion

    Authors: Alexey Svyatkovskiy, Sebastian Lee, Anna Hadjitofi, Maik Riechert, Juliana Franco, Miltiadis Allamanis

    Abstract: Code completion is one of the most widely used features of modern integrated development environments (IDEs). While deep learning has made significant progress in the statistical prediction of source code, state-of-the-art neural network models consume hundreds of megabytes of memory, bloating the development environment. We address this in two steps: first we present a modular neural framework fo… ▽ More

    Submitted 16 March, 2021; v1 submitted 28 April, 2020; originally announced April 2020.

    Journal ref: Published at Mining Software Repositories 2021

  19. arXiv:2004.10657  [pdf, other

    cs.PL cs.LG stat.ML

    Typilus: Neural Type Hints

    Authors: Miltiadis Allamanis, Earl T. Barr, Soline Ducousso, Zheng Gao

    Abstract: Type inference over partial contexts in dynamically typed languages is challenging. In this work, we present a graph neural network model that predicts types by probabilistically reasoning over a program's structure, names, and patterns. The network uses deep similarity learning to learn a TypeSpace -- a continuous relaxation of the discrete space of types -- and how to embed the type properties o… ▽ More

    Submitted 6 April, 2020; originally announced April 2020.

    Comments: Accepted to PLDI 2020

  20. arXiv:2001.02444  [pdf, other

    cs.SE cs.LG

    Learning to Encode and Classify Test Executions

    Authors: Foivos Tsimpourlas, Ajitha Rajan, Miltiadis Allamanis

    Abstract: The challenge of automatically determining the correctness of test executions is referred to as the test oracle problem and is one of the key remaining issues for automated testing. The goal in this paper is to solve the test oracle problem in a way that is general, scalable and accurate. To achieve this, we use supervised learning over test execution traces. We label a small fraction of the execu… ▽ More

    Submitted 2 October, 2023; v1 submitted 8 January, 2020; originally announced January 2020.

    Journal ref: In Proceedings of the 36th Annual ACM Symposium on Applied Computing 2021 Mar 22 (pp. 1521-1531)

  21. arXiv:1909.09436  [pdf, other

    cs.LG cs.IR cs.SE stat.ML

    CodeSearchNet Challenge: Evaluating the State of Semantic Code Search

    Authors: Hamel Husain, Ho-Hsiang Wu, Tiferet Gazit, Miltiadis Allamanis, Marc Brockschmidt

    Abstract: Semantic code search is the task of retrieving relevant code given a natural language query. While related to other information retrieval tasks, it requires bridging the gap between the language used in code (often abbreviated and highly technical) and natural language more suitable to describe vague concepts and ideas. To enable evaluation of progress on code search, we are releasing the CodeSe… ▽ More

    Submitted 8 June, 2020; v1 submitted 20 September, 2019; originally announced September 2019.

    Comments: Updated evaluation numbers after fixing indexing bug

  22. arXiv:1909.09029  [pdf, other

    cs.SE

    DIRE: A Neural Approach to Decompiled Identifier Naming

    Authors: Jeremy Lacomis, Pengcheng Yin, Edward J. Schwartz, Miltiadis Allamanis, Claire Le Goues, Graham Neubig, Bogdan Vasilescu

    Abstract: The decompiler is one of the most common tools for examining binaries without corresponding source code. It transforms binaries into high-level code, reversing the compilation process. Decompilers can reconstruct much of the information that is lost during the compilation process (e.g., structure and type information). Unfortunately, they do not reconstruct semantically meaningful variable names,… ▽ More

    Submitted 3 October, 2019; v1 submitted 19 September, 2019; originally announced September 2019.

    Comments: 2019 International Conference on Automated Software Engineering

  23. arXiv:1906.10816  [pdf, other

    cs.LG cs.AI cs.CL cs.PL stat.ML

    Program Synthesis and Semantic Parsing with Learned Code Idioms

    Authors: Richard Shin, Miltiadis Allamanis, Marc Brockschmidt, Oleksandr Polozov

    Abstract: Program synthesis of general-purpose source code from natural language specifications is challenging due to the need to reason about high-level patterns in the target program and low-level implementation details at the same time. In this work, we present PATOIS, a system that allows a neural program synthesizer to explicitly interleave high-level and low-level reasoning at every generation step. I… ▽ More

    Submitted 4 November, 2019; v1 submitted 25 June, 2019; originally announced June 2019.

    Comments: 33rd Conference on Neural Information Processing Systems (NeurIPS) 2019. 13 pages total, 9 pages of main text

  24. arXiv:1812.06469  [pdf, other

    cs.SE cs.LG

    The Adverse Effects of Code Duplication in Machine Learning Models of Code

    Authors: Miltiadis Allamanis

    Abstract: The field of big code relies on mining large corpora of code to perform some learning task. A significant threat to this approach has been recently identified by Lopes et al. (2017) who found a large amount of near-duplicate code on GitHub. However, the impact of code duplication has not been noticed by researchers devising machine learning models for source code. In this work, we explore the effe… ▽ More

    Submitted 11 August, 2019; v1 submitted 16 December, 2018; originally announced December 2018.

    Comments: Published in SPLASH Onward! 2019

  25. arXiv:1811.01824  [pdf, ps, other

    cs.LG cs.CL cs.SE stat.ML

    Structured Neural Summarization

    Authors: Patrick Fernandes, Miltiadis Allamanis, Marc Brockschmidt

    Abstract: Summarization of long sequences into a concise statement is a core problem in natural language processing, requiring non-trivial understanding of the input. Based on the promising results of graph neural networks on highly structured data, we develop a framework to extend existing sequence encoders with a graph component that can reason about long-distance relationships in weakly structured data s… ▽ More

    Submitted 3 February, 2021; v1 submitted 5 November, 2018; originally announced November 2018.

    Comments: Published in ICLR 2019 https://openreview.net/forum?id=H1ersoRqtm

  26. arXiv:1810.13337  [pdf, other

    cs.LG cs.SE stat.ML

    Learning to Represent Edits

    Authors: Pengcheng Yin, Graham Neubig, Miltiadis Allamanis, Marc Brockschmidt, Alexander L. Gaunt

    Abstract: We introduce the problem of learning distributed representations of edits. By combining a "neural editor" with an "edit encoder", our models learn to represent the salient information of an edit and can be used to apply edits to new inputs. We experiment on natural language and source code edit data. Our evaluation yields promising results that suggest that our neural network models learn to captu… ▽ More

    Submitted 22 February, 2019; v1 submitted 31 October, 2018; originally announced October 2018.

    Comments: ICLR 2019

  27. CODIT: Code Editing with Tree-Based Neural Models

    Authors: Saikat Chakraborty, Yangruibo Ding, Miltiadis Allamanis, Baishakhi Ray

    Abstract: The way developers edit day-to-day code tends to be repetitive, often using existing code elements. Many researchers have tried to automate repetitive code changes by learning from specific change templates which are applied to limited scope. The advancement of deep neural networks and the availability of vast open-source evolutionary data opens up the possibility of automatically learning those t… ▽ More

    Submitted 25 August, 2020; v1 submitted 30 September, 2018; originally announced October 2018.

    Report number: 9181462

    Journal ref: IEEE Transaction of Software Engineering - 2022, Volume 48, Number 4

  28. arXiv:1805.09076  [pdf, other

    cs.LG stat.ML

    Constrained Graph Variational Autoencoders for Molecule Design

    Authors: Qi Liu, Miltiadis Allamanis, Marc Brockschmidt, Alexander L. Gaunt

    Abstract: Graphs are ubiquitous data structures for representing interactions between entities. With an emphasis on the use of graphs to represent chemical molecules, we explore the task of learning to generate graphs that conform to a distribution observed in training data. We propose a variational autoencoder model in which both encoder and decoder are graph-structured. Our decoder assumes a sequential or… ▽ More

    Submitted 7 March, 2019; v1 submitted 23 May, 2018; originally announced May 2018.

    Comments: 8 pages, 5 figures

  29. arXiv:1805.08490  [pdf, other

    cs.LG cs.PL stat.ML

    Generative Code Modeling with Graphs

    Authors: Marc Brockschmidt, Miltiadis Allamanis, Alexander L. Gaunt, Oleksandr Polozov

    Abstract: Generative models for source code are an interesting structured prediction problem, requiring to reason about both hard syntactic and semantic constraints as well as about natural, likely programs. We present a novel model for this problem that uses a graph to represent the intermediate state of the generated output. The generative procedure interleaves grammar-driven expansion steps with graph au… ▽ More

    Submitted 16 April, 2019; v1 submitted 22 May, 2018; originally announced May 2018.

  30. arXiv:1711.00740  [pdf, other

    cs.LG cs.AI cs.PL cs.SE

    Learning to Represent Programs with Graphs

    Authors: Miltiadis Allamanis, Marc Brockschmidt, Mahmoud Khademi

    Abstract: Learning tasks on source code (i.e., formal languages) have been considered recently, but most work has tried to transfer natural language methods and does not capitalize on the unique opportunities offered by code's known syntax. For example, long-range dependencies induced by using the same variable or function in distant locations are often not considered. We propose to use graphs to represent… ▽ More

    Submitted 4 May, 2018; v1 submitted 1 November, 2017; originally announced November 2017.

    Comments: Published in ICLR 2018. arXiv admin note: text overlap with arXiv:1705.07867

  31. arXiv:1709.06182  [pdf, ps, other

    cs.SE cs.LG cs.PL

    A Survey of Machine Learning for Big Code and Naturalness

    Authors: Miltiadis Allamanis, Earl T. Barr, Premkumar Devanbu, Charles Sutton

    Abstract: Research at the intersection of machine learning, programming languages, and software engineering has recently taken important steps in proposing learnable probabilistic models of source code that exploit code's abundance of patterns. In this article, we survey this work. We contrast programming languages against natural languages and discuss how these similarities and differences drive the design… ▽ More

    Submitted 4 May, 2018; v1 submitted 18 September, 2017; originally announced September 2017.

    Comments: Website accompanying this survey paper can be found at https://ml4code.github.io

  32. arXiv:1705.07867  [pdf, ps, other

    cs.LG cs.SE

    SmartPaste: Learning to Adapt Source Code

    Authors: Miltiadis Allamanis, Marc Brockschmidt

    Abstract: Deep Neural Networks have been shown to succeed at a range of natural language tasks such as machine translation and text summarization. While tasks on source code (ie, formal languages) have been considered recently, most work in this area does not attempt to capitalize on the unique opportunities offered by its known syntax and structure. In this work, we introduce SmartPaste, a first task that… ▽ More

    Submitted 22 May, 2017; originally announced May 2017.

  33. arXiv:1611.02516  [pdf, other

    cs.SE

    Tailored Mutants Fit Bugs Better

    Authors: Miltiadis Allamanis, Earl T. Barr, René Just, Charles Sutton

    Abstract: Mutation analysis measures test suite adequacy, the degree to which a test suite detects seeded faults: one test suite is better than another if it detects more mutants. Mutation analysis effectiveness rests on the assumption that mutants are coupled with real faults i.e. mutant detection is strongly correlated with real fault detection. The work that validated this also showed that a large portio… ▽ More

    Submitted 8 November, 2016; originally announced November 2016.

  34. arXiv:1611.01423  [pdf, other

    cs.LG cs.AI

    Learning Continuous Semantic Representations of Symbolic Expressions

    Authors: Miltiadis Allamanis, Pankajan Chanthirasegaran, Pushmeet Kohli, Charles Sutton

    Abstract: Combining abstract, symbolic reasoning with continuous neural reasoning is a grand challenge of representation learning. As a step in this direction, we propose a new architecture, called neural equivalence networks, for the problem of learning continuous semantic representations of algebraic and logical expressions. These networks are trained to represent semantic equivalence, even of expressions… ▽ More

    Submitted 10 June, 2017; v1 submitted 4 November, 2016; originally announced November 2016.

    Comments: Accepted to ICML 2017

  35. arXiv:1602.03001  [pdf, ps, other

    cs.LG cs.CL cs.SE

    A Convolutional Attention Network for Extreme Summarization of Source Code

    Authors: Miltiadis Allamanis, Hao Peng, Charles Sutton

    Abstract: Attention mechanisms in neural networks have proved useful for problems in which the input and output do not have fixed dimension. Often there exist features that are locally translation invariant and would be valuable for directing the model's attention, but previous attentional architectures are not constructed to learn such features specifically. We introduce an attentional neural network that… ▽ More

    Submitted 25 May, 2016; v1 submitted 9 February, 2016; originally announced February 2016.

    Comments: Code, data and visualization at http://groups.inf.ed.ac.uk/cup/codeattention/

  36. arXiv:1512.07982  [pdf, other

    cs.NE cs.LG

    Inducing Generalized Multi-Label Rules with Learning Classifier Systems

    Authors: Fani A. Tzima, Miltiadis Allamanis, Alexandros Filotheou, Pericles A. Mitkas

    Abstract: In recent years, multi-label classification has attracted a significant body of research, motivated by real-life applications, such as text classification and medical diagnoses. Although sparsely studied in this context, Learning Classifier Systems are naturally well-suited to multi-label classification problems, whose search space typically involves multiple highly specific niches. This is the mo… ▽ More

    Submitted 25 December, 2015; originally announced December 2015.

  37. Mining Idioms from Source Code

    Authors: Miltiadis Allamanis, Charles Sutton

    Abstract: We present the first method for automatically mining code idioms from a corpus of previously written, idiomatic software projects. We take the view that a code idiom is a syntactic fragment that recurs across projects and has a single semantic role. Idioms may have metavariables, such as the body of a for loop. Modern IDEs commonly provide facilities for manually defining idioms and inserting them… ▽ More

    Submitted 2 June, 2014; v1 submitted 1 April, 2014; originally announced April 2014.

  38. Autofolding for Source Code Summarization

    Authors: Jaroslav Fowkes, Pankajan Chanthirasegaran, Razvan Ranca, Miltiadis Allamanis, Mirella Lapata, Charles Sutton

    Abstract: Developers spend much of their time reading and browsing source code, raising new opportunities for summarization methods. Indeed, modern code editors provide code folding, which allows one to selectively hide blocks of code. However this is impractical to use as folding decisions must be made manually or based on simple rules. We introduce the autofolding problem, which is to automatically create… ▽ More

    Submitted 6 March, 2017; v1 submitted 18 March, 2014; originally announced March 2014.

    Comments: IEEE Transactions on Software Engineering 2017

  39. Learning Natural Coding Conventions

    Authors: Miltiadis Allamanis, Earl T. Barr, Christian Bird, Charles Sutton

    Abstract: Every programmer has a characteristic style, ranging from preferences about identifier naming to preferences about object relationships and design patterns. Coding conventions define a consistent syntactic style, fostering readability and hence maintainability. When collaborating, programmers strive to obey a project's coding conventions. However, one third of reviews of changes contain feedback a… ▽ More

    Submitted 7 April, 2014; v1 submitted 17 February, 2014; originally announced February 2014.