天天看點

美團外賣美食知識圖譜的疊代及應用

菜品是外賣交易過程的核心要素,對菜品的了解也是實作外賣供需比對的重點。今天我們将一次推送三篇文章,系統地介紹了美團外賣美食知識圖譜的建構和應用。《美團外賣美食知識圖譜的疊代及應用》會介紹外賣知識圖譜的體系全貌,包括菜品類目、标準菜品、美食基礎屬性和美食業務主題屬性。《外賣商品的标準化建設與應用》将重點介紹外賣菜品标準化建設思路、技術方案和業務應用。由于外賣的業務特點是搭配成單,而《外賣套餐搭配的探索和應用》一文會針對性地介紹外賣套餐搭配技術的疊代以及應用實踐。希望對從事相關工作的同學能夠帶來一些啟發或者幫助。

本文系外賣美食知識圖譜系列的第一篇文章,這篇文章系統地介紹了美團外賣美食知識圖譜的标簽體系結構,包括菜品類目标簽、标準菜品名、美食基礎屬性(食材、口味等)和美食業務主題屬性(商家招牌、類目經典等)。在技術層面,舉例對标簽體系的具體建構方法進行介紹,例如基于BERT預訓練的分類模型。在應用方面,介紹了美食知識圖譜在美團外賣業務的具體應用,包括支撐套餐搭配的菜品表征、提升搜尋和商家推薦等業務的使用者體驗。

1. 背景

知識圖譜,旨在描述真實世界中存在的各種實體和實體之間的關系。在美團外賣業務中,美食商品是美團向使用者提供服務的基礎,美食知識圖譜的建設,可以幫助我們向使用者提供更加準确、更加豐富、更加個性化的美食服務。另外,美團外賣業務向使用者提供“到家”吃飯的服務,到店餐飲業務則向使用者提供“到店”吃飯的服務,而外賣和到店的商家和菜品有相當程度的重合,菜品資料的對齊,為我們進行線上(外賣場景)線下(到店場景)資料的對比分析也提供了一個很好的“抓手”。

本文介紹了外賣美食知識圖譜的建設,基于對外賣業務資料(外賣交易資料、商家錄入的商品标簽資訊、專業描述PGC、使用者評論UGC、商品圖檔等)的挖掘和分析,形成了針對外賣美食的分類體系(美食類目标簽)和标準化體系(标準菜品名标簽),并進一步針對不同類型的美食商品,建構包含口味、食材等衆多美食基礎屬性體系。同時,依托美團外賣的業務特性,建構美食商品在外賣業務中涉及的主題屬性體系,例如商家招牌、商家主營、類目經典等。目前,外賣美食知識圖譜的标簽結構如下圖1所示:

美團外賣美食知識圖譜的疊代及應用

圖1 美食知識圖譜标簽體系

外賣美食知識圖譜包含以下四種次元的标簽(以“宮保雞丁”為例,如下圖2所示):

  1. 類目标簽:包括主食、小吃、菜品等類目,并在每個類目下,形成了層級化的三百多種細分類目。例如“宮保雞丁”的類目是“菜品”。類目标簽是美食商品的基礎分類資訊,根據類目的不同,美食商品的基礎屬性也不同。例如“菜品”類目存在“葷素”、“菜系”之分,而“酒水飲品”類目則沒有這種屬性标簽。
  2. 标準菜品名标簽:标準菜品名标簽主要為标準商品資訊,例如“宮保雞丁(招牌必點)”的标準商品是“宮保雞丁”。因商家輸入商品的多樣性,标準菜标簽的建設,實作了相同美食的聚合。
  3. 基礎屬性:根據美食商品的類目不同,建構包括美食的食材、菜系、口味、制作方法、葷素等基礎屬性。例如“宮保雞丁”的菜系是“川菜”,食材有“雞胸”和“花生”,葷素标簽是“葷”。基礎屬性的挖掘對我們了解商品起到關鍵作用,在商品的篩選、展示、商品表征等業務需求方面,提供基本的資料特征。
  4. 主題屬性:主題屬性主要展現美食的業務主題,包括美食在外賣的交易行為、美食在商家的定位、美食在使用者回報中的好評度等。例如某商家的“宮保雞丁(招牌必點)”是該商家的“招牌菜”。
