Deep API Learning Revisited

被引:7
|
作者
Martin, James [1 ]
Guo, Jin L. C. [1 ]
机构
[1] McGill Univ, Montreal, PQ, Canada
来源
30TH IEEE/ACM INTERNATIONAL CONFERENCE ON PROGRAM COMPREHENSION (ICPC 2022) | 2022年
基金
加拿大自然科学与工程研究理事会;
关键词
API; deep learning; RNN; RoBERTa; Transformer; API usage;
D O I
10.1145/3524610.3527872
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Understanding the correct API usage sequences is one of the most important tasks for programmers when they work with unfamiliar libraries. However, programmers often encounter obstacles to finding the appropriate information due to either poor quality of API documentation or ineffective query-based searching strategy. To help solve this issue, researchers have proposed various methods to suggest the sequence of APIs given natural language queries representing the information needs from programmers. Among such efforts, Gu et al. adopted a deep learning method, in particular an RNN Encoder-Decoder architecture, to perform this task and obtained promising results on common APIs in Java. In this work, we aim to reproduce their results and apply the same methods for APIs in Python. Additionally, we compare the performance with a more recent Transformer-based method, i.e., CodeBERT, for the same task. Our experiment reveals a clear drop in performance measures when careful data cleaning is performed. Owing to the pretraining from a large number of source code files and effective encoding technique, CodeBERT outperforms the method by Gu et al., to a large extent.
引用
收藏
页码:321 / 330
页数:10
相关论文
共 50 条
  • [1] Deep API Learning Revisited
    Martin, James
    Guo, Jin L.C.
    IEEE International Conference on Program Comprehension, 2022, 2022-March : 321 - 330
  • [2] Deep API Learning
    Gu, Xiaodong
    Zhang, Hongyu
    Zhang, Dongmei
    Kim, Sunghun
    FSE'16: PROCEEDINGS OF THE 2016 24TH ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON FOUNDATIONS OF SOFTWARE ENGINEERING, 2016, : 631 - 642
  • [3] Fastai: A Layered API for Deep Learning
    Howard, Jeremy
    Gugger, Sylvain
    INFORMATION, 2020, 11 (02)
  • [4] Demystifying API misuses in deep learning applications
    Deheng Yang
    Kui Liu
    Yan Lei
    Li Li
    Huan Xie
    Chunyan Liu
    Zhenyu Wang
    Xiaoguang Mao
    Tegawendé F. Bissyandé
    Empirical Software Engineering, 2024, 29
  • [5] Demystifying API misuses in deep learning applications
    Yang, Deheng
    Liu, Kui
    Lei, Yan
    Li, Li
    Xie, Huan
    Liu, Chunyan
    Wang, Zhenyu
    Mao, Xiaoguang
    Bissyande, Tegawende F.
    EMPIRICAL SOFTWARE ENGINEERING, 2024, 29 (02)
  • [6] API Copyrights Revisited
    Samuelson, Pamela
    COMMUNICATIONS OF THE ACM, 2019, 62 (07) : 20 - 22
  • [7] DeepDir: a deep learning approach for API directive detection
    Jingxuan ZHANG
    He JIANG
    Shuai LU
    Ge LI
    Xin CHEN
    ScienceChina(InformationSciences), 2021, 64 (09) : 238 - 240
  • [8] DeepDir: a deep learning approach for API directive detection
    Jingxuan Zhang
    He Jiang
    Shuai Lu
    Ge Li
    Xin Chen
    Science China Information Sciences, 2021, 64
  • [9] DeepDir: a deep learning approach for API directive detection
    Zhang, Jingxuan
    Jiang, He
    Lu, Shuai
    Li, Ge
    Chen, Xin
    SCIENCE CHINA-INFORMATION SCIENCES, 2021, 64 (09)
  • [10] API Misuse Bug Detection Based on Deep Learning
    Wang X.
    Chen C.
    Zhao Y.-F.
    Peng X.
    Zhao W.-Y.
    Ruan Jian Xue Bao/Journal of Software, 2019, 30 (05): : 1342 - 1358