當前位置:
首頁 > 科技 > 揭秘:阿里自主創新下一代工業級推薦技術

揭秘:阿里自主創新下一代工業級推薦技術

電商時代,消費者對推薦系統已經不再陌生。驀然回首,你會發現喜歡的商品就在顯眼處。如何設計推薦系統,讓消費者更方便地從海量商品中找到自己的最愛,阿里工程師一直在不斷探索更優的演算法和技術。

以深度學習為代表的人工智慧在圖像、語音和 NLP 領域帶來了突破性的進展,在信息檢索和個性化領域近幾年也有不少公開文獻,比如 Wide& Deep 實現了深度模型和淺層模型的結合,DSSM 用於計算語義相關性,DeepFM 增加了特徵組合的能力,Deep CF 用深度學習實現協同過濾,RNN Recommender 採用行為序列預估實現個性化推薦等。

阿里媽媽精準定向技術團隊,針對大規模候選集上的匹配推薦問題,自主創新提出了一套嶄新的、完整的基於樹結構的匹配和推薦演算法框架,希望藉此賦能任意深度學習模型在推薦匹配中的使用,實現面向全量大規模候選集的精準匹配和推薦。

在即將到來的AICon 全球人工智慧與機器學習技術大會上,阿里媽媽精準定向技術部高級技術專家李晗老師將會帶來關於《深度樹匹配——下一代推薦技術的探索和實踐》的精彩演講,下面是 InfoQ 中國對李晗老師的採訪:

1. 李老師您好,能先請您介紹一下您自己以及您目前在阿里媽媽主要負責的項目嗎?

我是 2013 年從清華碩士畢業之後加入阿里媽媽,主要從事廣告投放演算法這一塊的工作。目前在阿里媽媽主要負責三塊工作,一塊是信息流廣告業務的演算法策略,一塊是整體展示廣告的匹配召回技術體系建設,還有一塊是雲營銷業務中的數據演算法工作。這次 AICon 我會重點介紹一下我們團隊當下在推薦技術方面做的一點探索和創新,我們內部稱為深度樹匹配(Tree-Based Deep Match)。

2. 我們知道推薦業務是互聯網內容提供商進行流量分配的核心業務,推薦技術經歷了從基於統計的啟發式規則方法到基於內積模型的向量檢索方法的轉變,可以簡單談一談這其中的轉變歷程嗎?

推薦的本質是完成用戶(User)和物品(Item)的匹配。但用戶的興趣多種多樣,物品的候選集也非常大,所以推薦技術的核心就是如何從海量物品候選集裡面高效挑選相關商品並排序展示給用戶。這裡面有幾個關鍵詞,第一個是「高效」:高效描述的是性能上的要求,其意味著推薦系統要在儘可能短的時間內完成物品的推薦,暴力計算用戶對所有商品的興趣在商品庫非常大的情況下並不適用。第二個是「相關」:相關描述的是演算法上的要求,其意味著我們需要利用數據和演算法儘可能準確建模和預測用戶對物品的潛在興趣。

結合上述要求,推薦技術也經歷了從基於統計的啟發式規則方法到基於內積模型的向量檢索方法的轉變。基於統計的啟發式規則方法經典代表就是 Item-based Collaborative Filtering(Item-CF),也是阿里集團現在應用最廣的推薦演算法之一。Item-CF 的演算法原理是:首先通過統計計算得到 Item to Item(I2I)的相似關係,其次啟發式地獲取用戶近期行為作為 Trigger Item 集合,用它們進行 I2I 擴展,最後以某種打分規則對擴展後的 Item 集合進行排序,截斷得到 TopK 作為候選集。

我們可以知道這種方法可以有效的控制總體計算次數,因為用戶的 Trigger Item 集合是有限的,相似關係圈定的候選集合也是有限的,從而避免了對全量候選集的計算,同時簡單的打分規則可以有效地控制單次計算時間,兩者使得最終整體方法的計算高效,滿足在線應用的要求。而通過用戶歷史行為找相似的做法也能在一定程度上保證相關性。這種方法在業務初期簡單有效(對比非個性化的方式),在很多推薦場景都有它的身影。但從演算法原理不難看出,這種方法天然存在一大弊端:它限制了嘗試推薦給用戶未曾行為過但可能感興趣的 Item 的可能性。

這種將候選限定在歷史興趣相似範疇內的啟發式規則對推薦效果的提升有限,它降低了用戶體驗(尤其是推薦結果的驚喜度),也制約了系統整體的可持續發展能力。儘管後續我們可以引入更複雜的機器學習方法來優化排序,例如 FM(因子分解)或者深度學習,但它們都依賴於前序階段給出的候選結果,所以無論如何複雜的模型都突破不了候選集給定的上限。