美團外賣美食知識圖譜的疊代及應用

圖2 外賣美食知識圖譜樣例

菜品對齊,涉及到菜品資料,來自外賣線上菜品、點評推薦菜品、美團商家套餐等。

2. 需求及挑戰

目前,外賣美食知識圖譜已經應用于美團外賣的多個場景,例如推薦、搜尋、套餐搭配、營運分析等。業務的深入發展,對美食知識圖譜的建設和疊代也提出了更加複雜的要求,例如:

  1. 美食商品越來越多樣,相應的美食知識圖譜則需要越來越精細和準确。例如美食知識圖譜的類目标簽從零開始,建設了包含一百多種類目的類目标簽體系。但随着業務發展,部分類目存在明顯的可細化空間。
  2. 圖譜标簽的挖掘,偏向于靜态标簽的挖掘,對于相同圖譜标簽下的美食,缺少業務相關的主題屬性描述。例如同樣包含“花生”的“酒鬼花生”,相比“宮保雞丁”,更能代表“花生”相關的美食。
  3. 外賣美食知識圖譜主要描述外賣美食商品,而同一商家的美食商品,也可能會出現在該店的線下收銀等業務中。通過對齊不同業務的美食商品,可以在美食實體層面,完善美食知識圖譜對商家美食的描述,進而指導商品和商家營運。

為滿足業務需求,我們對類目标簽和基礎屬性進行了疊代和優化;同時,建構了業務相關的主題屬性。另外,我們将外賣菜品和到餐菜品進行了實體對齊。其中,挖掘主題屬性,即挖掘業務相關的圖譜知識,是一個需要綜合考慮外賣業務和商品本身屬性的複雜過程。外賣菜品和到餐菜品的對齊,則需要綜合考慮菜品多樣性表述和菜品主體歸一。

外賣美食知識圖譜的疊代難點主要展現在以下幾點:

  1. 業務相關的主題屬性挖掘,并沒有現成的體系可以參考,在建構過程中,涉及大量的分析和體系設計工作。
  2. 主題屬性的挖掘,最重要的是需要從使用者的需求出發,分析使用者對商品的需求點,并将其反映在商品的圖譜層面,形成相應的主題屬性标簽。同時,商家的商品資訊是一個動态變化的過程,例如銷量、供給、商品标簽等,前後兩天的資訊可能就會完全不同。是以業務性主題屬性的挖掘,一方面需要建設相對完善的體系,另一方面也需要适配業務資料的動态變化過程,也就在圖譜挖掘和需求比對上帶來了極大的挑戰。
  3. 商家錄入菜品時,對菜品存在多樣性表述,例如同一道菜在分量、口味、食材等方面存在的差異。菜品對齊時,則需要對這些多樣性表述進行平衡,例如是否忽略分量因素等。但目前并沒有現成的對齊标準可以參考。

3. 外賣美食知識圖譜的疊代

因篇幅受限,本文主要對其中菜品類目,不同類目、口味、食材、葷素、做法下的經典美食,健康餐等圖譜标簽的挖掘進行介紹。其中,在圖譜标簽挖掘中涉及到的資料來源和采用的技術,大緻如下表所示:

美團外賣美食知識圖譜的疊代及應用

3.1 菜品類目

菜品類目标簽的挖掘,主要解決美食菜品是什麼類别的問題。實作這一目标的挑戰有兩方面:首先是類目體系如何建立,其次是如何将商品連結到相應的類目節點。在最開始的體系建構時,我們從美食商品的特點以及業務的具體需求出發,從零開始建立起包含一百多種類别的階層化類别體系,部分執行個體如圖3(左)所示。同時,建構基于CNN+CRF的分類模型,對美食商品進行類目分類,如圖4(左)所示。

