对话推荐系统论文笔记
##1, 2019 EMNLP Towards Knowledge-Based Recommender Dialog System
本文由清华大学和阿里巴巴发表,介绍了了一种基于知识图谱的对话推荐系统,该系统将对话系统和推荐系统整合成一个端到端的系统。通过引入用户偏好的背景知识,对话系统可以强化推荐系统。
本文提出的一些观点:
- 一个理想的对话推荐系统是端到端的系统,对话系统和推荐系统可以互补。
- 在冷启动的状态下,系统可以询问用户信息来提取用户的偏好
- transformer比层次RNN编码解码器更好
模型的结构
- 模型利用对话中的内容,包括没有提及到商品的表述(这部分可能会含有用户偏好的信息),利用维基知识图谱连接对话内容与商品。
- 将用户表示为$T_u = {e_1,\dots,e_{|T_u|} } \qquad e_i \in \Large{\varepsilon} $ 商品和非商品实体的集合
- 直觉上,知识图谱中相连接的节点拥有(share)相似的特征。使用R - GCNs1对知识图谱进行编码,经过 L L L层神经网络编码之后,表示为节点的表示矩阵 H ( L ) ∈ R ∣ ε ∣ × d ( L ) H^{(L)} \in \mathbb{R}^{|\varepsilon| \times d^{(L)}} H(L)∈R∣ε∣×d(L)
- 从用户中或者item或者none-item的实体后,可以使用 H U = ( h 1 , … , h ∣ T u ∣ ) H_U = (h_1,\dots,h_{|T_u|}) HU=(h1,…,h∣Tu∣),通过self-attention机制,算得最终的用户表示 t u = α u H u t_u = \alpha_uH_u tu=αuHu,推荐系统的输出是 P r e c = s o f t m a x ( m a s k ( t u H T ) ) P_{rec} = softmax(mask(t_uH^T)) Prec=softmax(mask(tuHT)),mask操作是将其中包含的none-item的实体概率最小化。
- 为了连接对话系统和推荐系统,在对话系统的输出层添加vocabulary bias,出自2 P d i a l o g = s o f t m a x ( W o + b + b u ) P_{dialog} = softmax(Wo+b+b_u) Pdialog=softmax(Wo+b+bu),其中 b u = F : R d → R ∣ V ∣ b_u = F:\mathbb{R}^d \to \mathbb{R}^{|V|} bu=F:Rd→R∣V∣