4個方面聊聊:電商搜索算法技術的演進
搜索推薦算法多年的發展,就是圍繞著商品與人的連接以及相應的商業訴求,從最初簡單的統計模型、機器學習到形成完整的離線在線與實時的深度學習與智能決策體系,讓連接匹配的質量更高,連接的廣度更寬。
2018年9月28日,阿里電商搜索事業部迎來了一場以“搜·薦未來”為主題的技術峰會。
搜索與推薦算法經過多年的發展,從最初簡單的統計模型,機器學習到形成完整的離線在線與實時的深度學習與智能決策體系,每年都有新的算法突破,幫助搜索與推薦的體驗與效果取得大幅提升,成為驅動電商商業創新與發展的新引擎。
站在今天總結過去的算法演進,同時看未來電商搜索推薦算法的發展,期待從機器智能到結合人類智能做到真正地認知智能,實現搜索推薦新的交互新體驗。
今天,我們邀請青峰老師,帶你回顧搜索算法技術的發展之路。
一 、淘寶搜索的一些特點
淘寶有幾十億商品,掛靠在幾千個葉子類目,上百個一級類目,十幾個行業下面。如何能讓用戶找到符合意圖的商品,是淘寶搜索需要解決的首要問題。
淘寶搜索從大的架構或流程上來說,與傳統的搜索引擎有不少相似的地方。包括對數據的整理、分析、索引產生索引庫,如何根據用戶輸入的關鍵詞在索引倒排表中進行檢索,完成商品與檢索之間的相關度評價,對將要輸出的結果進行排序,并實現某種用戶相關性反饋機制等。
當然作為電商的商品搜索來說,它天然的商業屬性帶來的更多是自身獨特的技術特點。
從數據更新角度來看,淘寶的數據變化和更新非??臁?/strong>每天大量的新商品數據被上傳到網站,一旦新商品被上傳,這個商品就需要被搜索到。不像網頁搜索,任何人可以發布新的網頁,但是否被搜索引擎收錄是另一回事。
同時在淘寶每天有大量的商品不停地在做更新,包括商品標題描述的變化,商品價格的改變,商品圖片的更新,商品的上下架等等,這些變化也需要實時的更新到搜索中,以便讓用戶及時找到更新后的商品信息。而在全網搜索中,很多網頁是靜態不變,網頁之間的相互關系也變化緩慢,大量索引的更新沒有類似淘寶搜索這種實時性的需求。
從搜索數據源來看,淘寶商品的圖片在用戶研究和購買過程中起到了很大作用,搜索的展現結果中有很大一部分被圖片所占據。如何更有效地利用圖片的信息,無論是根據圖片來做檢索,或是考慮圖片的質量,圖片與文本的相互關系等都是淘寶搜索需要考慮和處理的。
另外一個特點是全鏈路特性。搜索,比較以及購買都發生在淘寶站內,不像一般的全網搜索引擎,用戶搜索完后就跳離到其它網站,搜索前和搜索后的用戶行數據是很難拿到的。
而在淘寶搜索,用戶搜索完后,會點擊其中一些商品,然后比較這些商品,和賣家進行溝通,然后下單購買,或者返回來繼續搜索。搜索前,搜索中和搜索后的數據和信息非常豐富,有全鏈路的用戶行為數據能幫助我們設計一個更好的搜索排序算法。
最后更重要的一點淘寶是一個生態系統,而搜索排序算法的設計,不只是體現了搜索本身的技術追求,也包含了更多的商業訴求。在全網搜索中,一般的網頁是不是被索引,被索引后是不是能展現,對網頁的擁有者來說并不是一個事關生活的決定點。
在淘寶上則完全不同,很多商家依賴于淘寶來解決民生就業問題,網店的流量以及成交關系到很多人的生活。在淘寶搜索的算法設計中,既要考慮用戶的搜索體驗,也要考慮商業規則來保障公平性和流量的分散性。很多的搜索算法原理,規則或算法結果都會向賣家宣導,引導賣家向更好的方向發展。
二、搜索算法技術演進
作為淘寶海量消費者與平臺的互動行為,大量商家在平臺進行的商業活動的最主要承載者,淘寶搜索是大數據智能化應用的最佳場景。
在淘寶搜索算法多年的發展過程中,依托于工程架構體系的逐步完善,逐步實現從簡單人工運營加簡單算法規則的時代,到形成完整的離線在線與實時的深度學習與智能決策體系,成為阿里電商平臺流量分發與商業驅動的智能中樞,總結搜索算法技術的迭代進步,大概可以分成如下四個階段:
2.1 檢索時代
這個階段和業務相對應,搜索排序主要圍繞規則和輪播展開。這個階段數據量和用戶量還處于可控程度,具有領域知識的專業運營和產品往往充當信息展示規則的制定者,根據主觀的判斷和對市場的敏銳度來制定查詢詞背后的商品展示邏輯。
當然這個階段搜索也會運用一些基本的算法邏輯來保證信息匹配的正確性和人貨匹配的公平性,基于傳統搜索引擎技術的相關性模型,保證用戶查詢詞語商品標題的有效匹配;基于商品成交與否的銷售人氣模型,保證有助于被消費者接受的商品得到更多的展示機會。
但總體來說還是基于人工規則把各種相關因子進行組合,得出最后的排序。“人工規則”的好處是容易理解和操控,壞處則不言而喻,隨著平臺規模的增大,簡單規則無法精細的表達人貨匹配的效率,并且容易被一些不良商家利用規則來擾亂市場秩序;
2.2 大規模機器學習時代
隨著平臺規模的擴大,大規模商家入駐,積極地在平臺上打理店鋪,發布商品,相對結構化的商品組織體系、類目結構、屬性信息、基于商品為key 的銷量的累積、評論的累積,這些為更好地理解商品積累了重要的原始數據資料。
消費者通過搜索產品的各級頁面與平臺的互動越來越頻繁;數據的組織形成了以人為key 的結構體系;反饋信號也得以在閉環系統中有效的流轉,所有的這些都為理解用戶積累了重要的數據資料。
有效數據的積累為大規模運用機器學習技術解決問題提供了必要的土壤,搜索也進入到各種大規模模型的研究和開發,比如:點擊預估模型等,研究數據特征規模大、特征復雜度高、數據時效性高、模型訓練頻繁等相關的問題,利用不斷增強的計算處理能力,對百萬乃至十億量級以上的超大規模數據進行分析和挖掘。
這時候參與排序的因子也越來越多,從一開始的類目相關性與文本相關性,商品人氣分;再后來為了平衡賣家流量,加入的賣家分;再后來為了更好的用戶體驗,加入了個性化人與商品的點擊預估,圖像質量等因素等等,開始使用類似Learning to Rank(LTR)方法,根據商品的點擊、成交數據構造學習樣本,學習回歸出排序權重。
2.3 大規模實時在線學習時代
首先,相比通用搜索,電商搜索中對于實時計算/學習有著更高的要求,用戶會有著更豐富的多維度的交互,更長的瀏覽鏈路。因此,如果用戶在鏈路前期的行為可以實時地被系統捕捉并且建模到引擎中并且作用于鏈路后期,對整個鏈路的效率以及用戶體驗都是及其關鍵的。
其次,用戶的行為分布也不是一成不變的,從而打破離線訓練的監督學習算法所依賴的獨立同分布假設。尤其是在雙11這樣的大促場景,一天的流量和日常數天的相當,分布變化會更加的劇烈。
最后,由于搜索展示商品的有限,能夠進入日志系統得到用戶反饋的商品集合只占商品全集的一部分。因此離線訓練和線上會有不一致性,這個不一致性在一定程度上可以通過在線學習系統緩解。
于是,我們建設了一套實時計算和在線學習系統,支持在秒級別內對海量用戶行為及其相關聯的海量商品作實時分析處理,從中提取多維度的用戶/商品數據特征,并采用分布式Parameter Server架構進行在線學習,從而使用戶行為可以在幾秒內影響搜索排序等在線服務。
我們逐步實現了“實時特征”->“實時排序因子模型”->“實時頂層LTR/Bandit模型”,完成了三位一體的實時化建設。我們先后實現了秒級更新的基于pointwise的FTRL、基于pairwise的實時矩陣分解模型和實時雙線性模型等一系列微觀特征,并在此基礎之上實現了實時Learning to rank,以及實時Multi-Armed Bandit等宏觀調控模型,實現了雙鏈路實時系統的升級。
與此同時,在線學習系統強有力地支持了對流量的精準調控,可以更迅速有效地實現商業決策。此外,我們還將在線學習的算法部分抽象出來,建立了一個通用的一站式在線機器學習算法平臺AOP(Algorithm One-stop Platform),使得建立和部署在線學習模型更加得便捷和高效,同時具有高度可擴展性。
到目前為止,在線學習系統已經成為搜索架構中的基礎組件之一,在提升用戶搜索體驗,支持商業決策,以及支撐雙11等大促效果方面發揮了巨大作用。
2.4 深度學習與智能決策時代
以深度學習和強化學習為代表的人工智能給搜索技術帶來了全新的變化,特別是在語義搜索,搜索個性化和智能決策三個方向。
在語義搜索領域,我們設計并實現了Query的表征學習框架,通過多任務學習和協同訓練等技術,為Query的打標、類目預測、改寫以及推薦等一系列應用提供統一的表征向量。與此同時,我們還實現了商品的表征學習框架,為商品內容理解,商品智能創意,商品語義召回和語義匹配提供統一的商品表征。
在Query和商品的表征框架基礎之上,我們實現了語義召回和語義相似度模型,從而完成了從字面匹配到語義匹配的這一質的突變。此外,語義搜索除了增加搜索結果相關性,提升用戶體驗外,也可以一定程度上遏制淘寶商品標題堆砌熱門關鍵詞的問題。
在搜索個性化領域,我們通過多項技術對原先的個性化系統進行了升級:通過多任務學習的深度用戶感知模型,我們可以從海量用戶行為日志中學習用戶的通用表達,從而用于用戶行為識別、偏好預估、個性化召回、個性化排序等任務。
通過多模態融合學習,我們可以將商品的文本、圖像、標簽、品牌、類目、店鋪及統計特征等多維度特征自動的融合在一起形成統一的商品表征;通過在線深度排序學習,我們融合了用戶狀態實現更加精準的千人千面的排序模型;通過向量召回引擎,我們得到了泛化更好的召回結果,有效提升了關鍵字和個性化匹配深度;通過深度遷移學習,我們將搜索個性化技術在搜索之外的多個場景得到廣泛應用。
隨著這些深度模型在個性化領域的廣泛使用,個性化系統的精準度得到了顯著性的提升。
在智能決策領域,我們針對用戶在搜索過程中和引擎的交互特點,對用戶的決策序列進行建模,提出了提出搜索會話馬爾科夫決策過程模型,將強化學習引導到搜索排序。同時在針對不同場景下搜索結果趨同,浪費曝光問題,我們提出了基于多智能體協同學習實現了搜索多個異構場景間的環境感知、場景通信、單獨決策和聯合學習,實現聯合收益最大化,而不是此消彼長。
經過了“檢索時代->大規模機器學習時代->大規模實時在線學習時代->深度學習與智能決策時代”這4個歷史階段的耕耘和積累,我們逐漸形成了今天的搜索算法排序體系(如下圖)。
三、未來發展:認知智能的探索
如上所示,經過多年的發展,搜索和推薦作為阿里電商兩個最大的自然流量入口,已經All in AI,并形成了完整的用戶偏好在線學習,流量的精細化匹配,以及基于強化學習等智能決策能力的購物決策體系。
但在這個過程中,搜索排序或者推薦學習到的知識更多都是通過已有的商品標簽數據和用戶行為數據來獲取的,還缺少對商品和用戶更深層次的認知,還無法完全理解用戶的多元意圖表達的真實需求。
比如:用戶搜索了“性感連衣裙”,可能是想找“去參加晚場party的低胸晚裝裙”,也可能是想找“去海邊度假的露肩沙灘裙”;用戶收藏了“登山鞋”和“拐杖”,可能有“登山裝備”的需求,需要發現更多的和登山裝備相關的其它品類商品;一個有孩子的爸爸,在暑假剛開始時,挑選“轉換接頭”,查看“大英博物館門票”,可能是想帶著家人一起“暑期英國親子游”,需要發現更多相關的其它品類商品。
究其原因,目前人工智能技術特別是以深度學習為代表的模型,在現實應用中快速發展,最主要受益于海量大數據以及大規模計算能力,通過對物理世界的數字化抽象和程式化學習,使得人工智能具備很強的限定知識的獲取能力,而很難獲得數據之外的知識,就更不用說知識的類比、遷移和推理了。
而機器的認知智能,比如:自主學習和發現,甚至創造能力才是人工智能的更高境界。當然通用的人工智能還有很多工作要做,但在這個過程中,怎么樣首先結合人類知識和機器智能做到初步的認知智能,讓淘寶搜索和推薦擁有智慧化的體驗是我們目前在探索的方向。
實現認知智能,首先需要我們對用戶、商品、賣家等有更深入的認知,系統化的建立起電商領域的認知知識體系。下圖展示了我們定義的電商人-貨-場三維的認知圖譜,由四部分組成,包括用戶、場景、類目(淘寶類目/虛擬類目)和商品。這些不同類型的概念構建成了一個異構圖,來實現用戶-場景-商品的關聯以及各維度數據的深刻認知。
圖:人-貨-場三維組成的電商認知圖譜示例
其中場景是商品關系的語義化描述,是用戶需求的概念化表示,是連接用戶與商品的橋梁。
- 從商品端來看,場景可以理解為一種具有語義解釋的商品關系描述,例如:同屬“中秋送禮”這一個場景的商品具備在中秋節作為禮物的商品屬性。
- 從用戶端來看,場景可以看作是對用戶需求的概念化描述,例如:“戶外燒烤”、“度假穿搭”等。
因此我們也可以說,場景是連接用戶與商品的橋梁。這些場景關系既可以是通過行為數據挖掘獲得,也可以是行業或專家知識的輸入。場景,類目與商品最終組成統一的場景圖譜。
有了這樣的認知圖譜體系后,再通過推理計算識別用戶真實場景訴求,就可以逐步實現搜索和推薦的認知智能化。這就涉及到認知智能體系中另一個重要的部分:基于認知圖譜的在線圖計算與推理引擎。
有了計算和推理引擎后就可以實現:在用戶需求已有行為表達時,認知用戶需求場景,挖掘并滿足用戶更深層的需求;在用戶需求沒有行為表達時,根據時間地點、用戶圖譜等信息,擴展和激發用戶需求;同時根據線上投放數據和用戶反饋,優化認知圖譜的場景挖掘和建設,持續不斷修正和發現場景,提升推理能力。
- 認知圖譜和在線圖計算與推理引擎的背后,一方面是一系列我們已經有沉淀和積累的技術的深度應用,包括知識表示存儲與推理、信息檢索、自然語言處理等一些傳統技術;
- 另一方面,認知圖譜可以和深度學習、強化學習等近年來取得突破性進展的技術進行深度融合,例如:實體和關系的向量化表示(embedding),使得實體的檢索和關系的推理從離散走向連續。
認知圖譜作為優化約束同現有的深度監督網絡進行融合,將領域知識更加平滑的應用到模型中,而不是簡單的規則生效。知識的推理過程中引入序列決策過程建模,使用強化學習減少搜索空間以加速推理過程等等。
有了認知圖譜和在線推理引擎之后,在全域的搜索推薦導購、智能交互和內容生成等各領域上,都會發生各種精妙的化學反應。并且在認知應用過程中,根據用戶對認知推理結果的反饋,系統持續迭代優化的認知圖譜以及推理算法,從而提升認知計算能力。逐漸地,我們可以建設完成具備自學習能力、推理能力和驗證能力的全方位的電商認知智能化體系。
四 、小結
搜索推薦算法多年的發展,就是圍繞著商品與人的連接以及相應的商業訴求,從最初簡單的統計模型,機器學習到形成完整的離線在線與實時的深度學習與智能決策體系,不斷突破自我,讓連接匹配的質量更高,連接的廣度更寬。同時通過機制設計促進整個商業和生態的健康發展,成為整個新商業發展的引擎驅動。
站在今天總結過去的算法演進,看未來電商搜索推薦算法的發展,期待從機器智能到如何結合機器智能與人類智能,做到真正的認知智能實現搜索推薦新的交互和新的體驗。
作者:青峰,搜索推薦算法技術負責人,阿里巴巴研究員,公眾號:阿里技術(ID:ali_tech)
來源:https://mp.weixin.qq.com/s/Nj4kVtn41bTyQ04Suc5A3A
本文由 @阿里技術 授權發布于人人都是產品經理,未經作者許可,禁止轉載
題圖來自Unsplash,基于CC0協議
大神