邁向電商認知智能時代的基石:阿里電商認知圖譜揭祕

阿里妹導讀:電商平臺最大的挑戰是從日益增加的海量商品(數十億)中挑選出的一個小的子集(幾十或上百)展現給用戶,以知足用戶的個性化的購物需求。爲了解決仍存在的重複推薦、缺乏新意等問題,咱們提出建設大規模電商認知圖譜。

今天,搜索推薦事業部認知圖譜團隊全面總結了目前在構建電商認知圖譜方面的探索,主要介紹認知圖譜的定義、總體的構建思路,構建過程當中一些具體的算法問題,和最終在搜索推薦上的應用。算法

背景

縱使近年來電商搜索、推薦算法已經取得了長足的進步,但這些算法依然存在許多問題,如推薦中常常爲人詬病的重複推薦、缺乏新意等。究其本質,這是由於現有的算法主要仍是沿襲「商品到商品」的思路,並非直接從用戶需求來驅動的,甚至對用戶需求沒有一個清晰的定義。而另外一方面,理解並知足用戶需求又是這些算法所要達成的最終目標,這二者之間的有着自然的隔閡。網絡

爲了打破這個隔閡,讓搜索、推薦算法更好地認知用戶的需求,咱們提出建設大規模電商認知圖譜(E-commerce ConceptNet),將用戶需求顯式地表達成圖中的節點(稱爲E-commerce Concept),並將這些需求點和電商領域內的商品、類目,電商外部的通用領域知識等關聯起來,爲商品認知、用戶認知和知識認知提供統一的數據基礎,併爲下游搜索推薦算法提供新的優化思路和更多的可能性。dom

什麼是e-commerce concept?ide

前面提到,咱們將用戶需求稱爲「e-commerce concept」: 一個有商品需求的概念,通常狀況下以一個符合常識,語義完整,語序通順的短語表示。例如:「連衣裙」、「兒童防走失」、「燒烤必備」、「寶寶保暖」、「波西米亞連衣裙」、「春節慶祝」等。這些concept須要知足以下的基本原則:性能

如上所示,右邊的短語均違背了電商概念的基本原則,因此在實際挖掘過程當中都是會被過濾掉的。進一步,咱們將concept分爲了三大類:學習

  • 購物場景(shopping scenario):表示一類非特定品類的用戶需求,場景感較強,如「兒童防走失」、「春節送禮」等。
  • 泛品類(extensive category):表示一類有特定品類的用戶需求,能夠是不加修飾的純淨品類,如「連衣裙」、「水果」等,也能夠是有屬性限制的品類,如「韓版波點連衣裙」、「兒童羽毛球拍」等。
  • 通用概念(general concept):表示一類通用的概念,能夠和電商外部的開放領域知識相關聯,如「防曬」、「燒烤」、「老人」等。

E-commerce concept從哪裏來?優化

在明確了定義和基本原則以後,咱們須要挖掘大量的concept用以覆蓋各式各樣的用戶需求。目前,咱們認爲用戶在使用淘寶或天貓搜索時輸入的搜索詞(query)和商品的標題(title)是concept挖掘能夠利用的最大來源。而咱們的工做主要是要將知足咱們上述原則的concept短語,從充滿噪音的query、title中挖掘出來,這一步稱爲「Concept Mining」。spa

Concept Mining主要分爲兩步,一個是候選生成(Candidate Generation),另外一個是概念正確性判斷(Concept Classification)。整體流程以下:設計

其中,候選的生成分爲兩塊,一塊是使用AutoPhrase按照字粒度從句子中切分出來的短語信息,一塊是經過序列模板抽取器(Sequential Pattern Extractor)作頻繁序列挖掘後的模板信息,結合2-gram的統計語言模型,獲得concept候選。在獲得候選後,咱們會利用一個判別模型來融合語言模型embedding,concept的序列信息,以及規則先後綴,pv統計等特徵,判斷concept是不是符合要求的。對象

Candidate Generation

