菜品是外卖交易过程的核心要素,对菜品的理解也是实现外卖供需匹配的重点。今天咱们将一次推送三篇文章,系统地介绍了美团外卖美食知识图谱的构建和应用。《美团外卖美食知识图谱的迭代及应用》会介绍外卖知识图谱的体系全貌,包括菜品类目、标准菜品、美食基础属性和美食业务主题属性。《外卖商品的标准化建设与应用》将重点介绍外卖菜品标准化建设思路、技术方案和业务应用。因为外卖的业务特色是搭配成单,而《外卖套餐搭配的探索和应用》一文会针对性地介绍外卖套餐搭配技术的迭代以及应用实践。但愿对从事相关工做的同窗可以带来一些启发或者帮助。
本文系外卖美食知识图谱系列的第一篇文章,这篇文章系统地介绍了美团外卖美食知识图谱的标签体系结构,包括菜品类目标签、标准菜品名、美食基础属性(食材、口味、菜系等)和美食业务主题属性(商家招牌、类目经典等)。在技术层面,举例对标签体系的具体构建方法进行介绍,例如基于BERT预训练的分类模型。在应用方面,介绍了美食知识图谱在美团外卖业务的具体应用,包括支撑套餐搭配的菜品表征、提高搜索和商家推荐等业务的用户体验。前端
知识图谱,旨在描述真实世界中存在的各类实体和实体之间的关系。在美团外卖业务中,美食商品是美团向用户提供服务的基础,美食知识图谱的建设,能够帮助咱们向用户提供更加准确、更加丰富、更加个性化的美食服务。另外,美团外卖业务向用户提供“到家”吃饭的服务,到店餐饮业务则向用户提供“到店”吃饭的服务,而外卖和到店的商家和菜品有至关程度的重合,菜品数据的对齐,为咱们进行线上(外卖场景)线下(到店场景)数据的对比分析也提供了一个很好的“抓手”。算法
本文介绍了外卖美食知识图谱的建设,基于对外卖业务数据(外卖交易数据、商家录入的商品标签信息、专业描述PGC、用户评论UGC、商品图片等)和站外数据(百科、菜谱等)的挖掘和分析,造成了针对外卖美食的分类体系(美食类目标签)和标准化体系(标准菜品名标签),并进一步针对不一样类型的美食商品,构建包含口味、食材等众多美食基础属性体系。同时,依托美团外卖的业务特性,构建美食商品在外卖业务中涉及的主题属性体系,例如商家招牌、商家主营、类目经典等。目前,外卖美食知识图谱的标签结构以下图1所示:后端
外卖美食知识图谱包含如下四种维度的标签(以“宫保鸡丁”为例,以下图2所示):安全
菜品对齐,涉及到菜品数据,来自外卖在线菜品、点评推荐菜品、美团商家套餐等。网络
目前,外卖美食知识图谱已经应用于美团外卖的多个场景,例如推荐、搜索、套餐搭配、运营分析等。业务的深刻发展,对美食知识图谱的建设和迭代也提出了更加复杂的要求,例如:运维
为知足业务需求,咱们对类目标签和基础属性进行了迭代和优化;同时,构建了业务相关的主题属性。另外,咱们将外卖菜品和到餐菜品进行了实体对齐。其中,挖掘主题属性,即挖掘业务相关的图谱知识,是一个须要综合考虑外卖业务和商品自己属性的复杂过程。外卖菜品和到餐菜品的对齐,则须要综合考虑菜品多样性表述和菜品主体归一。学习
外卖美食知识图谱的迭代难点主要体如今如下几点:测试
因篇幅受限,本文主要对其中菜品类目,不一样类目、口味、食材、荤素、作法下的经典美食,健康餐等图谱标签的挖掘进行介绍。其中,在图谱标签挖掘中涉及到的数据来源和采用的技术,大体以下表所示:优化
标签 | 技术 |
---|---|
菜品类目 | BERT分类模型 |
不一样类目、口味、食材、荤素、作法下的经典美食 | 数据统计、实体识别、关系识别、产品定义(综合考虑销量和供给量) |
健康餐 | 分类模型+产品定义(符合必定食材、作法、功效的商品) |
菜品类目标签的挖掘,主要解决美食菜品是什么类别的问题。实现这一目标的挑战有两方面:首先是类目体系如何创建,其次是如何将商品连接到相应的类目节点。在最开始的体系构建时,咱们从美食商品的特色以及业务的具体需求出发,从零开始创建起包含一百多种类别的层次化类别体系,部分实例如图3(左)所示。同时,构建基于CNN+CRF的分类模型,对美食商品进行类目分类,如图4(左)所示。spa
然而,随着业务的发展,已有分类目已经没法支持现有业务的需求。例如:原先的类目体系,对热菜描述不够详细,譬如没有区分热菜的作法等。为此,咱们与外卖的供给规划部合做,将类目体系扩充到细分的三百多种类目标签,划分更加详细,覆盖也更加全面,部分实例如图3(右)所示。
类目的细分,要求模型更加精确。在进行类目识别时,可用的数据包括菜品名、商家店内侧边栏分类名称、商家名等。考虑到可以使用的信息大多为文本信息,而且,商家录入的文本并无必定的规范,菜品名也多种多样,为提升模型精度,咱们将原先的CNN+CRF的分类模型进行了升级,采用模型容量更大的BERT预训练+Fine-Tuning的模型。模型结构以下图4(右)所示。
咱们在建设主题属性时,首先在基础属性标签维度,综合考虑商品的销量和供给状况,对菜品进行选优。例如类目下的经典美食等。但在建设过程当中,咱们发现菜系的经典美食识别,假如依据销量和供给进行识别,则识别结果倾向于菜系下的“家常菜”,所以将经典菜系美食进行单独识别。
类目经典美食等指的是销量较高、供给量丰富的类目美食商品,例如主食经典美食、小吃经典美食。口味、食材、作法经典美食标签等也是类似的定义。
在建设过程当中,咱们发现,假如直接在商品维度进行识别,由于商品的更新频率相对较高,对新录入的暂时没有销量或者暂时销量低的美食商品不友好,销量水平须要考虑在线时间的影响。所以咱们使用标准菜品进行类目、口味经典等的识别,并经过标准菜品,泛化到具体的美食商品上。
其中,“标准菜品”借用其它类电商业务中的“标品”概念,虽然绝大部分菜品的生产都不是标准化的过程,可是这里咱们只关注主要的共性部分,忽略次要的差别部分。例如“西红柿鸡蛋”、“番茄炒蛋”都是同一类菜品。从结果上看,目前咱们聚合出来的“标准菜品”达到几十万的量级,而且可以覆盖大部分美食商品。
借助标准菜品,咱们将类目、口味、食材、荤素、作法等标签聚合到标准菜品维度,并将销量、供给量进行标准菜品维度计算,这样就解决了商品在线时间长短的问题。在具体打标过程当中,例如类目经典,咱们基于销量和供给,在类目维度对标准菜进行排序,并选择Top n%标准菜进行打标,做为类目经典下的商品。例如在“面食”类目下,“西红柿鸡蛋面”的销量和供给量均在Top n%的水平,所以就认为“西红柿鸡蛋面”是一个面食类经典美食。
这里的健康餐主要指低脂低卡餐,即低卡路里、低脂肪、高纤维、制做简单、原汁原味、健康养分的食物,通常为蔬菜水果(如罗勒、甘蓝、秋葵、牛油果等),富含优质蛋白的肉类(如三文鱼、虾、贝类、鸡胸等),谷物(主要以粗粮为主,如燕麦、高粱、藜麦等)。烹饪方法也坚持“少油,少盐,少糖”的原则,主要作法为蒸、煮、少煎、凉拌等。
健康餐的识别,主要挑战在于自己的样本较少,可是由于健康餐的特殊性,商家在进行商品录入时,通常会对其进行描述,例如指出这个美食商品是“健康”的、“低卡”的、“健身”类型的,所以咱们构建了一个分类模型,对健康餐进行识别。可以使用的数据,包括商品名、商家导航栏、商家名称、商家对商品的描述等。而商家类目与商品的类目处于迭代状态,所以并无对这部分信息进行使用。
识别过程以下:
模型构建:同一个商品因其中使用的配料不一样,在健康餐识别方面也会不一样,例如菜名为“招牌沙拉”的商品,假如沙拉中添加了芝士,则有可能商品就不会被识别成健康餐。为了综合考虑商家录入的商品信息,使用商品名、商家名、导航栏名称、商家录入的商品描述等。这四种数据为不一样尺度的数据源,商品名等为相对较短的文本,所以在模型构建时,考虑使用相似Text-CNN[1]的结构进行字级别的特征提取;商品描述则是相对较长的文本,所以在构建时,考虑使用相似Transformer[2]的结构进行特征提取,使用Multi-head Attention的机制,提取长文本中,“字”层面的特征。具体结构以下:
考虑到同一商家菜品在不一样业务线的菜品名可能略有差别,咱们设计了一套菜品名匹配的算法,经过拆解菜品名称的量词、拼音、先后缀、子字符串、顺序等特征,利用美食类目识别、标准菜品名抽取、同义关系匹配等进行菜品实体对齐。例如:碳烧鸽=炭烧鸽、重庆辣子鸡=重庆歌乐山辣子鸡、茄子肉泥盖饭=茄子肉泥盖浇饭、番茄炒蛋=西红柿炒蛋等。目前,造成以下图的菜品归一体系:
这里对外卖美食知识图谱的应用,进行举例说明。主要涉及套餐搭配、美食商品展现等。
为知足用户的搭配成单需求,进行套餐搭配技术的探索。套餐搭配技术的关键在于,对美食商品的认知,而外卖美食知识图谱,则提供了最全面的数据基础。咱们基于同商家内的商品信息和历史成单信息,对商品的搭配关系进行拟合,参考指针网络[2]等结构,构建了基于Multi-Head Attention[3]的Enc-Dec模型,具体的模型结构以下:
Encoder:对商家菜单进行建模,因菜单为无序数据,所以采用Attention的方式进行建模。商品的信息主要包括商品名、商品图谱标签、交易统计数据等三部分。
Deocoder:对搭配关系进行学习,基于当前已选择的商品,对下一个可能的搭配进行预估。
具体的模型结构以下图所示:
基于外卖美食知识图谱构建的套餐搭配模型,在多个入口(“满减神器”、“对话点餐”、“菜品详情页”等)取得转化的提高。
经过分析外卖用户的需求,发现用户存在跨店类似商品对比的需求,为打破商家界限的选购流程特色,提供便捷的跨店对比决策方式。交互式推荐,经过新的交互模式,打造推荐产品的突破点。在用户的交互过程当中,根据用户的历史偏好、实时的点击行为,向用户推荐可能喜欢的美食商品。以下图8(左)所示,在向用户进行同类美食的推荐时,美食知识图谱中的标准菜品标签提供了主要的数据支撑。
搜索做为外卖核心流量入口,承载了用户明确的外卖需求。用户经过输入关键词,进行菜品检索。在实际使用中,从搜索的关键词类型看,多是某个具体的菜品,也多是某种食材、某种菜系。在美食知识图谱中,图谱标签的高准确率和高覆盖,有助于提高搜索入口的用户体验,最新的实验也代表了这一点(新增部分食材、菜系、功效等标签,在搜索的线上实验效果正向)。
美食与咱们的生活息息相关,美团外卖天天为千万用户提供美食方面的服务。然而,用户的需求是多种多样的,在不一样的环境、不一样的场景下,对美食的需求也不尽相同。目前美食知识图谱挖掘,在场景相关的标签较为缺失,例如某些节气、节日等图谱知识;特定天气状况下的图谱知识;特定人群(增肌人群、减肥人群)等的图谱知识。接下来咱们会在场景化标签的挖掘方面进行探索。
在挖掘方法方面,目前的挖掘数据主要为文本信息。在商品图片、描述、结构化标签等信息的融合方面,挖掘不够深刻,模型的效果也有待提高。所以在多模态识别模型方面,咱们也会进行相应的探索。
美团外卖在理解美食的基础上,向用户进行美食推荐,以更好地知足用户对美食的需求。外卖美食知识图谱和外卖业务数据,做为实现这一点的数据基础,包含上亿的节点信息和十几亿的关系数据。经过对用户的商品搜索、点击、购买等行为进行建模分析,能够更加贴合用户的需求,向用户进行商品推荐,例如,将美食知识图谱和外卖行为数据融合,以用户为起点,进行随机游走,向用户推荐相关的美食。在接下来的图谱应用方面的探索中,咱们也会更加深刻的探索基于美食知识图谱和用户行为的推荐技术。
杨林、郭同、海超、懋地等,均来自美团外卖技术团队。
阅读美团技术团队更多技术文章合集
前端 | 算法 | 后端 | 数据 | 安全 | 运维 | iOS | Android | 测试
| 在公众号菜单栏对话框回复【2020年货】、【2019年货】、【2018年货】、【2017年货】等关键词,可查看美团技术团队历年技术文章合集。
| 本文系美团技术团队出品,著做权归属美团。欢迎出于分享和交流等非商业目的转载或使用本文内容,敬请注明“内容转载自美团技术团队”。本文未经许可,不得进行商业性转载或者使用。任何商用行为,请发送邮件至tech@meituan.com申请受权。