首页>会议文档 >

国美在线 邱宝军-机器学习排序框架与实践

page:
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践
国美在线 邱宝军-机器学习排序框架与实践

国美在线 邱宝军-机器学习排序框架与实践

所属会议:GITC全球互联网技术大会2016会议地点:上海


下载

手机看
活动家APP客户端

扫二维码下载
或点击下载
Android iOS

7723次
浏览次数

文档介绍

2016年6月30日-7月1日,万众瞩目的GITC全球互联网技术大会将走进上海,在上海宝华万豪隆重举行。 GITC2016上海站将始终以汇聚行业精英、促进技术交流、加深商务合作、推动行业发展为大会宗旨,持续聚焦互联网领域的最新技术成果和未来发展趋势,就云、运维大数据等技术热门话题进行主题、专题演讲,分享互联网的核心、尖端技术。 此次大会还特别增设了“互联网+”论坛、VR体验特展,技术&产品秀等一系列特色专场,给参会者带来更多直观的互动体验,打造更专业、有趣的技术交流分享及商务合作的平台。

演讲实录

第一个部分介绍一下机器学习排序的框架。排序问题无处不在。大型电商网站都有搜索、推荐和广告,这三者核心都都是排序问题。不同之处在于,搜索有显示的关键词输入,推荐与广告一般只有隐式输入:用户背景喜好、历史行为、当前浏览的商品或文档的属性等等。排序问题是最佳匹配问题,根据用户的信息,找出与该用户最匹配的商品或文档返回给用户。最直接最简单排序方法是人工定一些规则,如电商网站按销量排名、按价格排名、或人工定个公式组合几个重要指标做个综合排序。

那么,怎么把排序的问题转化成机器学习的问题呢。下面结合下图以一个例子说明一种简单方法。假如要从头开始做一个搜索引擎,那么可以任意选择一些关键词,随机筛选一些相关网页,然后让人工评判员标注<关键词,网页>的二元对。根据网页与关键词的匹配程度,一般可以分为五类:Perfect,Excellent,Good,Fair,Bad。然后提取<关键词,网页>二元对的特征,这样就形成了一个大表。这个大表有人工标注,有相关的特征。



于是一个排序问题就转化成了一个根据特征预测匹配度的分类问题:拿着这个表,利用机器学习的开源工具,就可以很方便地训练出分类器。给定一个查询和包含该查询的一组文档,该分类器对每个文档预测出匹配度,是Excellent还是Bad等等。然后根据预测的匹配度及其概率进行排序。

简单讨论一下人工排序与机器排序的关系。总的来说,人工规则与机器排序是紧密结合的。如果排序的优化目标不是太明确,也就是无法非常明确的告诉机器怎么样非常完备地量化目标,则人工规则就更重要。搜索就是如此。搜索一般意义上是要将最“相关”的东西返回,“相关”的定义其实就是比较模糊的。如果是电商搜索,那么不光是考虑相关,还要考虑成交率和佣金提成比例,因此搜索引擎往往有较多的业务规则,比如美国eBay的搜索排序就在机器排序模型之上叠加了很多人工设定的业务排序逻辑。



Google的搜索引擎排序也包含大量人工规则。而广告排序一般更依赖于机器排序,因为其优化目标比较明确。如在按点击付费的广告模式下,往往就是要优化点击率,非常具体和明确,所以广告排序引擎在最顶层往往是纯机器学习模型,虽然其使用的排序特征很多来自于人工规则。



机器学习排序有几种基本的方式,如Point-wise,Pair-wise,List-wise。这些在网上有很多材料。下面结合下图的机器学习排序流程择重点简要介绍一下。如果是从零开始做一个排序模型的话,因积累,则往往需要标注数据(也可以考虑爬取别人的排序结果数据,作为训练样本)。标注数据可以用于训练模型,也可以留出一部分作为排序模型的评测数据。

如排序系统已上线,并收集到用户行为数据,则可基于用户行为数据进行自动化标注。如下图所示,假设有ABCDEFG七个文档按顺序排列,有一个用户只点击了B和E,在Point-wise的框架下,可将B、E标注为正样本,被用户跳过(没点击)的文档,A、C、D标注为负样本。F和G因为本来就排在最后面,用户没有点击它们有可能是因为用户根本没往下看,所以不好说F与G不是用户想要的,所以F与G不做标注。在Pair-wise框架下,要找出具有明显优劣关系的文档对。如因为用户跳过了A而点了B,则说明B比A好,因此B-A可标注为正样本;因为用户点了E,而跳过了ACD,因此可类似的生成E-A等正样本或C-E等负样本。生成标注之后,最重要的工作是特征工程,然后是模型训练和线上部署。

刚开始做机器学习的人,可能会认为找特征无从下手。我参考软件工程里的需求分析办法,总结了提取特征的一点点方法论如下图所示,与大家分享。

首先研究所面对的机器学习问题中涉及到哪些主体。以电商的搜索排序为例子,涉及到的主体有人、查询、商品、商家等,环境可依附在人身上,也可提取出来单独作为主体。其次对每个主体进行分析,提取出主体与机器学习问题相关的特征,如在电商排序中,人的购买力、查询的品类倾向、商品的历史转化率、商家的评分,以及人所在地区的天气等。