咱們首先經過pattern抽取器從現有的正負concept中提取pattern並計算權重,而後經過這些pattern,並結合三個窗口內的統計語言模型,進行候選的剪枝,最後生成的候選基本都是符合語序,知足基本常識的。

Concept Classification

咱們一方面結合一些簡單的規則進行特徵抽取,另外一方面,利用現有的序列特徵訓練Wide&Deep model,來進行concept的合理性判斷。在初始數據的處理方面,因爲咱們大部分的concept都是短文本,而query和title中大部分的term序列不符合正常的語序,咱們還利用長文本的parsing infomation進行候選抽取和截斷,訓練了ELMo做爲基礎的語言模型,並在一樣長度的gram內調整語序,來獲得最佳的序列信息再給判別模型。

Ontology

在明確了e-commerce concept的定義並挖掘出了大量的concept後,咱們會疑惑,concept做爲一個詞(phrase),除了name以外,沒有分類(domain),沒有描述(description),也沒有屬性(attributes),怎麼叫」圖譜「呢?這麼少的信息量如何能在下游應用中起到做用呢?concept要成爲圖中的節點,那咱們的圖究竟是什麼呢?

爲了更好地理解e-commerce concept,同時和外部知識圖譜對齊,引入更多的通用知識,咱們定義了一套電商認知圖譜的本體(Ontology),用以描述實體、概念的屬性和其之間的關係。實體表示客觀世界存在的具體實例,例如,歌手劉德華爲一個具體的實例。概念表示客觀世界中的寬泛概念,例如,娛樂明星爲一個泛指的概念。分類體系與屬性關係定義(Schema),包括定義實體和概念的類別,以及實體和概念具體的屬性與屬性值。例如,在分類體系中,歌手劉德華屬於人物→娛樂人物→歌手,屬性包含出生日期,表明做等。

在這裏,咱們參考Schema.org、cnSchema.org中對客觀事物進行描述的結構,創建了以事物類(Thing)爲根節點的電商知識圖譜底層本體分類體系。在事物類的子類中,包括「動做」、「創做品」、「活動」、「無形物」、「品類」、「醫療實體」、「機構」、「人物」、「地點」共9大類。每個子類又有其本身的子類,每個子類將繼承父類的全部屬性和關係。具體結構以下圖所示:

本體分類體系,其中括號內內容爲類別對應的中文名和英文縮寫

在這裏,中心白色節點爲事物類,是全部類的根節點。環繞在事物類周圍的9個節點是事物類的直接子類。其中每個類別又有本身的節點。在該圖中,以無形物類爲例,受衆類是無形物類的子節點,而受衆:動物類、受衆:身體部位類、受衆:人羣類、受衆:植物類是受衆類的子節點。在經過結構化、半結構化、非結構化數據進行知識獲取時,數據按照該分類體系進行錄入。

如前文所述,電商認知圖譜的終極目標是刻畫用戶需求,所以,在本體中咱們定義了多個電商專用類來對電商環境下的客觀世界進行建模:

  • Brand (品牌) Category (品類):品類是顧客在購買決策中所涉及的最後一級商品分類,由該分類能夠關聯到品牌,而且在該分類上能夠完成相應的購買選擇。品類中的實例是咱們進行本體構建過程當中重點挖掘的內容。
  • Audience (受衆):受衆是商品直接對應的購物人羣或種羣,是電商場景下一個很是重要的分類。受衆類下包括四個子類:受衆:動物、受衆:身體部位、受衆:人羣、受衆:植物。
  • Style (風格):對於一件商品,必定會有其特有的風格來吸引購買的人羣,風格類主要對其進行描述。風格類下包括六個子類:文學風格、音樂舞蹈風格、氣味風格、觸覺風格、口味風格、以及視覺風格。
  • Function (功能):對商品進行功能的具體描述,能夠精準的定位商品,將商品和需求直接聯繫起來。功能類下包括四個子類:美妝功能、服飾功能、保健功能、家居功能。
  • Material(材質):所謂材質,簡單的說就是物體看起來是什麼質地。經過材質對商品進行描述,可使商品更加具體化。

