More about HKUST
Automatic Techniques for Code Example Generation
PhD Thesis Proposal Defence
Title: "Automatic Techniques for Code Example Generation"
by
Mr. Xiaodong GU
Abstract:
Developers often wonder how to implement a program functionality. Code examples
are very helpful in this regard. Over the years, many approaches have been
proposed to generate code examples. The existing approaches often treat queries
and source code as textual documents and utilize information retrieval models
to retrieve relevant code snippets that match a given query.
However, conventional code example generation approaches involve the following
major challenges. First, they rely on a bag-of-words assumption and cannot
recognize high-level features of queries and source code. Second, source code
and natural language queries are heterogeneous. Existing approaches mainly rely
on the textual similarity between source code and natural language query. They
lack a mapping of high-level semantics between queries and source code.
Moreover, user requirements are changing, this requires to generate novel code
examples rather than existing project-specific code snippets.
To address these challenges, in this thesis, we propose two deep learning based
approaches to the generation of code examples. Instead of mapping keywords, our
approaches learn the deep semantics of queries and code snippets. We first
propose a technique, DeepAPI which generates API sequences via deep learning
and synthesizes code snippets with the generated API sequences. Furthermore, we
propose a technique, DeepCodeHow to generate code examples via searching and
summarizing from existing code corpus. Finally, we propose a combinational
approach, DAPE that combines both the generative and searching based techniques
to generate novel code examples. Our proposed techniques effectively generate
relevant code snippets and outperform the conventional IR-based approaches.
Date: Friday, 31 March 2017
Time: 3:00pm - 5:00pm
Venue: Room 4475
(lifts 25/26)
Committee Members: Dr. Sunghun Kim (Supervisor)
Dr. Xiaojuan Ma (Chairperson)
Prof. Shing-Chi Cheung
Prof. Fangzhen Lin
**** ALL are Welcome ****