这里对WWW 2017文章《Beyond Globally Optimal: Focused Learning for Improved Recommendations》进行一个简单的分析解读。

文章亮点:

  • 作者群来自Google和Pinterest

  • 第一次系统性的解释了为什么用全局模型可能会在局部数据上表现不好

  • 文章提出了简单易行的解决办法,可以让全局模型在局部数据上依然能够达到最优

  • 文章很全面得在一些数据及上进行了比较完整的比较

这篇文章来自一群前CMU的学者,目前在Google和Pinterest。那么这篇文章试图解决什么问题呢?具体说来,就是作者们发现,传统的推荐系统,基于优化一个全局的目标函数,通常情况下往往只能给出一个非常有“偏差”(Skewed)的预测分布。也就是说,传统的推荐系统追求的是平均表现情况,在很多情况下的预测其实是十分不准确的。这个情况在评价指标是Root Mean Squared Error(RMSE)的时候,就显得尤为明显。

这篇文章的作者是这么定义了一个叫做Focused Learning的问题,那就是如果让模型在一个局部的数据上能够表现出色。那么,为什么需要模型在一个局部的数据上表现出色呢?作者们做了这么一件事情,那就是对每个用户,以及每一个物品的预测误差(Error)进行了分析统计,发现有不小比例的用户的预测误差比较大,也有不小比例的物品的预测误差比较大。作者们发现模型在一些数据上存在着系统性的误差较大的问题,而不是偶然发生的情况。

作者们又从理论上进行了对这个问题一番讨论。这里的讨论十分巧妙,大概的思路就是,假定现在在全局最优的情况下,模型的参数的梯度已经为0了,但模型的Loss依然不为0(这种情况很常见)。那么,就一定存在部分数据的参数梯度不为0,因为某一部分数据的Loss不为0。这也就证明了部分数据的模型参数在这些数据上的表现一定不是最优的。值得注意的是,这个证明非常普遍,和具体的模型是什么类型没有关系。

在有了这么一番讨论之后,那么作者们如何解决这个问题呢?这篇文章走了Hyper-parameter Optimization的道路。文章展示了这在普通的Matrix Factorization里面是如何做到。具体说来,就是对于某个Focused Set做Hyper-parameter的调优,使得当前的Hyper-parameter能够在Focused Set上能够有最好表现。而这组参数自然是针对不同的Focused Set有不同的选择。文章提到的另外一个思路,则是对Focused Set以及非Focused Set的Hyper-parameter进行区分对待,这样有助于最后的模型能够有一个比较Flexible的表达。

文章在实验的部分针对几种不同的Focused Set进行了比较实验。比如,针对Cold-Start的物品,针对Outlier的物品,以及更加复杂的libFM模型都进行了实验。我们在这里就不去复述了。总体来说,Focused Learning在不同的数据集上都得到了比较好的提升效果。同时,作者们还针对为什么Focused Learning能够Work进行了一番探讨,总体看来,Focused Learning既照顾了Global的信息,同时又通过附加的Hyper-parameter调优对某一个局部的数据进行优化,所以往往好于Global的模型以及也好于单独的Local模型。

