【打印本页】      【下载PDF全文】   查看/发表评论  下载PDF阅读器  关闭
←前一篇|后一篇→ 过刊浏览    高级检索
本文已被:浏览 5551次   下载 4582 本文二维码信息
码上扫一扫!
基于对抗采样的社交推荐算法
赵煜,郭贵冰,姜琳颖
分享到: 微信 更多
(东北大学软件学院 沈阳 中国 110819)
摘要:
推荐系统利用用户的历史记录、物品的基础信息等数据进行建模来捕获用户的偏好,有效缓解了信息过载等问题,虽然其已应用广泛,但整个推荐领域面临的挑战却依旧存在,其中数据稀疏这一问题对于推荐性能有举足轻重的影响。近年来,大量研究表明基于社交信息的推荐算法能够有效缓解数据稀疏问题,但它们也仍然存在一定的局限。线上的社交网络是非常稀疏的,并且线上社交网络中的“朋友”通常包括同学、同事、亲戚等,因此,拥有显式朋友关系的用户不一定拥有相似的偏好,即直接利用显式朋友的兴趣偏好进行推荐会存在噪声问题。此外,大部分基于隐式反馈的算法通常直接对用户没有交互过的物品进行随机采样,然后将其作为用户实际交互过的物品的负样本来优化模型,然而用户没有交互过的物品并不代表用户不喜欢,这种粗粒度的采样策略忽略了用户的真实偏好,同样也带来了一定程度的噪声。生成对抗网络(GANs)因其在训练中捕获复杂数据分布的能力以及强大的鲁棒性被广泛应用到推荐系统中,为了减弱上述噪声问题带来的影响,本文基于生成对抗网络提出了一种细粒度的对抗采样推荐模型(ASGAN),包括一个生成器和判别器。其中,生成器首先利用图表示学习技术初始化社交网络,接着为用户生成一个与其偏好相似的朋友,然后再从该朋友喜欢的物品集中同时生成该用户喜欢的物品和用户不喜欢的物品。判别器则尽可能区分出用户实际交互过的物品和生成器生成的两类物品。随着对抗训练的进行,生成器能更有效地进行社交朋友采样和物品采样,而判别器能够良好地捕获用户的真实偏好分布。最后,在三个公开的真实数据集上与现有的六个工作进行对比,实验结果证明:ASGAN拥有更好的推荐性能,通过重构社交网络和细粒度采样有效缓解了社交信息和物品采样策略带来的噪声问题。
关键词:  社交推荐  生成对抗网络  负采样
DOI:10.19363/J.cnki.cn10-1380/tn.2021.09.07
投稿时间:2021-04-29修订日期:2021-08-07
基金项目:本课题得国家自然科学基金面上项目(No.61972078),以及中央高校基本科研业务专项资金资助(No.N181705007)的支持。
Adversarial Sampling for Social Recommender
ZHAO Yu,GUO Guibing,JIANG Linying
School of Software, University of Northeastern, Shenyang 110819, China
Abstract:
The recommendation system uses the user's historical records, basic information of items and other datas to capture the user's preferences, effectively alleviating the problem of information overload. Although the recommendation technology has been widely used, the dilemma in the recommendation tasks still exist. Among them, the problem of data sparsity has a significant impact on the recommendation performance. In recent years, a large number of studies have shown that the recommendation algorithm using social information can effectively relieve data sparsity, yet they still suffer from some limitations. Online social networks are very sparse, and social friends usually include classmates, colleagues, relatives and so on. Therefore, the users who have explicit friends relationship may not have similar preferences. That is, directly using explicit social ties for recommendation will result in some noise problems. In addition, most algorithms based on implicit feedback usually sample items which users have not interacted with, and then treat those items as negative samples for items that the users really like, so that optimizing the model. However, the items that the users had no interaction with do not represent the users dislike them, so this coarse-grained sampling schema ignores the real preferences of users, and also brings a certain amount of noise. Given the fact that Generative Adversarial Networks (GANs) have been widely used in recommendation systems because of their strong robustness and capability to capture complex data distribution in the adversarial training process nowadays, this paper tries our best to propose a fine-grained adversarial sampling recommendation model (ASGAN) based on generative adversarial network to alleviate the influence of the noises, including a generator and a discriminator. The generator first initializes the social network using a special graph embedding technique, and generates a friend with similar preferences for the user, then simultaneously generates an item the user likes and an item the user dislikes from the items the friend likes. And the discriminator tries to distinguish the item the user actually interacted with and the two items generated by the generator. With the adversarial training, the generator can be more efficient for social friend sampling and item sampling, and the discriminator can capture the real preferences distribution of users well. Finally, compared with six existing works on the three real-world datasets, the experimental results show that ASGAN has better recommendation performance and effectively alleviates the influence of noises caused by social information and item sampling schema through the reconstruction of social networks and the fine-grained sampling schema.
Key words:  social recommendation  generative adversarial nets  negative samping