要進一步提升推薦的效果,就必須在兩個方面破局:第一個是打開全量檢索的天花板,推薦技術真正能對全量候選集進行挑選,而不只是利用啟發式規則限定候選集;第二個是打開模型能力的天花板,利用數據和模型的能力提升用戶對商品的興趣度預估,而不是像 item-CF 一樣基於簡單的打分規則就得到最終的候選。圖像檢索領域的進展在驅動推薦技術的發展上起到關鍵作用,在以圖搜圖的具體應用中,研究人員將圖片的相似關係作為學習的目標,通過表徵學習將圖片轉化 embedding 向量,用向量之間的距離(歐式或者內積等)表示圖像的相似關係,構建向量檢索引擎來實現具體應用。

沿著這條思路,人們在推薦問題上提出了以向量距離的方式衡量用戶和商品興趣度的方法,用戶和商品被表示成向量形式,並以此為基礎建立基於向量聚類的索引結構進一步加速檢索效率。採用向量檢索的技術方案首先完全打開了全量檢索的天花板,因為用戶興趣表徵的向量和全量商品的向量計算距離可以利用距離的性質高效找到最近鄰。其次在模型能力上也有一定提升,我們引入機器學習的理念學習內積式模型來刻畫用戶和商品的興趣度,能有效的提升精準度。所以內積式模型和向量引擎成為了最近幾年匹配領域技術革新的最重要技術。尤其是去年 Facebook 的 Faiss 框架開源,極大降低了業界嘗試向量引擎的難度,對行業發展起到了極大的促進作用。至此,基於內積模型的向量檢索方法引領了第二代匹配和推薦技術的潮流,在各類學術會議和工業實踐中大放異彩。

3. 我們看到您提到說,基於內積模型的向量檢索方法雖然對比上一代技術有其優勢,但是還是有局限性,可以談談它的技術缺陷嗎?

內積檢索這類方法雖然在模型能力有提升,但並未實現充分利用機器學習解決匹配問題的初衷,對機器學習模型的限制太大。高階深度學習大部分都不可劃成內積形式,比如 CTR 預估里用戶和商品特徵交叉非常有用,大部分不可用內積表示。而在現有深度學習中內積模型的表達能力被證明是有限的,比如將內積模型中最後的內積運算直接換成多層感知機能大幅提升模型能力,而多層 PNN,Deep Interest Network(DIN),Deep Interest Evolution Network(DIEN)等對用戶興趣更有洞察力的複雜模型效果被證明能極大的超越內積模型。與此同時,我們也發現在具體實踐中,向量檢索演算法要求 User 和 Item 能夠映射到統一的向量空間。User 輸入信息和 Item 輸入信息一般並不同質,如何保證映射到統一目標向量空間下的檢索精度對映射演算法提出了嚴格的要求,換言之,統一的向量空間映射對運用向量檢索來解決推薦問題帶來了精度損失的風險。

4. 您的演講提綱中提到了阿里目前使用的是自主提出的深度樹匹配技術 Tree-based Deep Match(TDM)這一全新的推薦演算法框架,可以簡單介紹一下這個框架嗎?它的優勢在哪裡?

在談這個框架之前,先談一下我們做這個框架的初衷,結合前面所言要推動推薦技術進一步發展,核心要在全量檢索和模型能力兩個方向上破局。因此我們構思能否設計一套全新的推薦演算法框架,它允許容納任意先進的模型而非限定內積形式,並且能夠對全量候選集進行更好的推薦。第二代基於內積模型向量檢索的方案,限定模型結構以實現檢索效率的提升,因此要想進一步釋放模型能力就必須使得整體檢索結構的設計與模型結構的設計解耦(向量內積檢索與內積模型即是一種強耦合關聯)。假使我們能夠使用類似點擊率預估問題一樣的複雜模型完成用戶對具體商品的興趣度預估,但是考慮到要全量檢索的要求,在系統能力有限的情況下,簡單粗暴完成對全量商品打分再排序的方案明顯是不現實的。這裡就有一個思路轉換,我們要實現全量檢索,但並不意味著我們需要通過全量計算來實現,如果我們能夠設計一種高效的檢索結構來縮減計算次數實現全量檢索,則有可能承載先進模型的使用。面對一個複雜問題,人腦常有的一個思考方式是先從大的層面入手,確定大方向後具體細化。我們也從這個角度入手,思考是否可以有一種從粗到細的檢索方式,逐步判斷並細化,最後給出最優推薦。基於這個思考,我們把探索方向定位在了使用層次化樹結構增加檢索效率上。

模糊的上層概念想起來容易,概念上萬物皆通,真正難的是否能在數學和技術上構建出一條真正可行的路徑。就推薦問題而言,樹檢索結構的引入伴隨著一系列的問題要解決:

1、如何圍繞樹結構實現高效的檢索;

2,如何基於樹進行匹配建模;

3、樹結構是如何構建的。

