Three-level learning for improving cross-project logging prediction for if-blocks

Journal of King Saud University - Computer and Information Sciences(2019)

引用 6|浏览4
暂无评分
摘要
Log statements present in the source code provide important execution information to the software developers while debugging. Predicting source code constructs that must be logged is a technically challenging task. Machine learning models are popularly used in literature for logging prediction. These models may not be suitable for small or new projects as these projects do not have sufficient prior data to train the prediction model. For such scenarios, cross-project logging prediction can be useful, in which knowledge gained from the standard project(s) is used to build the model. This paper proposes a three-level model, CLIF, for Cross-project if-blocks logging prediction. CLIF first converts textual features into numeric-textual features(Level-1). CLIF then combines numeric-textual features with Boolean and numeric features(Level-2). Since only few code constructs are logged, CLIF finally learns an effective imbalance decision threshold boundary to predict logged/non-logged code constructs(Level-3). We use 2 text mining classifiers(Level-1) and 8 machine learning classifiers(Level-2) and generate a total of 16 CLIF classifiers. We evaluate performance of CLIF classifiers on three open source projects(six source & target project pair). Experimental results show that CLIF outperforms the existing LogOpt-Plus model and give an improvement of up to 8.21% in average F1-score, and 4.89% in average ROC-AUC.
更多
查看译文
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要