國慶連假快到了,Skylar 和 Kristina 預計要去三天兩夜的露營,於是 Skylar 決定在購物網站採購一些露營相關的用具。他拿出事先列好的商品清單,一項一項輸入並加入購物車,過程不免有點繁瑣,無法直接輸入「露營」之後,就在一個頁面中看到所有相關用具。
他想到如果是在量販店的話,店員通常都會把相同主題的商品陳列於同一區。如果有任何需要的內容,其實也可以直接詢問店員「露營需要準備神的東西?」,通常都能夠得到完整的推薦清單。
如果購物網站也能夠如同在實體店面一樣,輸入一個特定主題,就顯示所有相關商品的話,是不是會對消費者更方便呢?甚至,是否能夠讓網站自己有對應的搜尋結果,而非需要人為建立相同主題的頁面呢?
今天,讓我們來聊聊阿里巴巴是如何做到這件事的吧!
阿里巴巴利用 product knowledge graph,建立出 AliCoCo 這套系統,使得其購物網站能夠輕易完成我們上述要求。當消費者輸入「父親節禮物」、「露營」、「海邊」等等不同主題,網站即會自動跳出相對應的主題,甚至配合當時的天氣或其他外在條件,也會生成不同推薦清單。
在討論 Alicoco 的細節之前,先來看看人類會怎麼思考。以 Skylar 的情境為例,當他在陳列「露營」的購物清單時,會先想到「戶外」和「烤肉」兩個概念,再從這三個主題分別延伸出不同商品。
AliCoCo 的基本架構也如同人類的思考模式,將所有商品個別建立一個節點(node),這些節點(node)再連接到更高層次的**「分類(taxonomy)」、「原始概念(primitive concepts)」和「線上購物概念(e-commerce concepts)」**,讓我們來一ㄧ介紹。
線上購物概念(e-commerce concepts)
線上購物概念(e-commerce concepts)是一些用以描述購物情境的短句,例如「戶外烤肉」、「給祖父的聖誕節禮物」或「讓小孩保持溫暖」。
建立這些概念的原因如同上述,阿里巴巴認為消費者不一定知道自己在特定情境下需要什麼物品,若能跳脫既有的分類方式,更能助於用戶搜尋到需要的產品。
分類(taxonomy)和原始概念(primitive concepts)
為了組合較高層次的線上購物概念(e-commerce concepts),阿里巴巴需要一些較低層次的詞彙以敘述情境。舉例而言,「戶外烤肉(online barbecue)」可以拆解成「<事件:烤肉><地點:戶外><天氣:晴天>」。阿里巴巴將「烤肉」、「戶外」和「晴天」稱為原始概念(primitive concepts),再將他們分別歸類在對應的「分類(taxonomy)」下(i.e., 事件、地點和天氣)。
阿里巴巴使用的分類(taxonomy)共有 20 個主要領域(domains),如下圖直接連接 Root 節點的 20 個圓圈,有些領域(domain)會有階層式的架構,如 category、和 time。
然而,有成千上萬種產品,無論是線上購物概念(e-commerce concepts)或原始概念(primitive concepts)都不可能是人為一一標注,阿里巴巴是如何產生這些分類的呢?讓我們繼續看下去。
產生原始概念(primitive concepts)的方式是爬蟲和文字序列標記(sequence labeling tasks),使用購物網站中消費者輸入的搜尋文字(search queries)、產品標題、使用者評價和商品介紹作為文字內容。標記模型是利用 BiLSTMCRF model 執行文字序列標記(sequence labeling tasks),輸入上述的文字內容,輸出為一連串是先定義的類別,而這些輸出都會再經過人為確認。
舉例而言,在商品介紹中的「這是宜家(Ikea)的舒適沙發」會分別被標記為:
至於訓練資料是如何產生?原始概念(primitive concepts)是如何對應到分類(taxonomy),使用的方法稱為上下位關係對應(hypernym discovery)。
上下位關係對應(hypernym discovery)主要有兩個方法:
線上購物概念(e-commerce concepts)是整套架構的核心概念,需要滿足以下幾個條件:
生成線上購物概念(e-commerce concepts)分為兩個階段,第一階段為候選清單產生(candidate generation),第二階段為分類(classification)。
產生候選清單的方式分為兩種:
從消費者輸入的搜尋文字(search queries)、產品標題、使用者評價和商品介紹等等爬蟲而得
使用已知的原始概念(primitive concepts)利用一些規則組合而成,例如將「地點:室外」和「事件:烤肉」組合成「室外烤肉」。其他組合的例子可參考下圖。
最後,訓練一個分類器以判斷爬蟲和組合出的句子是否符合線上購物概念(e-commerce concepts)的條件,以供後續購物網站的使用。
以上為阿里巴巴如何建立出更符合使用者需求的購物網站之介紹。
謝謝讀到最後的你,如果喜歡這系列,別忘了按下喜歡和訂閱,才不會錯過最新更新。
也歡迎到我的 medium 逛逛!
Reference:
X. Luo et al., “AliCoCo: Alibaba E-commerce Cognitive Concept Net.” arXiv, Mar. 30, 2020. Accessed: Sep. 26, 2022. [Online]. Available: http://arxiv.org/abs/2003.13230