19 lines
3.1 KiB
Markdown
19 lines
3.1 KiB
Markdown
tags:: [[⛔ No INSPIRE recid found]], [[#zotero]]
|
||
title:: @02-23-TOSEM-2024-0012.pdf
|
||
item-type:: [[document]]
|
||
original-title:: 02-23-TOSEM-2024-0012.pdf
|
||
links:: [Local library](zotero://select/library/items/BCYRLKCX), [Web library](https://www.zotero.org/users/1039502/items/BCYRLKCX)
|
||
|
||
-
|
||
- ### Attachments
|
||
- [02-23-TOSEM-2024-0012.pdf](zotero://select/library/items/I879APBF) {{zotero-imported-file I879APBF, "02-23-TOSEM-2024-0012.pdf"}}
|
||
- ### Notes
|
||
- * *
|
||
- # Annotazioni
|
||
(6/4/2024, 01:00:37)
|
||
- “In this paper, we propose DDASR, a framework for recommending API sequences containing both popular and tail APIs.” (“02-23-TOSEM-2024-0012.pdf”, p. 3) #00b036
|
||
- this is related to #bias *
|
||
- “DDASR clusters tail APIs with similar functionality and replaces them with cluster centers to produce a pseudo ground truth. Moreover,” (“02-23-TOSEM-2024-0012.pdf”, p. 3) #f0ff00
|
||
*this is not clear*
|
||
- “rReview53545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031042 Nan et al.API sequence:① Robot.init ② Robot.mousePress ③ Robot.mouseRelease ④ Robot.mouseWheelCode snippet: public class MouseActionsExample { public static void main(String[] args) { Robot robot = new Robot(); robot.mousePress(InputEvent.BUTTON1_MASK); robot.mouseRelease(InputEvent.BUTTON1_MASK); robot.mouseWheel(3);}}Query: Simulate mouse wheel scrolling to control the scrolling of a webpage.Fig. 1. An example query that needs to be addressed using an API sequence in Java.Moreover, fulfilling user requirements often necessitates more than just a single API. Developers typically need to look up API sequences to solve tasks. For instance, to address a query like ‘simulating mouse wheel scrolling to control the scrolling of a webpage,’ as shown in Fig. 1, a sequence of four APIs, including ‘Robot.init,’ ‘Robot.mousePress,’ ‘Robot.mouseRelease,’ and ‘Robot.mouseWheel,’ needs to be invoked. It is a challenging problem to find appropriate API sequences from the vast array of APIs according to developer requirements [50]. Recently, several approaches have been proposed to recommend APIs for developers. These approaches fall into two major categories: information retrieval-based approaches [24, 48, 62] that search for the most relevant solutions from the historical question repository, and deep learning-based approaches [12, 19, 40] that adopt the sequence-to-sequence (Seq2Seq) model to recommend API sequences generatively. Gu et al. [19] adopt an RNN encoder-decoder and Elnaggar et al. [12] adopt a Transformer encoder-decoder to obtain the results of the API sequence. Martin and Guo [40] apply CodeBERT [14] for the task due to the improved performance of Large Language Models (LLMs). However, existing API recommendation approaches usually recommend popular APIs, neglecting less frequently used ones. For example, deep learning-based approaches [12, 19, 40] remove infrequently appearing words from the vocabulary or treat them as <UNK> tags, making it challenging to recommend infrequently occurring APIs to developers.” (“02-23-TOSEM-2024-0012.pdf”, p. 4) #00b036
|
||
- |