屬性是詞彙固有的屬性,好比「別名」、「描述」等;關係是本體詞彙之間存在的客觀聯繫,如Person類中實例的「出生地」將連接到另一個Place類的實例中。在本體的分類體系中,每一個類別都有其特有的屬性和關係,子類將繼承父類全部的屬性和關係。在這裏,咱們以事物類和品類類爲例,介紹屬性和關係,具體以下圖所示:

事物和品類的屬性&關係

  • 事物類:在該類別中,咱們定義了「別名」、「描述」、「圖片」、「名稱」共四個屬性和關係。「別名」其實是當前詞彙的一個同義詞,是一個屬性;「描述」是對當前事物特色的一種描述;「圖片」能夠鏈接到另一個「圖片對象」,其實是兩個事物之間的關係;「名稱」是當前事物的標準的名字。
  • 品類類:品類類是事物類的直接子類,將直接繼承事物類的全部屬性和關係。與此同時,品類類含有本身特有的屬性「品類類型」。

本體分類體系下全部的類、子類均有其特有的屬性和關係,在對本體中的每一個類別進行建模時,咱們定義了140+個屬性和關係。

在進行本體詞彙構建時,咱們充分調動集團內各大BU的優質結構化資源,來源包括淘系、優酷、飛豬、神馬等等,對多來源的結構化、半結構化數據進行知識的整理與融合。具體的,若是將多來源結構化數據當作不一樣來源的知識體系,獲取和融合就包括了本體和實例的匹配(Ontology/Enity Matching)和知識融合(Knowledge Fusion)。

咱們採用了基於文本特徵的匹配方法,對多來源的數據進行了批量的合併。咱們定義的知識融合任務是:在同一個類別下,含有相贊成義的詞彙須要合併爲一個id,其中最爲常見的詞彙做爲主鍵,其餘同義詞匯做爲別名。如「老漢」與「老朽」是同義詞,在同一個id下,「名稱」屬性內容爲「老漢」,「別名」屬性內容爲「老朽」。在匹配的基礎上,經過沖突檢測,Truth Discovery等技術將知識進行一致性的合併消解。對於衝突,處理方法包括忽略,避免和消解。

常見的消解方法包括:Voting、Quality-based、relation-based的方法。咱們採用的是Quality-based的方法,對single-valued attribute進行消解。最終經過整理和融合結構化數據,獲取了百萬級的實體和Concept數據。

天然文本以非結構化的形式存在,包含了大量豐富的語義關係,描述了客觀世界裏面實體,概念以及相互之間的關係。所以,對文本的理解也成爲了獲取實體和概念信息的重要來源。實體和概念做爲圖譜的關鍵元素,對其在文本中的識別成爲了知識獲取的重要技術。其中命名實體識別(NER)將文本中說起的實體進行劃分並歸類,能夠從海量語句中挖掘指定類別的實體。咱們採用基於遠程監督(Distant Supervision)的序列標註模型,標註的類型標籤包含上文提到的事件,功能,對象,時間,空間,品類,風格等多個大類。

至此,咱們搭建了一個爲電商設計的ontology體系,並擴充了大量的實體、概念、屬性和關係,也能夠將其看作一個普通的電商知識圖譜。

從知識圖譜到認知圖譜

上文介紹的認知圖譜本體結構(Ontology),包含了比較完整的分類法以及相應的schema,並融合了大量的外部、電商實體、概念和屬性關係,是一個比較初級的電商知識圖譜,其目的是爲告終構化咱們挖掘獲得的大規模的e-commerce concept,將這些concept連接到圖中成爲節點,讓「知識圖譜」真正邁向了「認知圖譜」。這一步叫作Concept Tagging。

理想狀況下,咱們但願concept通過分詞後,每個詞單元都可以連接到本體詞彙庫的詞彙上,從而得到相應的知識體系,可是因爲本體不必定能覆蓋所有的concept詞彙,致使concept只有部分可以被連接,屬性關係並不完整。其次,本體中存在一詞多義的問題,相同的詞彙具備不一樣的類型,所以須要進行詞義消歧。而concept一般是短文本,上下文十分有限,常規的序列標註模型並不能取得可觀的性能,而且目前的本體分類體系是樹形結構,存在一個詞彙分佈於同一個大類,不一樣小類中。例如,「丹麥」這個詞的類型有「空間→國家」以及「空間→行政區」,這也爲詞義消歧帶來了難度。