然而,随着業務的發展,已有分類目已經無法支援現有業務的需求。例如:原先的類目體系,對熱菜描述不夠詳細,譬如沒有區分熱菜的做法等。為此,我們與外賣的供給規劃部合作,将類目體系擴充到細分的三百多種類目标簽,劃分更加詳細,覆寫也更加全面,部分執行個體如圖3(右)所示。

美團外賣美食知識圖譜的疊代及應用

圖3 類目體系的疊代

類目的細分,要求模型更加精确。在進行類目識别時,可用的資料包括菜品名、商家店内側邊欄分類名稱、商家名等。考慮到可使用的資訊大多為文本資訊,并且,商家錄入的文本并沒有一定的規範,菜品名也多種多樣,為提高模型精度,我們将原先的CNN+CRF的分類模型進行了更新,采用模型容量更大的BERT預訓練+Fine-Tuning的模型。模型結構如下圖4(右)所示。

美團外賣美食知識圖譜的疊代及應用

圖4 類目模型疊代

3.2 不同類目、口味、食材、葷素、做法下的經典美食标簽

我們在建設主題屬性時,首先在基礎屬性标簽次元,綜合考慮商品的銷量和供給情況,對菜品進行選優。例如類目下的經典美食等。

類目經典美食等指的是銷量較高、供給量豐富的類目美食商品,例如主食經典美食、小吃經典美食。口味、食材、做法經典美食标簽等也是相似的定義。

在建設過程中,我們發現,假如直接在商品次元進行識别,因為商品的更新頻率相對較高,對新錄入的暫時沒有銷量或者暫時銷量低的美食商品不友好,銷量水準需要考慮線上時間的影響。是以我們使用标準菜品進行類目、口味經典等的識别,并通過标準菜品,泛化到具體的美食商品上。

其中,“标準菜品”借用其它類電商業務中的“标品”概念,雖然絕大部分菜品的生産都不是标準化的過程,但是這裡我們隻關注主要的共性部分,忽略次要的差異部分。例如“蕃茄雞蛋”、“番茄炒蛋”都是同一類菜品。從結果上看,目前我們聚合出來的“标準菜品”達到幾十萬的量級,并且能夠覆寫大部分美食商品。

借助标準菜品,我們将類目、口味、食材、葷素、做法等标簽聚合到标準菜品次元,并将銷量、供給量進行标準菜品次元計算,這樣就解決了商品線上時間長短的問題。在具體打标過程中,例如類目經典,我們基于銷量和供給,在類目次元對标準菜進行排序,并選擇Top n%标準菜進行打标,作為類目經典下的商品。例如在“面食”類目下,“蕃茄雞蛋面”的銷量和供給量均在Top n%的水準,是以就認為“蕃茄雞蛋面”是一個面食類經典美食。

3.3 健康餐

這裡的健康餐主要指低脂低卡餐,即低卡路裡、低脂肪、高纖維、制作簡單、原汁原味、健康營養的食物,一般為蔬菜水果(如羅勒、甘藍、秋葵、牛油果等),富含優質蛋白的肉類(如三文魚、蝦、貝類、雞胸等),谷物(主要以粗糧為主,如燕麥、高粱、藜麥等)。烹饪方法也堅持“少油,少鹽,少糖”的原則,主要做法為蒸、煮、少煎、涼拌等。

健康餐的識别,主要挑戰在于本身的樣本較少,但是因為健康餐的特殊性,商家在進行商品錄入時,一般會對其進行描述,例如指出這個美食商品是“健康”的、“低卡”的、“健身”類型的,是以我們建構了一個分類模型,對健康餐進行識别。可使用的資料,包括商品名、商家導航欄、商家名稱、商家對商品的描述等。而商家類目與商品的類目處于疊代狀态,是以并沒有對這部分資訊進行使用。

