(论文阅读笔记1)Collaborative Metric Learning(一)(WWW2017)

一、摘要

    度量学习算法产生的距离度量捕获数据之间的重要关系。这里,我们将度量学习和协同过滤联系起来,提出了协同度量学习(CML),它可以学习出一个共同的度量空间来编码用户偏好和user-user 和 item-item的相似度。

二、背景

2.1 Metric Learning

     令 χ={x1,x2,,xn} 是空间 Rm 上的一个数据集。
相似对记为:

S={(xi,xj)|xixj}

非相似对记为:
D={(xi,xj)|xixj}

最普通的度量学习方法采用的是马氏距离度量:

dA(xi,xj)=(xixj)TA(xixj)

其中 A 是空间Rm×m上的半正定矩阵。这个式子将输入 x 映射到空间Rm上,且满足一些期望的限制。有很多方法来创建这样一个距离,最常用的方法是全局法,来解决如下凸优化问题:
minA(xi,xj)SdA(xi,xj)2st.(xi,xj)DdA(xi,xj)21andA0

还有其他一些方法,比如非线性转换函数,比如核函数和神经网络,可以提高度量的准确性。

2.2 Metric Learning for kNN

     上边的全局优化本质上式试图学习一种距离:它将相似的放在一起,将不相似的尽量分开。另一方面,如果学习到的度量被用作knn分类,只要保证目标与k个近邻共享一个类标就足够了。
     具体来说,给定一个输入 x ,我们把离x近的数据点作为它的target neighbors。并且假设 x 的target neighbors构建了不同类标之间的边界。不同类标的输入侵入边界被作为importors。这里,学习的目标就是最小化importors的个数。
     一种为人知模型是LMNN,它使用2个损失函数来表达上述目标函数。
1. LMNN定义了pull loss:

Lpull(d)=jid(xi,xj)2

其中, j i的target neighbor。
2. push loss:

Lpush(d)=i,jik(1yik)[1+d(xi,xj)2d(xi,xk)2]+

其中,如果 i k拥有同一个类标,则 yik=1 ,否则, yik=0 [z]+=max(z,0) .完整的损失函数是结合上述两个损失函数, 可以通过半正定编程来进行优化。

2.3 Collaborative Filtering

     这里重点关注隐性反馈的CF,传统的CF算法是基于用户相似计算出的。MF是一种流行的CF算法,普通的MF模型设计为用户的显性反馈,它是通过将users 和items映射到潜在因子空间上,那么user-item的关系可以通过潜在因子的乘积获得。
rij 记为用户 i 对itemj的打分,用户向量 uiRr 和item向量 vjRr ,它们的乘积为 uiTvj ,这个式子让最优化问题变为最小化集合上的均方误差:

minu,vrijK(rijuiTvj)2+λu||ui||2+λv||vi||2

其中, K 是分数集合, λu,λv L2 正则化的超参数。

隐性反馈(Implicit feedback)和贝叶斯个性(Bayesian personalized ranking)化排序略过,感兴趣的可以自己查询资料。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值