Leveraging Deep Learning for Abstractive Code Summarization of Unofficial Documentation
Usually, programming languages have official documentation to guide developers with APIs, methods, and classes. However, researchers identified insufficient or inadequate documentation examples and flaws with the API's complex structure as barriers to learning an API. As a result, developers may consult other sources (StackOverflow, GitHub, etc.) to learn more about an API. Recent research studies have shown that unofficial documentation is a valuable source of information for generating code summaries. We, therefore, have been motivated to leverage such a type of documentation along with deep learning techniques towards generating high-quality summaries for APIs discussed in informal documentation. This paper proposes an automatic approach using the BART algorithm, a state-of-the-art transformer model, to generate summaries for APIs discussed in StackOverflow. We built an oracle of human-generated summaries to evaluate our approach against it using ROUGE and BLEU metrics which are the most widely used evaluation metrics in text summarization. Furthermore, we evaluated our summaries empirically against a previous work in terms of quality. Our findings demonstrate that using deep learning algorithms can improve summaries' quality and outperform the previous work by an average of %57 for Precision, %66 for Recall, and %61 for F-measure, and it runs 4.4 times faster.
Code (0)
등록된 구현이 없습니다.
Tasks
Code SummarizationDeep LearningText SummarizationMethods 이 논문이 사용한 방법론
Similar Papers 제목 키워드 기반
Towards Code Summarization of APIs Based on Unofficial Documentation Using NLP Techniques
Each programming language comes with official documentation to guide developers with APIs, methods, and classes. However, in some cases, official documentation is not an efficient way to get the needed information. As a …
Code SummarizationLeveraging Unsupervised Learning to Summarize APIs Discussed in Stack Overflow
Automated source code summarization is a task that generates summarized information about the purpose, usage, and--or implementation of methods and classes to support understanding of these code entities. Multiple approa…
Code SummarizationSource Code SummarizationRevolutionizing API Documentation through Summarization
This study tackles the challenges associated with interpreting Application Programming Interface (API) documentation, an integral aspect of software development. Official API documentation, while essential, can be length…
Extractive SummarizationNavigateRepurposing Decoder-Transformer Language Models for Abstractive Summarization
Neural network models have shown excellent fluency and performance when applied to abstractive summarization. Many approaches to neural abstractive summarization involve the introduction of significant inductive bias, ex…
Abstractive Text SummarizationDecoderInductive BiasLanguage Modeling+2Enhancing API Documentation through BERTopic Modeling and Summarization
As the amount of textual data in various fields, including software development, continues to grow, there is a pressing demand for efficient and effective extraction and presentation of meaningful insights. This paper pr…