識别過程如下:

  • 訓練資料建構:因健康餐本身的占比相對較少,是以首先總結和健康餐相關的關鍵詞,使用關鍵詞進行文本比對,采樣機率相對較高的健康餐資料,進行外包資料标注。此處,我們總結出“沙拉、谷物飯、谷物碗、低油、低卡、無糖、減脂、減肥、輕食、輕卡”等關鍵詞。
  • 模型建構:同一個商品因其中使用的配料不同,在健康餐識别方面也會不同,例如菜名為“招牌沙拉”的商品,假如沙拉中添加了芝士,則有可能商品就不會被識别成健康餐。為了綜合考慮商家錄入的商品資訊,使用商品名、商家名、導航欄名稱、商家錄入的商品描述等。這四種資料為不同尺度的資料源,商品名等為相對較短的文本,是以在模型建構時,考慮使用類似Text-CNN[1]的結構進行字級别的特征提取;商品描述則是相對較長的文本,是以在建構時,考慮使用類似Transformer[3]的結構進行特征提取,使用Multi-head Attention的機制,提取長文本中,“字”層面的特征。具體結構如下:
    • 采用了兩種結構:Multihead-attention(Transformer)和Text-CNN。實驗發現,采用兩種結構聯合的方式,比采用單一結構準确率高。
    • 在模組化時,均使用字級别特征處理,避免因為分詞造成的誤差,同時也避免未登入詞的影響。
  • 資料疊代增強:因為使用關鍵詞進行樣本建構,在模型訓練時,模型會朝着包含這些關鍵詞的方向學習,是以存在漏召回的情況。在這裡,我們進行了一定的訓練資料增強,例如在評估時,選取可識别出健康餐的商家,對該商家中漏召回的資料進行訓練資料補充;同時,對部分特征明顯的關鍵詞,進行補充并擴充正例。通過對訓練樣本的多次擴充,最終完成健康餐的高準确率識别。
美團外賣美食知識圖譜的疊代及應用

圖5 健康餐識别模型

3.4 菜品實體對齊

考慮到同一商家菜品在不同業務線的菜品名可能略有差異,我們設計了一套菜品名比對的算法,通過拆解菜品名稱的量詞、拼音、前字尾、子字元串、順序等特征,利用美食類目識别、标準菜品名抽取、同義關系比對等進行菜品實體對齊。例如:碳燒鴿=炭燒鴿、重慶辣子雞=重慶歌樂山辣子雞、茄子肉泥蓋飯=茄子肉泥蓋澆飯、番茄炒蛋=蕃茄炒蛋等。目前,形成如下圖的菜品歸一體系:

美團外賣美食知識圖譜的疊代及應用

圖6 菜品歸一體系

4. 應用

這裡對外賣美食知識圖譜的應用,進行舉例說明。主要涉及套餐搭配、美食商品展示等。

4.1 套餐搭配-表征菜品

為滿足使用者的搭配成單需求,進行套餐搭配技術的探索。套餐搭配技術的關鍵在于,對美食商品的認知,而外賣美食知識圖譜,則提供了最全面的資料基礎。我們基于同商家内的商品資訊和曆史成單資訊,對商品的搭配關系進行拟合,參考指針網絡[2]等結構,建構了基于Multi-Head Attention[3]的Enc-Dec模型,具體的模型結構如下:

① Encoder:對商家菜單進行模組化,因菜單為無序資料,是以采用Attention的方式進行模組化。商品的資訊主要包括商品名、商品圖譜标簽、交易統計資料等三部分。

a. 對菜名、商品标簽分别進行Self-Attention計算,得到菜名和商品标簽對應的向量資訊,然後與交易統計資料進行Concat,作為商品的初步表示。

b. 對商品的初步表示進行Self-Attention計算,以對同商家的商品有所感覺。

② Deocoder:對搭配關系進行學習,基于目前已選擇的商品,對下一個可能的搭配進行預估。

a. 在搭配輸出時,使用Beam-Search進行多種搭配結果的輸出。

b. 為了保證輸出搭配中的商品的多樣性,添加Coverage機制[2]。