然后找主体俩俩之间的关系,比如说用户跟商品。每个用户有品类倾向性,所以需要计算给定商品与用户之间的品类契合度,还要考虑价位契合度,如历史数据表明某用户喜欢高档价格高档商品,则价位在同品类下靠前的商品与该用户的契合度可能高一些。商品与环境的契合度也很重要,比如既能制热又能制冷的空调没与深圳的用户契合度较低。



机器学习模型的训练与调优是一个非常复杂的过程,但利用已有的开源机器学习工具训练一个基本的模型的门槛已经比较低了。



排序模型的部署要注意尽量充分利用离线预处理,把能线下算好的都尽量算好,将结果缓存下来,利用空间换时间。有时候甚至可以牺牲一定的精确度换取速度。



其核心需要考虑空间与时间之间的平衡:线上节省下来的时间所带来的收益是否大于离线处理的代价以及精确度损失等各类成本之和。一般来说,能离线处理好的特征与计算,尽量离线处理好并缓存起来。包括商品特征缓存,用户特征缓存等等。如果使用的模型是线性模型,那不光可将特征缓存,还可将只涉及到离线特征的线性部分离线算好。

接下来谈一下机器学习的量化目标和AB测试。这是一个非常重要的问题,我们其实做任何事情都要考虑清楚我们目标是什么,怎么量化。德鲁克说到的一句话,如果你不能衡量它就无法提高它。在大数据思维中,量化思维是最核心的。在抽象思考层面,我认为任何东西都是可以量化的,如果某个东西不能量化,则要么是还没想到,要么是技术上可能还达不到。对于排序来说,设定量化目标函数是非常重要的,无论是点击率、转化率等,都必须紧密结合业务需求。

AB测试是量化的神器。在美国eBay,任何一个算法上线,都会进行AB测试:让新老算法同时上线,两个系统并行运行;用户进来以后随机筛选一部分到新系统里。最后比较用户在新老系统里的表现,进行统计假设检验,计算p值,最终决定新系统是否比老系统在统计意义上更好。



下面是国美在线的AB测试后台截图,包括AB测试的设置、KPI计算与监控等等。

下面对机器学习排序做个小结。首先是场景恢复和训练样本构建,暨还原历史点击发生时候的实际场景和各项特征,实际操作中,在行为发生时候,往往就将各种相关数据都计算好。之后是模型训练,包括数据清洗、特征工程、模型调优、离线评测。再之后是线上实验。

演讲的第二部分简要介绍下国美推荐排序的实践,首先来看一下国美推荐系统的架构。用户看到电商网站的“猜你喜欢”的商品后,进行了点击。该点击信号,一方面通过实时数据处理系统反馈给推荐引擎,帮助推荐系统实时调优;另一方面,点击信息进入log。基于log,进行知识挖掘,获取相关特征和训练数据,并进行基础推荐模型的计算(如关联规则和协同过滤模型等),以及离线排序模型的训练。离线排序模型缓存到Redis模型服务器,而相关特征数据、基础推荐模型的粗筛结果缓存到Hbase和Redis数据服务器。

在给用户进行商品推荐时候,数据获取模块获得用户的基本特征和推荐的初筛结果,进行交互特征和在线特征的计算,然后利用离线模型、在线模型以及业务规则进行最终的筛选与排序,返回最终结果给用户。



关于推荐排序模型的构建流程,我做一点补充:在做基于矩阵分解的推荐基础模型时,要根据用户行为对商品进行打分。例如有的人可能会随便设置分数如下:用户点击商品一次给1分,加购物车给3分,下单给4分。但要注意,打分可能很影响模型的性能。刚刚的这种评分方式,使得商品有点击(1分)与无点击(0分)差距为1分,而加购物车与点击差距为2分。点击与购物的距离大于点击与无点击的距离,这可能使得模型对点击的权重偏低。

国美推荐系统也利用了气候特征进行推荐,使得我们的系统能够根据某地的雾霾或气温适当调整该地区的推荐排序。

国美也在利用计算机视觉相关特征与模型进行视觉维度的商品推荐。我们使用了深度学习的方法。关于深度学习,与大家分享一个技巧。深度学习的一个较大障碍是对训练数据要求极高,但并不是每个机器学习问题都有海量的训练数据的。将深度学习与迁移学习(Transfer Learning)结合起来非常重要。我在微软研究院时候的老板是Transfer Learning的提出者之一。Transfer Learning的理念非常适合在深度学习中使用。



看下基于ImageNet训练的深度神经网络模型的分类器,它在不同层实际是自动化提取了图片特征。在最底层,主要是对边的监测,到了第2层,上升到对角以及纹理的识别,到第3层则开始捕捉形状…,越往上,其特征的语义越丰富,越接近特定分类问题;而底下几层的特征则更具有通用性,可以适用于不同问题域的图像分类问题。因此,在训练数据缺乏的图像分类领域,可利用基于ImageNet的海量样本训练出来的深度模型,将其底下的通用特征计算抽取出来,就能以较低的代价利用了深度特征,从而显著提升有限样本量的图像分类与检索系统的性能。

×

打开微信扫一扫,分享到朋友圈