Beyond Globally Optimal: Focused Learning的更多相关文章

  1. Machine and Deep Learning with Python

    Machine and Deep Learning with Python Education Tutorials and courses Supervised learning superstiti ...

  2. Learning Query and Document Similarities from Click-through Bipartite Graph with Metadata

    读了一篇paper,MSRA的Wei Wu的一篇<Learning Query and Document Similarities from Click-through Bipartite Gr ...

  3. an optimal solution to the problem

    http://www.personal.kent.edu/~rmuhamma/Algorithms/MyAlgorithms/Greedy/greedyIntro.htm Greedy Introdu ...

  4. 论文解读(GraphDA)《Data Augmentation for Deep Graph Learning: A Survey》

    论文信息 论文标题:Data Augmentation for Deep Graph Learning: A Survey论文作者:Kaize Ding, Zhe Xu, Hanghang Tong, ...

  5. cvpr2015papers

    @http://www-cs-faculty.stanford.edu/people/karpathy/cvpr2015papers/ CVPR 2015 papers (in nicer forma ...

  6. 2016CVPR论文集

    http://www.cv-foundation.org/openaccess/CVPR2016.py ORAL SESSION Image Captioning and Question Answe ...

  7. ECCV 2014 Results (16 Jun, 2014) 结果已出

    Accepted Papers     Title Primary Subject Area ID 3D computer vision 93 UPnP: An optimal O(n) soluti ...

  8. CVPR 2015 papers

    CVPR2015 Papers震撼来袭! CVPR 2015的文章可以下载了,如果链接无法下载,可以在Google上通过搜索paper名字下载(友情提示:可以使用filetype:pdf命令). Go ...

  9. 机器学习资源汇总----来自于tensorflow中文社区

    新手入门完整教程进阶指南 API中文手册精华文章TF社区 INTRODUCTION 1. 新手入门 1.1. 介绍 1.2. 下载及安装 1.3. 基本用法 2. 完整教程 2.1. 总览 2.2.  ...

随机推荐

  1. 小白的Python之路 day3 函数

    1.函数基本语法及特性 背景提要 现在老板让你写一个监控程序,监控服务器的系统状况,当cpu\memory\disk等指标的使用量超过阀值时即发邮件报警,你掏空了所有的知识量,写出了以下代码 1 2 ...

  2. BGP网络学习总结

    1.前言     云计算在中国发展越来越快,企业逐步开始将业务迁移到公有云中,方便运维,节省成本.公有云最复杂的地方是网络,客户对网络的需求千奇百怪,造成网络环境极其复杂,稍有不慎,就会出现网络连通性 ...

  3. sed使用范例

    本文同时发表在https://github.com/zhangyachen/zhangyachen.github.io/issues/32 记录下sed编译器的常见使用方法. sed编辑器基于输入到命 ...

  4. Xamarin android CardView的使用详解

    android 5.0新增加的一个控件CardView,在support v7兼容包中,意思就是卡片View,虽然可以设置阴影,圆角等等样式,但是我们也可以自己写出来,谷歌工程师之所以出这个,肯定是帮 ...

  5. vs2015企业版密钥

    专业版:HMGNV-WCYXV-X7G9W-YCX63-B98R2 企业版:HM6NR-QXX7C-DFW2Y-8B82K-WTYJV

  6. C#中级-通过注册表读取Windows Service程序执行路径

    一.前言        假设我们的C#解决方案中有多个程序应用,如:Web应用.控制台程序.WPF程序应用和Windows服务应用. 那么这些非Windows Service应用程序怎么在代码中找到W ...

  7. window下nginx的常用命令

    window nginx 启动 常用命令 2016-05-04 11:11 214人阅读 评论(0) 收藏 举报 分类: nginx(5) 版权声明:本文为博主原创文章,未经博主允许不得转载. 启动 ...

  8. 线上平滑升级nginx1.12

    .下载相关包,需要和之前用到的依赖包保持一致 wget http://nginx.org/download/nginx-1.12.2.tar.gz wget https://bitbucket.org ...

  9. Linux第八讲随笔 -tar / 系统启动流程

    linux 第八讲1.tar 参考 作用:压缩和解压文件.tar本身不具有压缩功能.他是调用压缩功能实现的. 语法:tar[必要参数][选择参数][文件] 参数:必要参数有如下: -A 新增压缩文件到 ...

  10. 解决NTPD漏洞,升级Ntpd版本

    关于解决漏洞的问题我就不详说了,主要就是升级版本.这里我们就直接简单记录下步骤: 1.升级 使用root用户登录系统进入到/home/guankong ,上传ntp-4.2.8p9-1.el6.x86 ...