作者简介:吴海波,花名吾加,2014年入职蘑菇街,负责电商排序、推荐相关的工作,经历了蘑菇街机器学习从无到有的过程,主导排序从爆款模型到转化率模型再到个性化模型。
责编:何永灿(heyc@youkuaiyun.com)
本文来源于《程序员》,未经允许不得转载。
通常机器学习在电商领域有三大应用,推荐、搜索、广告,这次我们聊聊三个领域里都会涉及到的商品排序问题。从业务角度,一般是在一个召回的商品集合里,通过对商品排序,追求GMV或者点击量最大化。进一步讲,就是基于一个目标,如何让流量的利用效率最高。很自然的,如果我们可以准确预估每个商品的GMV转化率或者点击率,就可以最大化利用流量,从而收益最大。
蘑菇街是一个年轻女性垂直电商平台,主要从事服饰鞋包类目,2015年时全年GMV超过了百亿,后与美丽说合并后公司更名为美丽联合集团。2014年时入职蘑菇街,那时候蘑菇街刚刚开始尝试机器学习,这3年中经历了很多变化,打造爆款、追求效率、提升品质等等。虽然在过程中经常和业务方互相challenge,但我们的理念——技术服务于业务始终没有变化过。模型本身的迭代需配合业务目标才能发挥出最大的价值,因此选择模型迭代的路线,必须全盘考虑业务的情况。
在开始前,先和大家讨论一些方法论。在点击率预估领域,常用的是有监督的模型,其中样本、特征、模型是三个绕不开的问题。首先,如何构建样本,涉及模型的目标函数是什么,即要优化什么。原则上,我们希望样本构建越接近真实场景越好。比如点击率模型常用用户行为日志作为样本,曝光过没有点击的日志是负样本,有点击的是正样本,去构建样本集,变成一个二分类。在另一个相似的领域——Learning to rank,样本构建方法可以分为三类:pointwise、pairwise、listwise。简单来讲,前面提到的构建样本方式属于pointwise范畴,即每一条样本构建时不考虑与其他样本直接的关系。但真实的场景中,往往需要考虑其他样本的影响,比如去百度搜一个关