Conference paper Open Access
Brody, Shaked; Alon, Uri; Yahav, Eran
<?xml version='1.0' encoding='utf-8'?> <resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://datacite.org/schema/kernel-4" xsi:schemaLocation="http://datacite.org/schema/kernel-4 http://schema.datacite.org/meta/kernel-4.1/metadata.xsd"> <identifier identifierType="DOI">10.5281/zenodo.4036303</identifier> <creators> <creator> <creatorName>Brody, Shaked</creatorName> <givenName>Shaked</givenName> <familyName>Brody</familyName> <affiliation>Technion</affiliation> </creator> <creator> <creatorName>Alon, Uri</creatorName> <givenName>Uri</givenName> <familyName>Alon</familyName> <affiliation>Technion</affiliation> </creator> <creator> <creatorName>Yahav, Eran</creatorName> <givenName>Eran</givenName> <familyName>Yahav</familyName> <affiliation>Technion</affiliation> </creator> </creators> <titles> <title>A Structural Model for Contextual Code Changes</title> </titles> <publisher>Zenodo</publisher> <publicationYear>2020</publicationYear> <subjects> <subject>Programming Languages</subject> <subject>Machine Learning</subject> </subjects> <dates> <date dateType="Issued">2020-09-18</date> </dates> <resourceType resourceTypeGeneral="ConferencePaper"/> <alternateIdentifiers> <alternateIdentifier alternateIdentifierType="url">https://zenodo.org/record/4036303</alternateIdentifier> </alternateIdentifiers> <relatedIdentifiers> <relatedIdentifier relatedIdentifierType="DOI" relationType="IsVersionOf">10.5281/zenodo.4036302</relatedIdentifier> </relatedIdentifiers> <rightsList> <rights rightsURI="https://creativecommons.org/licenses/by/4.0/legalcode">Creative Commons Attribution 4.0 International</rights> <rights rightsURI="info:eu-repo/semantics/openAccess">Open Access</rights> </rightsList> <descriptions> <description descriptionType="Abstract"><p>We address the problem of predicting edit completions based on a learned model that was trained on past edits.<br> Given a code snippet that is partially edited, our goal is to predict a completion of the edit for the rest of the<br> snippet. We refer to this task as the EditCompletion&nbsp;task and present a novel approach for tackling it. The<br> main idea is to directly represent structural edits. This allows us to model the likelihood of the edit itself, rather<br> than learning the likelihood of the edited code. We represent an edit operation as a path in the program&rsquo;s Abstract<br> Syntax Tree (AST), originating from the source of the edit to the target of the edit. Using this representation, we<br> present a powerful and lightweight neural model for the EditCompletion&nbsp;task.</p> <p><br> We conduct a thorough evaluation, comparing our approach to a variety of representation and modeling<br> approaches that are driven by multiple strong models such as LSTMs, Transformers, and neural CRFs. Our<br> experiments show that our model achieves 28% relative gain over state-of-the-art sequential models and 2&times;<br> higher accuracy than syntactic models that learn to generate the edited code instead of modeling the edits<br> directly. We make our code, dataset, and trained models publicly available.</p></description> </descriptions> </resource>
All versions | This version | |
---|---|---|
Views | 73 | 73 |
Downloads | 16 | 16 |
Data volume | 488.8 MB | 488.8 MB |
Unique views | 70 | 70 |
Unique downloads | 13 | 13 |