As stated in the paper, we filtered 72 relevant repositories (i.e., 1 official TensorFlow.js repository, 13 3rd-party DL library using TensorFlow.js, 58 DL applications based TensorFlow.js) from 924 candidate repositories collected from GitHub. Then we initially crawl 3,859 issues from these repositories, and we excluded the issues that have no answers or response and older issues. Moreover, we leveraged a vocabulary containing 147 relevant keywords to filtered TensorFlow.js related issues and manually filtered out issues with unclear descriptions. We finally obtain 684 issues, of which 359, 291, 34 from TensorFlow.js framework, 3rd-party DL libraries and Web applications. Finally, we identify 700 faults from 684 issues collected, of which 16 issues contain 2 faults.
For issues from 3rd-party DL libraries and web applications, we adopt the similar filtering strategies used in previous work to clean the DL irrelevant issues. Specifically, in previous work, a vocabulary of relevant words (e.g., “epoch”, “layer”) related to native DL frameworks (e.g., TensorFlow) are defined, and all issues that do not contain any of these words are excluded. Considering the difference between TensorFlow.js and native DL frameworks, we update the vocabulary provided by previous work with TensorFlow.js-specific keywords (e.g., dispose, WebGL). The vocabulary finally contains the following 147 related words.