③ 訓練之後,将Encoder部分分離,進行離線排程,可實作每天的向量産出。

具體的模型結構如下圖7所示:

美團外賣美食知識圖譜的疊代及應用

圖7 套餐搭配模型

基于外賣美食知識圖譜建構的套餐搭配模型,在多個入口(“滿減神器”、“對話點餐”、“菜品詳情頁”等)取得轉化的提升。

4.2 互動式推薦

通過分析外賣使用者的需求,發現使用者存在跨店相似商品對比的需求,為打破商家界限的選購流程特點,提供便捷的跨店對比決策方式。互動式推薦,通過新的互動模式,打造推薦産品的突破點。在使用者的互動過程中,根據使用者的曆史偏好、實時的點選行為,向使用者推薦可能喜歡的美食商品。如下圖8(左)所示,在向使用者進行同類美食的推薦時,美食知識圖譜中的标準菜品标簽提供了主要的資料支撐。

4.3 搜尋

搜尋作為外賣核心流量入口,承載了使用者明确的外賣需求。使用者通過輸入關鍵詞,進行菜品檢索。在實際使用中,從搜尋的關鍵詞類型看,可能是某個具體的菜品,也可能是某種食材、某種菜系。在美食知識圖譜中,圖譜标簽的高準确率和高覆寫,有助于提升搜尋入口的使用者體驗,最新的實驗也表明了這一點(新增部分食材、菜系、功效等标簽,在搜尋的線上實驗效果正向)。

美團外賣美食知識圖譜的疊代及應用

圖8 互動式推薦和搜尋

5. 未來規劃

5.1 場景化标簽的挖掘

美食與我們的生活息息相關,美團外賣每天為千萬使用者提供美食方面的服務。然而,使用者的需求是多種多樣的,在不同的環境、不同的場景下,對美食的需求也不盡相同。目前美食知識圖譜挖掘,在場景相關的标簽較為缺失,例如某些節氣、節日等圖譜知識;特定天氣情況下的圖譜知識;特定人群(增肌人群、減肥人群)等的圖譜知識。接下來我們會在場景化标簽的挖掘方面進行探索。

在挖掘方法方面,目前的挖掘資料主要為文本資訊。在商品圖檔、描述、結構化标簽等資訊的融合方面,挖掘不夠深入,模型的效果也有待提升。是以在多模态識别模型方面,我們也會進行相應的探索。

5.2 基于圖譜的推薦技術研究

美團外賣在了解美食的基礎上,向使用者進行美食推薦,以更好地滿足使用者對美食的需求。外賣美食知識圖譜和外賣業務資料,作為實作這一點的資料基礎,包含上億的節點資訊和十幾億的關系資料。通過對使用者的商品搜尋、點選、購買等行為進行模組化分析,可以更加貼合使用者的需求,向使用者進行商品推薦,例如,将美食知識圖譜和外賣行為資料融合,以使用者為起點,進行随機遊走,向使用者推薦相關的美食。在接下來的圖譜應用方面的探索中,我們也會更加深入的探索基于美食知識圖譜和使用者行為的推薦技術。

6. 參考文獻

[1] Kim Y. Convolutional neural networks for sentence classification[J]. arXiv preprint arXiv:1408.5882, 2014.

[2] See A, Liu P J, Manning C D. Get to the point: Summarization with pointer-generator networks[J]. arXiv preprint arXiv:1704.04368, 2017.

[3] Vaswani A, Shazeer N, Parmar N, et al. Attention is all you need[C]//Advances in neural information processing systems. 2017: 5998-6008.

[4] Hamilton W, Ying Z, Leskovec J. Inductive representation learning on large graphs[C]//Advances in Neural Information Processing Systems. 2017: 1024-1034.

7. 作者簡介

楊林、郭同、海超、懋地等,均來自美團外賣技術團隊。 

----------  END  ----------

也許你還想看

  | 大衆點評搜尋基于知識圖譜的深度學習排序實踐

繼續閱讀