会议:KDD2018,4篇Best Paper之一
作者:来自Airbnb的Mihajlo Grbovic和Haibin Cheng
关键词:Search Ranking; Personalization; Embedding
这篇工作的基础部分可以认为是word2vec在推荐领域的应用。word2vec对word进行embedding,本文对User与Listing进行embedding。embedding后的向量和word2vec的结果一样,被赋予了意义,能够衡量在空间中的距离。这个空间在word2vec中是语义空间,在本文中可以被看做是用户(User)对产品(Listing)的兴趣空间。
文中的Embedding可以分为两块:
- 短期即时的个性化,Listing embeddings
- 长期个性化,User-type & listing type embeddings
Listing embeddings for short-term real-time personalization and user-type & listing type embeddings for long term personalization.
Listing Embedding
图1表示了一个以Li为中心的点击序列。这部分的基本思路是Skip-gram Model。
Skip-gram Negative Sampling(SGNS)
所需最大化的目标函数为:
m
m
m是选定的中心前后窗口的长度。
P
(
L
j
∣
L
i
)
P(L_j|L_i)
P(Lj∣Li)的公式如下(Softmax):
偏导
∇
P
(
l
j
∣
l
i
)
∇P(l_j|l_i)
∇P(lj∣li)的时间复杂度
O
(
n
)
O(n)
O(n)太高,因此使用负采样的方法来简化。负采样是指把Softmax替换成:
P
(
l
j
∣
l
i
)
=
σ
(
u
i
T
v
j
)
∏
k
=
1
N
σ
(
−
u
i
T
v
k
)
P(l_j|l_i) = \sigma(u_i^{T}v_j)\prod_{k=1}^N \sigma(-u_i^Tv_k)
P(lj∣li)=σ(uiTvj)k=1∏Nσ(−uiTvk)
其中,
σ
(
x
)
=
1
1
+
e
−
x
\sigma(x) = {1\over{1+e^{-x}}}
σ(x)=1+e−x1,
N
N
N决定了在每一个正样本中采多少负样本。因此,公式1所示的目标函数可以被改写为:
作者依据Airbnb的业务特点对公式3做了2点补充,相当于多目标融合策略。所加的两项含义如下:
- 第三项:将Booked List作为global Context(毕竟实际业务不能只看CTR,还要以CVR为导向);
- 第四项:由于
D
n
D_n
Dn和
D
p
D_p
Dp极有包含不同的Listing,故再从Listing
l
l
l的Market中做负采样。
对于冷启动问题采用K近邻的思路解决(K=3)。可以覆盖98%的冷启动样本。
User-type & Listing-type Embeddings
未完待续…