首页 | 本学科首页   官方微博 | 高级检索  
     

基于多开发者社区的用户推荐算法
引用本文:时宇岑,印莹,赵宇海,张斌,王国仁.基于多开发者社区的用户推荐算法[J].软件学报,2019,30(5):1561-1574.
作者姓名:时宇岑  印莹  赵宇海  张斌  王国仁
作者单位:东北大学 计算机科学与工程学院, 辽宁 沈阳 110169,东北大学 计算机科学与工程学院, 辽宁 沈阳 110169,东北大学 计算机科学与工程学院, 辽宁 沈阳 110169,东北大学 计算机科学与工程学院, 辽宁 沈阳 110169,北京理工大学 计算机学院, 北京 100081
基金项目:国家重点研发计划(2018YFB1004402);国家自然科学基金(61772124,61872072)
摘    要:随着互联网技术的迅猛发展,基于开发者社区的提问-回答经验交流方式已成为众多开发人员解决软件开发、维护过程中所遇问题的重要手段之一.如何为开发者社区中的提问者及时、准确地推荐问题回答者,是具有实际需求的重要问题.通过对Stack Overflow和Github两个具有代表性的主流开发者社区相关数据的收集和分析,观察到影响上述问题推荐准确性和反馈及时性的3个现象:(1)用户标签自定现象,即开发者社区中,用户的标签信息是由用户自己主观定义所得,而非系统根据用户的历史行为客观标定;(2)不对称活跃现象,即用户可能在某个或某些开发者社区中活跃,但在其他社区中并不具有同等活跃程度,甚至不活跃;(3)关键词集封闭现象,即开发者社区中的问题回答者推荐仅依据问题文本中的关键词,而未考虑其他语义相关的关键词.针对以上问题,融合开发者社区的用户信息,通过分析用户与用户之间的互动行为,建立跨社区的开发者网络,并提出一种基于重启随机游走的算法更新用户标签.进一步地,通过使用Taxonomy来扩充问题的查询关键词范围,在此基础上,协同用户矩阵进行更加准确的推荐,并增大了推荐时有效用户的范围.收集的实验数据包括170万个有效主题、累计40万用户以及117个标签.实验结果证实,所提出的算法具有较好的F-measure和NDCG度量.特别是在冷门标签的推荐中,与未采用该方法的推荐算法相比,基于NDCG度量的推荐准确率至少可提高2倍,部分甚至可高达4倍.

关 键 词:多开发者社区  重启随机游走  Taxonomy  协同过滤  推荐系统
收稿时间:2018/9/1 0:00:00
修稿时间:2018/10/31 0:00:00

User Recommendation Algorithm Based on Multi-developer Community
SHI Yu-Cen,YIN Ying,ZHAO Yu-Hai,ZHANG Bin and WANG Guo-Ren.User Recommendation Algorithm Based on Multi-developer Community[J].Journal of Software,2019,30(5):1561-1574.
Authors:SHI Yu-Cen  YIN Ying  ZHAO Yu-Hai  ZHANG Bin and WANG Guo-Ren
Affiliation:School of Computer Science and Engineering, Northeastern University, Shenyang 110169, China,School of Computer Science and Engineering, Northeastern University, Shenyang 110169, China,School of Computer Science and Engineering, Northeastern University, Shenyang 110169, China,School of Computer Science and Engineering, Northeastern University, Shenyang 110169, China and School of Computer Science and Technology, Beijing Institute of Technology, Beijing 100081, China
Abstract:Internet technology is developing rapidly. The developer community''s question-answering based experience communication method has become one of the important means for many developers to solve problems encountered in software development and maintenance. How to promptly and accurately recommend a question responder to a questioner in the developer community is an important issue with practical needs. Through the collection and analysis of the data of two representative mainstream developers in Stack Overflow and Github, three phenomena are observed that affect the timeliness and accuracy of the above recommended questions:(1) User label customization phenomenon. In the developer community, the user''s tag information is subjectively defined by the user, rather than the system is objectively calibrated according to the user''s historical behavior; (2) Asymmetric activity. The user may be active in one or some developer communities, however, it is not equally active or even inactive in other communities; (3) Keyword set closure phenomenon. That is the question answerer in the developer community recommends only based on the keywords in the question text, but does not consider other semantic related key words. In view of the above problems, the user information of the developer community is integrated, the interaction between users and users is analyzed, a cross-community developer network is established, and an algorithm based on restart random walk is proposed to update user tags. Further, by using Taxonomy to expand the query keyword range of the problem, on the basis of this, the user matrix is more accurately recommended, and the range of effective users at the time of recommendation is increased. Finally, the experimental results of F-measure and NDCG are good, which can effectively improve the efficiency and accuracy of problem recommendation.
Keywords:multi-developer community  restart random walk  Taxonomy  collaborative filtering  recommendation system
点击此处可从《软件学报》浏览原始摘要信息
点击此处可从《软件学报》下载全文
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号