咱們的目標是準確地將concept連接到本體詞彙庫的詞彙上,輸入是concept列表以及本體庫,輸出是對應的詞彙及類型:

針對上述難點,算法的總體流程圖以下:

下面咱們將針對圖中的模塊具體說明:

1) 基於詞典的最大正向匹配及前綴匹配:給定一個concept,算法首先使用最小粒度分詞,將concept切分紅詞,而後使用最大正向匹配算法,從左到右將分詞後的concept的幾個連續詞與本體庫的詞典匹配,若是匹配上則返回本體詞彙及類型(ID)。

在這個過程當中,存在匹配上的詞在本體分類體系中的不一樣位置中,即一詞多義的問題,在這裏,咱們將全部的可能候選返回,以供後續消歧處理。值得一提的是,咱們在使用詞表的時候,並無使用所有的詞表,其中的品牌表和IP表(名人、做品、電視電影等)很是龐大,歧義詞不少。

例如,咱們平時十分常見的高頻詞也會是一個IP詞,但大多數狀況下並不表示一個IP。所以咱們在最大正向匹配的過程當中去除了這一部分數據,而是增長了一個前綴匹配的模塊,將未標識的前綴與品牌表和IP中的人名錶進行匹配,可以進一步的提高覆蓋度。

2)詞義消歧: 與常規的消歧方法不一樣,concept一般由短文本組成,上下文可以提供的信息十分有限。所以咱們選用了序列標註模型來學習詞彙類型的組合,例如:「對象」+「風格」+「品類」等等。因爲考慮到不一樣行業下,詞彙的類型不一樣,例如,「拼接」這個詞,在「服飾」領域下,「拼接針織連衣裙」中的「拼接」類型爲「風格」,而在「傢俱燈具」領域中,「拼接水管」的類型爲「功能」,所以咱們使用了attention機制來學習領域相關的信息。序列標註的模型以下圖所示:

獲得序列標註的模型輸出後,再根據單詞的sense候選,輸出最終的tagging結果。後續會嘗試將序列標註做爲特徵,再結合concept的其餘特徵,使用分類模型來對候選sense打分排序。

3) 細粒度的tagging :在存在問題的討論中,咱們提到了存在一個詞彙屬於相同大類不一樣小類的狀況。一般序列標註模型的標籤類別只有十幾種,而目前咱們的本體庫分類體系中包含幾十種甚至上百種類型,傳統的序列標註模型並不可以解決這個問題。所以,咱們須要更細粒度的序列標註模型來進一步消歧。

4) 對齊長文本召回:通過詞表匹配與詞義消歧後,因爲現有本體庫並無涵蓋concept中全部的詞彙,所以咱們須要tagging未標識的term,並識別出相應的類型,能夠迴流本體庫。一種可行的方式就是利用大量電商領域的長文本句子,將concept遠程對齊到長文原本進行序列標註,從而將未標識的term召回。

認知圖譜中的邊

知識圖譜的關係是機器可以理解知識的關鍵。關係類型由頭尾節點類型決定,節點能夠是vocabulary、concept、entity的任意一種。目前咱們定義了19中關係類型,並用三元組表示全部節點之間的關係。這些關係包括「is_related_to(相關)」、「isA(是一種)「、」has_instance(有實例)「、」is_part_of(是一部分)「等。 這裏重點介紹對電商場景用途最大的兩種關係:

concept-isA-concept

例子:波西米亞連衣裙 isA 連衣裙。

電商需求大部分是品類需求,對品類需求的語義表達相當重要。isA關係使得咱們的concept從偏平的結構變爲圖的結構,對機器理解語義很是重要。 一般,isA關係的構建包含兩個步驟:

  1. 在大規模文本語料中抽取isA關係,這裏主要包括模板匹配(pattern-based)和基於向量表示的isA關係預測(distributional)
  2. 在第一步抽取獲得的isA關係集合中構建層次結構,例如去重,消歧,去環等清洗工做以及補充更細粒度的isA關係。

