一句话:构建 README 难句-简化句数据集,系统评估迁移学习并取得 34.68 BLEU 的自动简化效果。
论文关注 GitHub README 因术语密集、句式复杂而难以理解的问题,探索软件工程领域的自动文本简化。作者收集了 14,588 对软件相关 README 的难句与简化句,训练基于 Transformer 的简化模型。为缓解领域数据稀疏和噪声,他们利用公开 Wikipedia 通用简化数据进行迁移学习:先在通用语料上训练,再在 README 数据上微调。评估采用自动 BLEU 指标与人工评分,对比多种迁移学习方案及无迁移基线。最佳模型在通用主题语料的最佳 checkpoint 上微调,取得 34.68 BLEU,人工评分显著优于其他方案,在简化程度与意义保留之间取得更好权衡。结论是迁移学习能缓解 README 简化中的数据不足与风格漂移问题。
Software documentation captures detailed knowledge about a software product, e.g., code, technologies, and design. It plays an important role in the coordination of development teams and in conveying ideas to various stakeholders. However, software documentation can be hard to comprehend if it is written with jargon and complicated sentence structure. In this study, we explored the potential of text simplification techniques in the domain of software engineering to automatically simplify GitHub README files. We collected software-related pairs of GitHub README files consisting of 14,588 entries, aligned difficult sentences with their simplified counterparts, and trained a Transformer-based model to automatically simplify difficult versions. To mitigate the sparse and noisy nature of the software-related simplification dataset, we applied general text simplification knowledge to this field. Since many general-domain difficult-to-simple Wikipedia document pairs are already publicly available, we explored the potential of transfer learning by first training the model on the Wikipedia data and then fine-tuning it on the README data. Using automated BLEU scores and human evaluation, we compared the performance of different transfer learning schemes and the baseline models without transfer learning. The transfer learning model using the best checkpoint trained on a general topic corpus achieved the best performance of 34.68 BLEU score and statistically significantly higher human annotation scores compared to the rest of the schemes and baselines. We conclude that using transfer learning is a promising direction to circumvent the lack of data and drift style problem in software README files simplification and achieved a better trade-off between simplification and preservation of meaning.