結合這幾個問題的解法,我們構建了深度樹匹配技術Tree-based Deep Match(TDM)這一全新的推薦演算法框架的內核。首先是基於樹結構如何進行高效的檢索,如果假定全量商品對應於樹結構的葉子節點,則 topK 檢索意味著我們要從葉子結點中挑選 topK 用戶感興趣的節點。我們知道樹結構都是自頂向下逐層檢索,而進行高效檢索的關鍵點在於自頂向下過程中要能快速剪枝,因此我們採用了 beamsearch 的方案,根據用戶對樹上節點的興趣度預估逐層挑選 topk 節點,將其子節點作為下一層挑選的候選集合,這樣每層非 topk 節點就可以停止搜索,要完成 topK 的挑選,整體的計算量是 O(C*log_C N*K),C 是樹的分叉數,N 是全量葉子商品數。講完檢索策略,自然而然就會引出來一個問題:我們為什麼可以在樹結構採用類似 beamsearch 的高效檢索策略?為了配合樹結構上的高效檢索策略,我們進而提出了興趣最大堆的匹配建模,其假定用戶對樹上各個節點的興趣正比於對其子節點興趣的最大值。基於興趣最大堆的假設,我們能夠保證在樹上做 beamsearch 可以找到最優 topk。在具體的實現層面,我們通過構建符合最大堆概率的樣本去牽引模型逼近最大堆性質來完成模型學習。值得注意的是,在這裡我們只要求興趣模型去擬合我們根據樹結構生成的樣本,而對模型結構沒有限制,因此實現了模型結構和檢索方式的解綁,打開了模型能力的天花板。對於樹結構如何構建這個問題,我們從降低樣本混淆度的視角提出一套方案。

綜上所述,我們提出的深度樹匹配技術 Tree-based Deep Match(TDM)這一全新的推薦演算法框架,整合了推薦技術中索引構建(樹結構生成),興趣建模(最大堆興趣建模)和檢索策略(樹上 beamsearch)三大環節,並同時打開了全庫檢索和模型能力的天花板。

5. 從下一代工業級推薦技術持續發展的視角,深度樹匹配技術進一步發展面臨的挑戰是什麼?

在迭代深度樹匹配方案的過程中,我們也發現打開了工業級推薦技術進一步發展的潘多拉魔盒。在上文中我們講到了,深度樹匹配技術通過最大堆的性質鏈接了索引構建,興趣建模和檢索策略三個推薦技術的核心模塊,而最大堆性質是從數據中學習得到的。因此我們思考下一代推薦技術不止於全庫檢索 + 先進模型,而是數據驅動下三大模塊(索引構建,興趣模型,檢索策略)的聯合端到端優化學習。而沿著這個發展的思路,深度樹匹配技術還面臨一系列的挑戰:首先是如何真正的實現數據驅動的端到端三大模塊聯合優化,例如索引構建能否和興趣模型交替優化;其次在面向業務實際應用的過程中,我們如何從興趣類召回切換到面向業務目標最大化召回,例如廣告領域要考慮收益最大化召回;最後在技術框架層面,我們需要抽象公共可復用的框架來支持整體技術的平台性輸出,實現不同業務場景的快速靈活復用並取得效果,才能真正成為影響一代推薦技術發展的核心技術。

6. 您覺得阿里自主創新提出的這套框架對於關注推薦技術的業界來講它的價值是什麼?未來又會怎樣繼續演進呢?

無論是新聞、視頻、音樂、電商,推薦從一開始就面臨著大規模海量數據的挑戰,而技術的發展總是關注在整合演算法,算力,數據的基礎上如何更好的解決問題。我們認為數據驅動下的索引構建、興趣模型和檢索策略的聯合端到端學習,是推薦技術下一步發展的重要方向,而深度樹匹配這套框架則是我們沿著這個方向做的一些有益的探索和嘗試。深度樹匹配通過數據洞悉人對興趣的認識、感知和交互,並以此發掘出普適且通用的興趣層次組織結構,之於上建立了一整套行業通用的、可容納任意先進深度模型的匹配推薦框架。以深度樹匹配技術為基礎,我們進一步探索和嘗試數據驅動下的索引構建、興趣模型和檢索策略的聯合端到端學習方向。未來我們將基於深度樹匹配框架深入探索技術縱向發展和業務橫向擴展的可能,全面支撐包括推薦、搜索、廣告之內的互聯網主流業務。

推薦問題紛繁複雜,推薦技術博大精深,深度樹匹配這一探索和嘗試,仍需要更多技術創新的滋補和業務融合的錘鍊,我們希望深度樹匹配技術給業界推薦技術的發展起到拋磚引玉的作用,希望啟迪大家的智慧,群策群力給推薦技術帶來真正突破性的變革。「獨樂樂不如眾樂樂」,深度樹匹配的整體離線訓練框架將於本月(12 月)中旬隨阿里深度學習框架(X-Deep Learning)一起開源,請推薦業界的同仁給以關注和指正!

AICon 將於 12 月 20-21 日在北京國際會議中心舉辦,想要跟李晗老師面對面交流的,歡迎到現場面基。另外,大會還有來自 Google、微軟、亞馬遜、BAT、位元組跳動、京東、華為等 40+AI 落地案例的年終總結,乾貨滿滿,不可錯過。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 InfoQ 的精彩文章:

微服務架構下的監控需要注意哪些方面?
負載均衡常用手段解析

TAG:InfoQ |