惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
Visual Studio Blog
C
Cisco Blogs
Help Net Security
Help Net Security
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Scott Helme
Scott Helme
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
M
MIT News - Artificial intelligence
L
LINUX DO - 热门话题
I
InfoQ
GbyAI
GbyAI
NISL@THU
NISL@THU
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
Engineering at Meta
Engineering at Meta
H
Hackread – Cybersecurity News, Data Breaches, AI and More
TaoSecurity Blog
TaoSecurity Blog
Simon Willison's Weblog
Simon Willison's Weblog
A
About on SuperTechFans
Spread Privacy
Spread Privacy
月光博客
月光博客
W
WeLiveSecurity
AWS News Blog
AWS News Blog
云风的 BLOG
云风的 BLOG
有赞技术团队
有赞技术团队
Security Latest
Security Latest
人人都是产品经理
人人都是产品经理
PCI Perspectives
PCI Perspectives
Recent Commits to openclaw:main
Recent Commits to openclaw:main
Microsoft Azure Blog
Microsoft Azure Blog
Hugging Face - Blog
Hugging Face - Blog
S
SegmentFault 最新的问题
T
Troy Hunt's Blog
Martin Fowler
Martin Fowler
The Hacker News
The Hacker News
T
Tor Project blog
C
CERT Recently Published Vulnerability Notes
Apple Machine Learning Research
Apple Machine Learning Research
Stack Overflow Blog
Stack Overflow Blog
K
Kaspersky official blog
Cloudbric
Cloudbric
H
Help Net Security
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
C
Cybersecurity and Infrastructure Security Agency CISA
T
Tailwind CSS Blog
D
DataBreaches.Net
Security Archives - TechRepublic
Security Archives - TechRepublic
T
Tenable Blog
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
博客园 - Franky
L
LINUX DO - 最新话题
MyScale Blog
MyScale Blog

Dreamwings

当表达细节成为 FP4 新瓶颈时,我们是否仍要坚守 E2M1? – Dreamwings 聊一聊我们最近开源的 Ling 2.0 原生 FP8 混合精度训练 – Dreamwings 师兄师姐说,给校招新人的建议 – Dreamwings 《燃烧吧!天才程序员》第三季已全网上线! – Dreamwings 写给新入学的你们(研究生篇) – Dreamwings 给师弟师妹们的一次经验分享 – Dreamwings 验证 log4j2 漏洞(JNDI 注入 CVE-2021-44228) – Dreamwings 字节安全 AI 挑战赛 – 色导用户识别 – ECNU_ICA – Dreamwings ST-GNN 一类时空图神经网络 – Dreamwings xgboost 目标函数中的泰勒展开式 – Dreamwings 推荐系统之 trade-off – Dreamwings
【论文分享】图上做伪标签生成缓解推荐冷启动 – Dreamwings
@ 千千 · 2022-03-16 · via Dreamwings

论文标题:Alleviating Cold-Start Problems in Recommendation through Pseudo-Labelling over Knowledge Graph

发表会议:WSDM 2021

论文链接:https://arxiv.org/pdf/2011.05061.pdf

要解决的问题

本文聚焦于缓解推荐中的冷启动问题。

试想一下,在推荐场景中,当客户想要投放新广告时,由于该广告从未被曝光过,导致召回阶段便可能排除了它,就不用再说后面粗排精排或者重排了。

一句话描述

作者针对冷启动问题,基于观测数据(user-item 交互)建图,然后从已观测 item 集合出发探索未观测的 item,伪样本采样正比于观测集合到未观测 item 的可达路径数,负样本采样正比于该 item 与 user 的交互次数,最后基于 co-training 的思想训练模型,输出为 (user, item, label) 这样的样本。

具体解法

定义

  • user 集合:$\mathcal{U}$
  • item 集合:$\mathcal{I}$
  • $u$ 可观测到的 item 集合:$\mathcal{I}^{+}_u$
  • $u$ 不可观测到的 item 集合:$\mathcal{I} \backslash \mathcal{I}^{+}_u$
  • 正样本集:$\mathcal{I}^{+}_u$
  • 负样本集:$\mathcal{I}^{-}_u$
  • 伪样本集:$\mathcal{I}^{±}_u$

知识感知图神经网络

这部分作者使用 GNN(架构接近于 KGNN-LS)主要考虑节点特征可以在图上进行交互,以达到更好的伪标签生成效果。感觉也不是本文重点,想要了解的同学可以点进原文看一看。

基于伪标签的半监督学习

在推荐场景中,一个用户所能覆盖到的 item 量是非常少的,但未被覆盖的 item 并不能说它针对该用户一定是负样本。因此可以使模型去预测未被观测样本的 label,以此来缓解正样本稀疏的问题。

作者将数据拆为正样本、负样本与伪样本,正负样本的标签已然明了,需要模型去做的便是预测伪样本的标签,它可以暗指 item 与 user 之间产生交互的概率。

image.png

损失函数

实际就是正样本越靠近 1、负样本越靠近 0、伪样本越靠近伪标签。

image.png

基于知识图谱的流行度采样

伪标签采样

在这一步中,作者使用 user-item 之间的观测数据建图,然后基于 h-hop BFS 检索正例集合以外的点,随后通过以下公式采样伪标签:

image.png

其中 $n_{u,i±}^a$ 代表针对 $u$ 有多少个正例可以在 $h$ 跳内与伪样本 $i±$ 可达,若已观测 item(正例)与未观测 item 间的可达路径数越多,则该样本的采样概率越大。

其中 $a$ 是一个可以控制采样分布偏向(skewness)的超参数,若 $a$ 越小,则采样越偏向于均匀分布。

负样本采样

作者考虑到冷启动的 item 本身相比于流行的 item,其更容易被采样为负样本。这一偏差会影响模型的效果,因此使用下式根据 item 的流行度抑制其被采样概率。即,越冷门的 item 越不容易被采样为负样本。

image.png

其中 $m^{b}_{u,i_-}$ 代表 $i_-$ 与 $u$ 的交互次数,而 $b$ 用于控制频次的重要程度(和伪标签采样中的 $a$ 相似)。

mini-batch 构造策略

伪代码如下,生成的样本中(正例、负例、伪标签)是均匀的。

image.png

co-training

在模型本身生成的伪标签上训练自己会让优化变得不稳定,因此作者同时训练了两个模型 $f$ 与 $g$ ,其中每个模型使用的伪标签都是由对方产生。逐步迭代,从而提高模型的鲁棒性。

训练过程

  1. 采样两个 mini-batch $B_f, B_g$,其伪标签分别由模型 $f, g$ 预测得到。
  2. 将 $B_f$ 输入 $g$ 训练,将 $B_g$ 输入 $f$ 训练。

多轮迭代完毕后,使用 $f$ 作为伪标签的生成模型。(这里想用 $f、g$ 的平均或 ensemble 等方式也都行)

损失函数

image.png

实验

作者在三个开源数据集 Movielens 1M、Last.FM、BookCrossing 中对比了一些基于 KG 的推荐算法。

img

实验中模型的效果也是挺不错的。

img

参考链接