评书:《美团机器学习实践》

新入手一本《美团机器学习实践》,读完以为颇有意思,把一部份内容分享给你们。web

这本书分为六部分,第一部分是通用流程,讲的是机器学习在实践中应用的通用流程,有些经验之谈颇有意思;第二部分讲的是数据挖掘,主要包括用户画像、POI实体连接和评论挖掘;第三部分是搜索和推荐,顾名思义,讲的是美团中的应用的搜索和推荐架构;第四部分计算广告;第五部分讲的是深度学习;第六部分讲的是算法工程。算法

第一部分和第五部分属于通用流程,有一些实践中应用的经验值得学习,不过相对而言,要想了解这些部分不如去看专讲这些的书籍。第六部分笔者我的也以为较为日常,要想了解这些东西更推荐去阅读专门讲并行机器学习的部分。真正出彩的在于第2、3、四部分,或者说,凡是涉及到POI和O2O的部分都很是值得一读!架构

美团能够说是当之无愧的国内最大的POI和O2O应用的公司,他们在这方面的经验积累极多,架构很是漂亮,并且即便我这个不大了解这方面的人读起来,也能对机器学习在POI和O2方面的应用有大体的了解。接下来笔者将介绍一些本身以为颇有趣的部分。框架

POI实体连接

坦率地说,第二部分中,用户画像部分的架构最令我以为出色,但最有参考价值的部分是POI实体连接。作用户画像和评论挖掘的公司不少,但美团的POI算法却颇有多是国内最好的。机器学习

POI在这本书里表明一个信息实体,好比在酒店业务中就表明一个酒店。维护一个优质的POI信息库是一切算法的基础。美团在这一部分讨论的是这样一个问题:美团已经有的POI信息库,称为库存POI;须要录入的POI信息库,称为待选POI库。待选POI库中的大部分POI均可能原本就在库存POI中,只是名称、描述、信息等可能不一样,一个在应用中比较重要的问题就是将待选POI库对应到库存POI库中去。学习

以酒店业务为例,金泉假日酒店和金泉商务宾馆多是同一家实体,要怎么把它们对应起来呢?从名称类似度上入手是你们都想获得的解决方案,可是这个方法未必准确,所以就须要引入其余信息,好比地址、电话、经纬度等。在这个场景中还有一个问题要关注,即不能进行全量比较,不然咱们就将获得一个复杂度至少为待选POI库大小*库存POI库大小的算法,这个复杂度在实践中是不可接受的。那么美团的方案是什么呢?搜索引擎

第一步:缩小候选集

  1. 经过聚类的方式进行POI聚合:即首先在城市维度进行聚合
  2. 创建倒排索引,缩小比较候选集

第二步:类似度比较

这一步有两个方法:排序

  1. if-else连击,即经过一连串if-else条件断定是否同一实体
  2. 类似度打分:对不一样POI的每个维度进行打分,加权比较类似度

具体流程

这一工做的具体流程为: 数据清洗-》特征生成(各类不一样模块)-》模型选择与效果评估索引

他们的候选模型包括GBDT,SVM,LR等,不算复杂,可是讲到了很多实践中的细节。深度学习

O2O场景下的搜索

O2O场景下的搜索比普通的搜索问题有意思,由于它是深度依赖于当前环境的。用户在日本、在北京、在武汉搜同一个词每每表明着不一样的意思。用户在中午搜美食、下午搜美食、晚上搜美食,每每期待获得的美食推荐彻底不相同。用户搜地点时未必想找地点,也多是找地点附近的餐厅或酒店。这些问题对搜索系统提出了很是高的要求。

在美团中,搜索引擎要解决的主要问题以下:

  1. 如何定义用户的查询意图?
  2. 如何识别用户的查询意图?
  3. 如何将用户的查询意图连接到特定实体?
  4. 如何引导用户完成搜索?

这本书对这些问题的解决方法都作了详细的解释。笔者就不在这里详细描述了。而另外一个问题是搜索结果的排序方式,美团认为本身的搜索排序场景主要有以下四个特色:

  1. 移动化:用户的位置不断移动,而且距离是排序的重要因素
  2. 场景化:用户在家、工做地点、户外或者店内,这些不一样场景对于用户意图的理解是很是重要的
  3. 本地化:搜索查询的目标每每是本地化的
  4. 个性化:用户偏好较为明显

针对这些特色,美团实现了本身的搜索排序框架。

O2O场景下的推荐

美团认为O2O下的推荐与其余推荐的主要区别包括以下三点:

  1. 地理位置因素
  2. 用户历史行为:与其余的推荐场景不一样,用户在同一家店的复购可能性很高
  3. 实时推荐:一是须要考虑用户的实时地理位置,二是须要考虑消费的实时性,在O2O场景下,用户从考虑消费到最终下单的时间很是短

美团使用的仍然是经典的推荐框架,包括召回和排序两个阶段:

  1. 召回阶段:召回策略包括基于协同过滤的召回、基于位置的召回、基于搜索查询的召回、基于图的召回和基于实时用户行为的召回
  2. 排序阶段;排序模型仍然是经典的模型,没有什么特别之处,特征则包括:item维度的特征、用户维度的特征、用户和item的交叉特征、距离特征和场景特征。

从行文来看,推荐并非美团最重视的入口。

O2O场景下的广告营销

O2O场景下的广告营销主要具备以下特色:

  1. 移动化:主要体如今精确性、即时性和互动性三个方面
  2. 本地化:美团发现超过90%的交易中用户和商家的距离小于3千米
  3. 场景化:移动条件下的场景比web条件下更为精确
  4. 多样性:O2O模式面对的商户各类各样,需求差别很大

综合这些特色,美团的广告排序机制很是有趣,它能够实现一些在web条件下根本不可能实现的需求:例如分辨哪些是流失单,流失到了哪一个竞争对手手里。我不在这里赘述它的具体内容,但总体而言仍是颇有意思。

总结

从我的角度来讲,这本书最大的价值在于视野拓展。不一样的场景下,算法要面对的问题千差万别,有些问题每每是不作这些的人根本想不到的。不少时候,发现问题、定位问题的价值比解决问题还要高。因此,多看看不一样场景下的算法应用是很是有帮助的,与各位读者共勉。要是有机会的话,咱们下次再分析一下美团的用户画像架构。

相关文章
相关标签/搜索