而在電商認知圖譜構建的特殊場景中,isA關係構建的主要難點在於:

  1. 電商是一個垂直領域,尤爲在淘寶這樣一個"只有你想不到,沒有淘寶買不到"的平臺,涉及的品類五花八門,有很多品類詞相對冷門但又十分重要。
  2. 電商相關的文本語料稀缺,品類詞在語料中的共現很是稀疏,給抽取帶來了極大的難度。針對這些難點,咱們正在着手設計一套人工+算法不斷迭代優化的active learning流程,但願爲後續的concept理解和推理應用提供可靠的支持。

concept-is_related_to-item

在現有電商環境下,構建概念和商品之間的is_related_to關係也會面臨諸多挑戰:概念太短、商品標題堆疊、無關詞語、商品屬性錯誤、商品圖文不符等,這些會形成匹配錯誤或者帶來歧義。

針對上述問題咱們採用的總體方案流程以下:首先使用文本匹配/i2i/語義模型的方式進行將concept與item (title、描述)進行語義匹配,而後會根據concept到category分數進行校準,再通過消歧後,最終會根據概念間關係進行商品的合併。下圖是深度語義匹配模型的一個示意:

完整的大圖

講到這裏,電商認知圖譜的大圖也呼之欲出了:

如上圖所示,完整的認知圖譜包含如下幾個部分:

  • Concept:表達用戶需求的最重要的語義節點。
  • Ontology:一個爲電商設計的知識圖譜的分類體系、schema,經過與concept的鏈接造成最終的認知圖譜,能夠融合外部知識圖譜數據,引入電商中很難直接挖掘到的常識。
  • Relation:咱們定義了十幾類關係,用於描述不一樣節點之間的語義,是機器理解語義的關鍵。
  • Item:基於圖譜構建大規模的concept、vocabulary和relation,能夠更加精確的理解商品。
  • User:基於圖譜構建大規模的concept、vocabulary和item attributes,能夠更加精準的理解用戶需求、推理用戶需求。

應用

顯式應用

電商認知圖譜現已在淘寶搜索推薦等多個產品落地應用,主要的產品形式是以concept爲載體的主題卡片,如首頁猜你喜歡瀑布流中的」購物百科「:

寶貝詳情頁中的場景推薦:

隱式應用

經過電商認知圖譜提供的以concept爲核心的點、邊關係數據,爲搜索和推薦算法增長了新的信息粒度和信息結構,會帶來更大的想象空間,能夠更好地知足多樣的用戶需求。

同時,不少新的基於認知圖譜應用的課題咱們還在進行中,如:

  • 可解釋推薦
  • Knowledge Graph Embedding
  • 推理式推薦

總結和展望

認知圖譜的建設須要耗費大量的資源,涉及領域普遍,內容繁雜,離不開算法、工程、運營、以及大量衆包/外包資源的幫助。本文只是淺顯地總結了從算法工程師的角度來說述的認知圖譜構建,不少模塊仍在探索和優化中。

咱們相信,以更好地認知用戶需求爲目標的電商認知圖譜,將助力搜索推薦等從基於行爲的方式邁向基於行爲與語義融合的認知智能時代,將是平臺生態穩定和日益進步的重要基礎。

關於咱們

阿里巴巴集團搜索推薦事業部認知圖譜團隊,旨在打造全球最大的中文電商知識圖譜,支持包括淘寶、天貓優酷乃至海外電商在內整個阿里集團的推薦與搜索業務,天天服務上億用戶。電商"認知"圖譜,從電商場景下的用戶需求出發,不侷限於傳統的商品圖譜,而是一個鏈接商品,用戶,購物需求,以及各種開放領域知識、常識的大規模語義網絡。



本文做者:華仔

閱讀原文

本文來自雲棲社區合做夥伴「 阿里技術」,如需轉載請聯繫原做者。

相關文章
相關標籤/搜索