Is deep learning better than traditional approaches in tag recommendation for software information sites?

Is deep learning better than traditional approaches in tag recommendation for software information sites?
复制标题

在软件信息网站的标签推荐方面,深度学习是否比传统方法更好?

DOI:
10.1016/j.infsof.2019.01.002
复制
发表时间:
2019
影响因子:
3.9
通讯作者:
Grundy John
Grundy John
中科院分区:
计算机科学2区
文献类型:
--
作者:
Zhou Pingyi;Liu Jin;Liu Xiao;Yang Zijiang;Grundy John

文献摘要

被引文献

相似文献

受深度学习在其他领域成功的启发,这种新技术最近在应用于软件工程中的各种数据分析问题方面引起了广泛的兴趣。许多深度学习模型,如 CNN、DBN、RNN、LSTM 和 GAN,已被提出并最近应用于软件工程任务,包括工作量估计、漏洞分析、代码克隆检测、测试用例选择、需求分析等。然而,有一种观点认为,如果深度学习能够应用于软件工程数据分析问题,那么它就是“银弹”。这促使我们提出这样的问题:在软件信息网站的标签推荐任务中,深度学习是否比传统方法更好。方法在本文中,我们通过在软件信息网站的标签推荐任务中应用最新的深度学习方法和一些传统方法来测试这个问题。这是一个典型的软件工程自动化问题,需要进行密集的数据处理来链接不同的信息以帮助开发人员。实现了四种不同的深度学习方法(TagCNN、TagRNN、TagHAN 和 TagRCNN),并与三种先进的传统方法(EnTagRec、TagMulRec 和 FastTagRec)进行了比较。结果我们的综合实验结果表明,这些不同深度学习方法的性能差异很大。在标签推荐任务中,TagRNN 和 TagHAN 方法的性能比传统方法差。 TagCNN和TagRCNN方法在标签推荐任务中的性能优于传统方法。结论因此,在软件信息网站的标签推荐任务中,使用适当的深度学习方法确实可以取得比传统方法更好的性能。
ContextInspired by the success of deep learning in other domains, this new technique been gaining widespread recent interest in being applied to diverse data analysis problems in software engineering. Many deep learning models, such as CNN, DBN, RNN, LSTM and GAN, have been proposed and recently applied to software engineering tasks including effort estimation, vulnerability analysis, code clone detection, test case selection, requirements analysis and many others. However, there is a perception that applying deep learning is a ”silver bullet” if it can be applied to a software engineering data analysis problem.ObjectThis motivated us to ask the question as to whether deep learning is better than traditional approaches in tag recommendation task for software information sites.MethodIn this paper we test this question by applying both the latest deep learning approaches and some traditional approaches on tag recommendation task for software information sites. This is a typical Software Engineering automation problem where intensive data processing is required to link disparate information to assist developers. Four different deep learning approaches – TagCNN, TagRNN, TagHAN and TagRCNN – are implemented and compared with three advanced traditional approaches – EnTagRec, TagMulRec, and FastTagRec.ResultsOur comprehensive experimental results show that the performance of these different deep learning approaches varies significantly. The performance of TagRNN and TagHAN approaches are worse than traditional approaches in tag recommendation tasks. The performance of TagCNN and TagRCNN approaches are better than traditional approaches in tag recommendation tasks.ConclusionTherefore, using appropriate deep learning approaches can indeed achieve better performance than traditional approaches in tag recommendation tasks for software information sites.