The DOI matches its Crossref record; 10 of the 10 references it cites were found in a registry or an index.
Automatically generating commit messages from diffs using neural machine translation
Open accessAbstract
Commit messages are a valuable resource in comprehension of software evolution, since they provide a record of changes such as feature additions and bug repairs. Unfortunately, programmers often neglect to write good commit messages. Different techniques have been proposed to help programmers by automatically writing these messages. These techniques are effective at describing what changed, but are often verbose and lack context for understanding the rationale behind a change. In contrast, humans write messages that are short and summarize the high level rationale. In this paper, we adapt Neural Machine Translation (NMT) to automatically "translate" diffs into commit messages. We trained an NMT algorithm using a corpus of diffs and human-written commit messages from the top 1k Github projects. We designed a filter to help ensure that we only trained the algorithm on higher-quality commit messages. Our evaluation uncovered a pattern in which the messages we generate tend to be either very high or very low quality. Therefore, we created a quality-assurance filter to detect cases in which we are unable to produce good messages, and return a warning instead.
Overview
The claims and statistics of this paper haven’t been checked yet.
Run the check — free, no account needed. It reads the open-access text and checks the sources it cites.
Integrity signals
Registry
Cites
Statistics
Verification
Claims the paper makes
The claims and statistics of this paper haven’t been checked yet.
Run the check — free, no account needed. It reads the open-access text and checks the sources it cites.
Self-check
Percentages, sums and reported differences re-computed from the paper’s own numbers.
The self-check needs the paper’s full text.
Citations
Cites
Hochreiter, S., & Schmidhuber, J. (1997) · Neural Computation · doi:10.1162/neco.1997.9.8.1735 · Cited by 102,318
BLEU: a method for automatic evaluation of machine translation
Papineni, K., Roukos, S., Ward, T., & Zhu, W.-J. (2001) · Proceedings of the 40th Annual Meeting on Association for Computational Linguistics - ACL '02 · doi:10.3115/1073083.1073135 · Cited by 21,344
Effective Approaches to Attention-based Neural Machine Translation
Luong, T., Pham, H., & Manning, C. D. (2015) · Proceedings of the 2015 Conference on Empirical Methods in Natural Language Processing · doi:10.18653/v1/d15-1166 · Cited by 8,382
ADADELTA: An Adaptive Learning Rate Method
Zeiler, M. D. (2012) · arXiv · doi:10.48550/arxiv.1212.5701 · Cited by 5,322
Moses: open source toolkit for statistical machine translation
Koehn, P., Zens, R., Dyer, C., Bojar, O., Constantin, A., Herbst, E., Hoang, H., Birch, A., Callison-Burch, C., Federico, M., et al. (2007) · Proceedings of the 45th Annual Meeting of the ACL on Interactive Poster and Demonstration Sessions - ACL '07 · doi:10.3115/1557769.1557821 · Cited by 4,735
A Syntactic Neural Model for General-Purpose Code Generation
Yin, P., & Neubig, G. (2017) · Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers) · doi:10.18653/v1/p17-1041 · Cited by 623
A Syntactic Neural Model for General-Purpose Code Generation
Yin, P., & Neubig, G. (2017) · arXiv · doi:10.48550/arxiv.1704.01696 · Cited by 585
Towards automatically generating summary comments for Java methods
Sridhara, G., Hill, E., Muppaneni, D., Pollock, L., & Vijay-Shanker, K. (2010) · Proceedings of the IEEE/ACM international conference on Automated software engineering · doi:10.1145/1858996.1859006 · Cited by 514
Latent Predictor Networks for Code Generation
Ling, W., Blunsom, P., Grefenstette, E., Hermann, K. M., Kočiský, T., Wang, F., & Senior, A. (2016) · Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers) · doi:10.18653/v1/p16-1057 · Cited by 307
Automatically documenting program changes
Buse, R. P. L., & Weimer, W. R. (2010) · Proceedings of the IEEE/ACM international conference on Automated software engineering · doi:10.1145/1858996.1859005 · Cited by 219
Research works printed but not linked: 50
- 10.3115/v1/P14-5010 · DOI · Paper page
- 10.1109/MSR.2010.5463344 · DOI
- 10.1109/ICPC.2015.13 · DOI
- lam, 2015, Combining deep learning with information retrieval to localize buggy files for bug reports (n), 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering, 476
- 10.1109/WCRE.2001.957835 · DOI · Paper page
- 10.18653/v1/P16-1100 · DOI · Paper page
- 10.1109/ICSE.2015.229 · DOI
- 10.18653/v1/P17-4012 · DOI · Paper page
- 10.1109/TSE.2002.1019480 · DOI · Paper page
- koehn, 2007, Factored translation models, Proceedings of the 2007 Joint Conference on Empirical Methods in Natural Language Processing and Computational Natural Language Learning (EMNLP-CoNLL), 868
- 0, Stackoverflow developer survey results 2016
- 0, PYPL PopularitY of Programming Language
- heafield, 2013, Scalable modified Kneser-Ney language model estimation, Proceedings of the 51st Annual Meeting of the Association for Computational Linguistics, 8
- 10.1109/ICSE.2012.6227135 · DOI · Paper page
- 10.1109/ICPC.2017.12 · DOI
- 10.18653/v1/P16-1195 · DOI · Paper page
- 10.1023/B:LIDA.0000048322.42751.ca · DOI
- 10.1109/ICSM.2015.7332508 · DOI
- 10.18653/v1/E17-3017 · DOI · Paper page
- 10.18653/v1/E17-3017 · DOI · Paper page
- 10.1109/MSR.2015.38 · DOI
- 10.1145/2970276.2970326 · DOI · Paper page
- 2016, Theano Development Team, Theano A Python framework for fast computation of mathematical expressions
- sutskever, 2014, Sequence to sequence learning with neural networks, Advances in neural information processing systems, 27, 3104
- 10.18653/v1/W16-2323 · DOI
- 10.18653/v1/W16-2209 · DOI
- 10.3115/v1/D14-1179 · DOI · Paper page
- 10.1109/SCAM.2014.14 · DOI · Paper page
- 10.1109/ICSM.2000.883028 · DOI · Paper page
- 10.1109/ICSE.2013.6606588 · DOI · Paper page
- 10.1109/WCRE.2007.21 · DOI
- goodfellow, 2016, Deep Learning
- 10.1145/2950290.2950334 · DOI · Paper page
- 10.1109/ICSE.2017.9 · DOI
- 10.1109/WCRE.2010.13 · DOI · Paper page
- 10.1109/WCRE.2010.13 · DOI · Paper page
- heafield, 2011, Kenlm: Faster and smaller language model queries, Proceedings of the Sixth Workshop on Statistical Machine Translation WMT ‘11, 187
- 2012, Moses Specification, Deliverable D1 1, 5
- 0, TIOBE index for may 2017
- bahdanau, 2014, Neural machine translation by jointly learning to align and translate, CoRR abs/1409 0473
- 10.1109/ICPC.2017.11 · DOI
- callison-burch, 2011, Findings of the 2011 workshop on statistical machine translation, Proceedings of the Sixth Workshop on Statistical Machine Translation WMT ‘11, 22
- rubinstein, 2013, The Cross-Entropy Method A Unified Approach to Combinatorial Optimization Monte-Carlo Simulation and Machine Learning
- 10.1145/2568225.2568286 · DOI · Paper page
- 10.1109/ICSE.2012.6227188 · DOI
- 10.1109/ICSE.2013.6606676 · DOI
- 10.1007/s11390-016-1671-1 · DOI
- 10.1109/TSE.2016.2591536 · DOI
- 10.1162/089120103321337421 · DOI · Paper page
- 10.1145/2804381.2804387 · DOI
Cited by
Chen, C., Su, T., Meng, G., Xing, Z., & Liu, Y. (2018) · Proceedings of the 40th International Conference on Software Engineering · doi:10.1145/3180155.3180240 · Cited by 188
A Systematic Literature Review on the Use of Deep Learning in Software Engineering Research
Watson, C., Cooper, N., Palacio, D. N., Moran, K., & Poshyvanyk, D. (2022) · ACM Transactions on Software Engineering and Methodology · doi:10.1145/3485275 · Cited by 137
Semantic similarity metrics for evaluating source code summarization
Haque, S., Eberhart, Z., Bansal, A., & McMillan, C. (2022) · Proceedings of the 30th IEEE/ACM International Conference on Program Comprehension · doi:10.1145/3524610.3527909 · Cited by 116
Self-citationATOM: Commit Message Generation Based on Abstract Syntax Tree and Hybrid Ranking
Liu, S., Gao, C., Chen, S., Nie, L. Y., & Liu, Y. (2022) · IEEE Transactions on Software Engineering · doi:10.1109/tse.2020.3038681 · Cited by 93
CCT5: A Code-Change-Oriented Pre-trained Model
Lin, B., Wang, S., Liu, Z., Liu, Y., Xia, X., & Mao, X. (2023) · Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering · doi:10.1145/3611643.3616339 · Cited by 69
Retrieve and refine: exemplar-based neural comment generation
Wei, B., Li, Y., Li, G., Xia, X., & Jin, Z. (2020) · Proceedings of the 35th IEEE/ACM International Conference on Automated Software Engineering · doi:10.1145/3324884.3416578 · Cited by 69
FIRA: fi ne-grained g ra ph-based code change representation for automated commit message generation
Dong, J., Lou, Y., Zhu, Q., Sun, Z., Li, Z., Zhang, W., & Hao, D. (2022) · Proceedings of the 44th International Conference on Software Engineering · doi:10.1145/3510003.3510069 · Cited by 61
Distilled GPT for source code summarization
Su, C.-Y., & McMillan, C. (2024) · Automated Software Engineering · doi:10.1007/s10515-024-00421-4 · Cited by 49
Self-citationRACE: Retrieval-augmented Commit Message Generation
Shi, E., Wang, Y., Tao, W., Du, L., Zhang, H., Han, S., Zhang, D., & Sun, H. (2022) · Proceedings of the 2022 Conference on Empirical Methods in Natural Language Processing · doi:10.18653/v1/2022.emnlp-main.372 · Cited by 42
Diet code is healthy: simplifying programs for pre-trained models of code
Zhang, Z., Zhang, H., Shen, B., & Gu, X. (2022) · Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering · doi:10.1145/3540250.3549094 · Cited by 41
Exploring the Capabilities of LLMs for Code-Change-Related Tasks
Fan, L., Liu, J., Liu, Z., Lo, D., Xia, X., & Li, S. (2025) · ACM Transactions on Software Engineering and Methodology · doi:10.1145/3709358 · Cited by 41
“To mitigate this threat, we design specific selection criteria for model choice, as demonstrated in Section 2.2.”
InfluentialUnveiling ChatGPT’s usage in open source projects: A mining-based study
Tufano, R., Mastropaolo, A., Pepe, F., Dabic, O., Di Penta, M., & Bavota, G. (2024) · Proceedings of the 21st International Conference on Mining Software Repositories · doi:10.1145/3643991.3644918 · Cited by 38
Correlating Automated and Human Evaluation of Code Documentation Generation Quality
Hu, X., Chen, Q., Wang, H., Xia, X., Lo, D., & Zimmermann, T. (2022) · ACM Transactions on Software Engineering and Methodology · doi:10.1145/3502853 · Cited by 33
Revise and Resubmit: An Intertextual Model of Text-based Collaboration in Peer Review
Kuznetsov, I., Buchmann, J., Eichler, M., & Gurevych, I. (2022) · Computational Linguistics · doi:10.1162/coli_a_00455 · Cited by 17
Evaluating commit message generation: to BLEU or not to BLEU?
Dey, S., Vinayakarao, V., Gupta, M., & Dechu, S. (2022) · Proceedings of the ACM/IEEE 44th International Conference on Software Engineering: New Ideas and Emerging Results · doi:10.1145/3510455.3512790 · Cited by 9
Metadata
- Authors
- Jiang, S., Armaly, A., & McMillan, C.
- Venue
- 2017 32nd IEEE/ACM International Conference on Automated Software Engineering (ASE)
- Publisher
- IEEE
- Published
- 2017-10
- Pages
- 135-146
- OpenAlex
- W2964322208
- Cited by
- 255
- References
- 10
- FWCI
- 14.82
- Type
- conference paper
- Language
- en
- Open access
- green
About these checks
Registry, retraction, Cites and statistics results are computed, not judged, with one exception: a printed reference that no index lists is read once by a model before it counts as a citation error. Claims are extracted by a model and kept only when their quote appears verbatim in the text; each cited source is then checked, with a model’s help, for whether it says what the claim relies on. Those verdicts can be wrong — read the claim’s quote and the cited source before relying on one.
Statistics and arithmetic are recomputed, not judged.
Confidence bands are shown only for fields calibrated on our annotated test set. None is calibrated yet, so no band is shown.
What counts as a claim ›How we measure confidence ›How we check this ›
Are you an author, or do you see a problem with this page? Request a review
Data sources
Bibliographic data: Semantic Scholar, OpenAlex, Crossref.
Contains information from the Semantic Scholar Academic Graph Datasets, made available under the ODC Attribution License (ODC-BY 1.0).
Semantic Scholar’s data is described in: Kinney, R., et al. (2023). The Semantic Scholar Open Data Platform. arXiv:2301.10140.