تهدف تلخيص الكود إلى توليد أوصاف لغة طبيعية موجزة من التعليمات البرمجية المصدرية، والتي يمكن أن تساعد في تحسين فهم البرنامج والصيانة. تظهر الدراسات الحديثة أن المعلومات الأساسية والهيكلية المستخرجة من أشجار بناء الجملة التجريدية (ASTS) مواتية لتوليد الموجز. ومع ذلك، فإن النهج الحالية تفشل في التقاط المعلومات الغنية بالكامل في ASTS بسبب الحجم / العمق الكبير من ASTS. في هذه الورقة، نقترح نموذج رواية يلقي أن ينشق التسلسل هرمي وإعادة بناء ASTS. أولا، نحن تقسيم هرميا كبيرا إلى مجموعة كبيرة في مجموعة من السكتة الدماغيين واستخدام شبكة عصبية متكررة لتشفير الفرعية. ثم، نكمل تجميع شركات السكتة الدماغية من خلال إعادة بناء النقص الانقسام للحصول على تمثيل AST الكامل. أخيرا، يتم استخدام تمثيل AST، جنبا إلى جنب مع تضمين شفرة المصدر الذي حصل عليه تشفير رمز الكود الفانيليا، لتلخيص التعليمات البرمجية. أظهرت تجارب واسعة، بما في ذلك دراسة الاجتثاث والتقييم البشري، على المعايير قوة المدلى بها. لتسهيل الاستيلاء، تتوفر الكود والبيانات لدينا في https://github.com/deepsoftwareanalytics/ast.
Code summarization aims to generate concise natural language descriptions of source code, which can help improve program comprehension and maintenance. Recent studies show that syntactic and structural information extracted from abstract syntax trees (ASTs) is conducive to summary generation. However, existing approaches fail to fully capture the rich information in ASTs because of the large size/depth of ASTs. In this paper, we propose a novel model CAST that hierarchically splits and reconstructs ASTs. First, we hierarchically split a large AST into a set of subtrees and utilize a recursive neural network to encode the subtrees. Then, we aggregate the embeddings of subtrees by reconstructing the split ASTs to get the representation of the complete AST. Finally, AST representation, together with source code embedding obtained by a vanilla code token encoder, is used for code summarization. Extensive experiments, including the ablation study and the human evaluation, on benchmarks have demonstrated the power of CAST. To facilitate reproducibility, our code and data are available at https://github.com/DeepSoftwareAnalytics/CAST.
References used
https://aclanthology.org/
Statistical language modeling and translation with transformers have found many successful applications in program understanding and generation tasks, setting high benchmarks for tools in modern software development environments. The finite context w
With the increasing abundance of meeting transcripts, meeting summary has attracted more and more attention from researchers. The unsupervised pre-training method based on transformer structure combined with fine-tuning of downstream tasks has achiev
Neural sequence-to-sequence (Seq2Seq) models and BERT have achieved substantial improvements in abstractive document summarization (ADS) without and with pre-training, respectively. However, they sometimes repeatedly attend to unimportant source phra
Existing text style transfer (TST) methods rely on style classifiers to disentangle the text's content and style attributes for text style transfer. While the style classifier plays a critical role in existing TST methods, there is no known investiga
External syntactic and semantic information has been largely ignored by existing neural coreference resolution models. In this paper, we present a heterogeneous graph-based model to incorporate syntactic and semantic structures of sentences. The prop