{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2023,11,10]],"date-time":"2023-11-10T00:19:28Z","timestamp":1699575568430},"reference-count":50,"publisher":"World Scientific Pub Co Pte Ltd","issue":"09","funder":[{"name":"NSFC-Key Project of General Technology Fundamental Research United Fund","award":["U1736211","61933013"]},{"DOI":"10.13039\/501100003453","name":"Natural Science Foundation of Guangdong Province","doi-asserted-by":"crossref","award":["2019A1515011076"],"id":[{"id":"10.13039\/501100003453","id-type":"DOI","asserted-by":"crossref"}]},{"name":"Innovation Group of Guangdong Education Department","award":["2020KCXTD014","2018KCXTD019"]},{"name":"Key Project of Natural Science Foundation of Hubei Province","award":["2018CFA024"]}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Int. J. Soft. Eng. Knowl. Eng."],"published-print":{"date-parts":[[2021,9]]},"abstract":"Application Programming Interface (API) tutorial is an important API learning resource. To help developers learn APIs, an API tutorial is often split into a number of consecutive units that describe the same topic (i.e. tutorial fragment). We regard a tutorial fragment explaining an API as a relevant fragment of the API. Automatically recommending relevant tutorial fragments can help developers learn how to use an API. However, existing approaches often employ supervised or unsupervised manner to recommend relevant fragments, which suffers from much manual annotation effort or inaccurate recommended results. Furthermore, these approaches only support developers to input exact API names. In practice, developers often do not know which APIs to use so that they are more likely to use natural language to describe API-related questions. In this paper, we propose a novel approach, called Tutorial Fragment Recommendation (TuFraRec), to effectively recommend relevant tutorial fragments for API-related natural language questions, without much manual annotation effort. For an API tutorial, we split it into fragments and extract APIs from each fragment to build API-fragment pairs. Given a question, TuFraRec first generates several clarification APIs that are related to the question. We use clarification APIs and API-fragment pairs to construct candidate API-fragment pairs. Then, we design a semi-supervised metric learning (SML)-based model to find relevant API-fragment pairs from the candidate list, which can work well with a few labeled API-fragment pairs and a large number of unlabeled API-fragment pairs. In this way, the manual effort for labeling the relevance of API-fragment pairs can be reduced. Finally, we sort and recommend relevant API-fragment pairs based on the recommended strategy. We evaluate TuFraRec on 200 API-related natural language questions and two public tutorial datasets (Java and Android). The results demonstrate that on average TuFraRec improves NDCG@5 by 0.06 and 0.09, and improves Mean Reciprocal Rank (MRR) by 0.07 and 0.09 on two tutorial datasets as compared with the state-of-the-art approach.<\/jats:p>","DOI":"10.1142\/s0218194021500406","type":"journal-article","created":{"date-parts":[[2021,10,3]],"date-time":"2021-10-03T11:39:21Z","timestamp":1633261161000},"page":"1251-1275","source":"Crossref","is-referenced-by-count":0,"title":["Recommending Relevant Tutorial Fragments for API-Related Natural Language Questions"],"prefix":"10.1142","volume":"31","author":[{"given":"Di","family":"Wu","sequence":"first","affiliation":[{"name":"School of Computer, Wuhan University, Wuhan, P. R. China"}]},{"given":"Xiao-Yuan","family":"Jing","sequence":"additional","affiliation":[{"name":"School of Computer, Wuhan University, Wuhan, P. R. China"},{"name":"School of Computer, Guangdong University of Petrochemical Technology, Maoming, P. R. China"},{"name":"State Key Laboratory for Novel Software Technology, Nanjing University, Nanjing, P. R. China"}]},{"given":"Haowen","family":"Chen","sequence":"additional","affiliation":[{"name":"School of Computer, Wuhan University, Wuhan, P. R. China"}]},{"given":"Xiaohui","family":"Kong","sequence":"additional","affiliation":[{"name":"School of Computer, Wuhan University, Wuhan, P. R. China"}]},{"given":"Jifeng","family":"Xuan","sequence":"additional","affiliation":[{"name":"School of Computer, Wuhan University, Wuhan, P. R. China"}]}],"member":"219","published-online":{"date-parts":[[2021,10,3]]},"reference":[{"key":"S0218194021500406BIB001","doi-asserted-by":"publisher","DOI":"10.1109\/MS.2009.193"},{"key":"S0218194021500406BIB002","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-010-9150-8"},{"key":"S0218194021500406BIB003","first-page":"1","author":"Zhang N.","year":"2020","journal-title":"IEEE Trans. Softw. Eng."},{"key":"S0218194021500406BIB004","doi-asserted-by":"publisher","DOI":"10.1145\/2568225.2568313"},{"key":"S0218194021500406BIB005","doi-asserted-by":"publisher","DOI":"10.1145\/2970276.2970357"},{"key":"S0218194021500406BIB006","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2019.00066"},{"key":"S0218194021500406BIB007","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2019.00049"},{"key":"S0218194021500406BIB008","doi-asserted-by":"publisher","DOI":"10.1145\/3183440.3194965"},{"issue":"5","key":"S0218194021500406BIB009","doi-asserted-by":"crossref","first-page":"e1369","DOI":"10.1002\/widm.1369","volume":"10","author":"Wu D.","year":"2020","journal-title":"WIREs Data Min. Knowl. Discov."},{"key":"S0218194021500406BIB010","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2015.97"},{"key":"S0218194021500406BIB011","doi-asserted-by":"publisher","DOI":"10.1109\/SANER.2016.59"},{"key":"S0218194021500406BIB012","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2017.12"},{"key":"S0218194021500406BIB013","doi-asserted-by":"publisher","DOI":"10.1145\/3238147.3238191"},{"key":"S0218194021500406BIB014","doi-asserted-by":"publisher","DOI":"10.1145\/3392093"},{"key":"S0218194021500406BIB015","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2017.2779479"},{"key":"S0218194021500406BIB016","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2014.2387172"},{"key":"S0218194021500406BIB017","doi-asserted-by":"publisher","DOI":"10.1145\/3236024.3236036"},{"key":"S0218194021500406BIB018","doi-asserted-by":"publisher","DOI":"10.1109\/TSC.2018.2812729"},{"key":"S0218194021500406BIB019","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-014-9323-y"},{"key":"S0218194021500406BIB020","doi-asserted-by":"publisher","DOI":"10.1109\/ASE.2017.8115625"},{"key":"S0218194021500406BIB021","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2018.2876006"},{"key":"S0218194021500406BIB022","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2017.2780222"},{"key":"S0218194021500406BIB023","doi-asserted-by":"publisher","DOI":"10.1109\/ASE.2009.94"},{"key":"S0218194021500406BIB024","doi-asserted-by":"publisher","DOI":"10.1145\/3180155.3180167"},{"key":"S0218194021500406BIB025","doi-asserted-by":"publisher","DOI":"10.1109\/ASE.2015.42"},{"key":"S0218194021500406BIB026","first-page":"3111","volume-title":"Annual Conf. Neural Information Processing Systems","author":"Mikolov T.","year":"2013"},{"key":"S0218194021500406BIB027","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2017.47"},{"key":"S0218194021500406BIB028","first-page":"1217","volume-title":"Int. Joint Conf. Artificial Intelligence","author":"Baghshah M. S.","year":"2009"},{"key":"S0218194021500406BIB029","doi-asserted-by":"publisher","DOI":"10.1109\/ICCV.2007.4408856"},{"key":"S0218194021500406BIB030","doi-asserted-by":"publisher","DOI":"10.1049\/iet-sen.2017.0148"},{"key":"S0218194021500406BIB031","doi-asserted-by":"publisher","DOI":"10.1109\/TPAMI.2020.2973634"},{"key":"S0218194021500406BIB032","first-page":"200","volume-title":"Proc. 16th Int. Conf. Machine Learning","volume":"99","author":"Joachims T.","year":"1999"},{"key":"S0218194021500406BIB033","doi-asserted-by":"publisher","DOI":"10.1007\/s10515-019-00259-1"},{"key":"S0218194021500406BIB034","first-page":"1","author":"Chen H.","year":"2020","journal-title":"IEEE Trans. Softw. Eng."},{"key":"S0218194021500406BIB035","first-page":"1871","volume":"9","author":"Fan R.","year":"2008","journal-title":"J. Mach. Learn. Res."},{"key":"S0218194021500406BIB036","doi-asserted-by":"publisher","DOI":"10.1145\/2884781.2884862"},{"key":"S0218194021500406BIB037","first-page":"46","volume-title":"Proc. LREC 2010 Workshop on New Challenges for NLP Frameworks","author":"Rehurek R.","year":"2010"},{"key":"S0218194021500406BIB038","doi-asserted-by":"publisher","DOI":"10.1017\/CBO9780511809071"},{"key":"S0218194021500406BIB039","first-page":"77","volume-title":"Proc. Text REtrieval Conf.","volume":"99","author":"Voorhees E. M.","year":"1999"},{"key":"S0218194021500406BIB040","doi-asserted-by":"publisher","DOI":"10.1145\/1645953.1646033"},{"key":"S0218194021500406BIB041","doi-asserted-by":"publisher","DOI":"10.1145\/1806799.1806868"},{"key":"S0218194021500406BIB042","doi-asserted-by":"publisher","DOI":"10.2307\/3001968"},{"key":"S0218194021500406BIB043","doi-asserted-by":"publisher","DOI":"10.4324\/9781315806730"},{"key":"S0218194021500406BIB044","doi-asserted-by":"publisher","DOI":"10.1109\/TPAMI.2019.2929166"},{"issue":"1","key":"S0218194021500406BIB045","first-page":"61","volume-title":"IJCAI-99 Workshop on Machine Learning for Information Filtering","volume":"1","author":"Nigam K.","year":"1999"},{"key":"S0218194021500406BIB046","first-page":"35","volume-title":"Int. Conf. Software Analysis, Evolution and Reengineering","author":"Wu D.","year":"2021"},{"key":"S0218194021500406BIB047","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-021-09962-8"},{"key":"S0218194021500406BIB048","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2017.2750682"},{"key":"S0218194021500406BIB049","doi-asserted-by":"publisher","DOI":"10.1177\/001316446002000104"},{"key":"S0218194021500406BIB050","doi-asserted-by":"publisher","DOI":"10.1109\/ASE.2017.8115681"}],"container-title":["International Journal of Software Engineering and Knowledge Engineering"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.worldscientific.com\/doi\/pdf\/10.1142\/S0218194021500406","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,11,9]],"date-time":"2023-11-09T22:33:57Z","timestamp":1699569237000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.worldscientific.com\/doi\/abs\/10.1142\/S0218194021500406"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2021,9]]},"references-count":50,"journal-issue":{"issue":"09","published-print":{"date-parts":[[2021,9]]}},"alternative-id":["10.1142\/S0218194021500406"],"URL":"https:\/\/doi.org\/10.1142\/s0218194021500406","relation":{},"ISSN":["0218-1940","1793-6403"],"issn-type":[{"value":"0218-1940","type":"print"},{"value":"1793-6403","type":"electronic"}],"subject":[],"published":{"date-parts":[[2021,9]]}}}