20多年來,eBay一直遵循同一套電商的傳統推薦思維,在入門頁面、產品搜尋頁面、價格對比字段、同類產品字段、交叉銷售字段、廣告產品字段,甚至所謂的“個性化推薦”字段進行推薦。
這套傳統做法是產品相似度的推薦,以客戶選擇或被選擇的“主產品”為比較基準,將特徵與不同的“候選推薦產品”進行比較,然後根據相似度進行排名,向客戶推薦最相似的產品。
多年來,eBay不斷加強其推薦技術,例如從比較單詞出現頻率的TF-IDF計算相似度,到使用NLP模型比較產品標題之間的語義。 他們還不斷新增不同維度的產品功能,以進一步比較產品不同方面的相似性。 此外,主產品會根據推薦場景替換為其他資訊,如產品搜尋條件、客戶最近檢視的產品等。
在加強推薦技術的同時,eBay不惜投入大量的時間、人力、硬體成本,反覆進行大規模、小粒度的測試和優化。 他們經常為單個功能執行數千次實驗,或訓練多個版本的 AI 模型,只是為了使產品推薦盡可能相關。 例如,為了增強相似度推薦系統對產品描述的理解能力,他們使用了超過30億個產品標題,訓練了兩個專有的NLP模型,並在投入實際使用之前再次對其進行微調。
這些做法或多或少帶來了結果。 然而,無論這些技術如何演進,歸根結底都是比較產品之間特徵的相似性,並假設相似性高於相關性,相關性高於客戶購買意願。
訓練擁有 30 億個產品標題的獨家 NLP 模型,以加強語義相似性理解
25年來,eBay一直在嘗試各種產品相似性建議。 最常比較的產品功能是產品標題。 多年來,他們比較產品標題的方法也一直很傳統,使用已經存在了 50 年的 TF-IDF 等統計方法,以及語義交集串聯集比較的 Faljakar 相似係數來計算產品名稱的相似度。
直到 2020 年代,eBay 才開始轉向 NLP 模型來嵌入向量比較。 他們採用了BERT家族模型,這是當時的主導模型。 在對BERT模型的優化版本Roberta進行實驗後,他們發現使用NLP模型推斷相似性的效果明顯高於傳統的統計方法。 為了使相似性推斷盡可能準確,他們使用了自己的 30 億個歷史產品名稱和 2維基百科上500,000,000,000個英語、德語、法語、義大利語和西班牙語句子作為訓練資料,並自行構建專屬BERT模型。 然後,為了節省計算成本,eBay通過知識蒸餾模型壓縮方法和ebert作為教師網路,訓練了乙個輕量級的學生網路microbert。
為了進一步提高Microbert模型的相似性推斷效果,eBay增加了商品的共點選資料,並利用infonce損失函式對模型進行微調,以縮短同類產品之間的嵌入向量距離。 微調後的模型稱為 Siamese Microbert,用於將其放入實際推薦場景中。
然而,即使使用了流行的BERT模型,甚至嘗試了多種優化和改進方法,eBay在產品標題資料上訓練的模型仍然是傳統產品相似性思維的推薦結果。
在比較多模態產品功能時,將**與文字嵌入向量整合
在用文字比較產品的相似度後,eBay開始嘗試結合**相似度來比較產品。
過去,雖然他們使用AI模型來生成**和文字模態嵌入向量,但它們是獨立儲存和處理的,很難一起使用。 在實踐中,推薦系統仍然使用產品標題的文字嵌入向量作為推薦的主要依據。 只推薦從商品標題文字的相似性來看,可能會發生文字描述接近,但**不相似,甚至質量低下,**不一致,讓客戶失去興趣。
為了有效地將向量應用於推薦,他們將圖形和文字向量投影到同乙個向量空間中,將它們整合到乙個多模態嵌入向量中,然後比較相似性。 他們使用 Transh 知識圖譜模型將嵌入向量投影到同乙個超平面上,以確保嵌入向量代表相同的乘積。 然後,利用三重損失函式對類似商品的嵌入向量進行最小化; 完成這些過程後,eBay 可以使用產品**和文字嵌入向量來比較產品的相似性。
他們使用連體雙塔模型進行兩個嵌入向量比較,根據相似度計算主產品與推薦產品同時被點選的概率,相似度越高,客戶點選推薦產品的概率越高。
第一種是比較產品本身的**和文字嵌入向量之間的距離,以排除因**不一致而削弱相似性。 第二次,主產品與推薦產品,每個**嵌入向量進行相似度對比。
此後,eBay的推薦模式從文字推薦發展到多模態,將文字與**的產品特性相結合,對比商品的相似度。 雖然ebay推薦技術已經向前邁進了一大步,但它仍然專注於產品相似度,以及通過產品相似度做不到的事情,即使使用**組合文字,也仍然做不到。
將客戶行為轉化為產品功能,將產品資訊投射到同乙個向量空間中
eBay並非沒有意識到客戶資料的重要性,也曾利用客戶資料解決沒有主力產品的推薦比較,只是他們受到產品相似度思維框架的限制,即使拿到客戶資料,他們仍然用它來強化產品相似度,並沒有真正充分發揮客戶資料中多樣化興趣維度的價值。
例如,在eBay首頁的“與您最近的瀏覽量相似”等字段中,有時客戶瀏覽過的主要產品資訊尚未獲得。 eBay採用所謂的“以客戶為導向”的排名模式,該模式分為“深度”和“廣度”兩部分。 在深度上,eBay將客戶瀏覽和搜尋的產品,以及這些行為的頻率和順序,轉化為相應的產品特徵,作為“客戶向量”,作為一般推薦場景中的主要產品角色進行對比。
此外,在廣度方面,eBay通過記憶常見的產品銷售和客戶行為特徵來建立一般推薦(而不是個性化)資訊,例如熱門產品、相關產品和客戶習慣。 結合這兩種架構的輸出資料,該模型可以根據過去的客戶行為推薦產品,當他們沒有點選主產品時。
雖然他們利用客戶行為資料建立了乙個“客戶向量”來推薦產品,但這個“客戶向量”只是從客戶行為中提取了一系列產品特徵,並用於比較與推薦產品的相似度,仍然沒有脫離以產品相似度為推薦依據的精神。
產品相似性正規化限制了思維和推薦效應
eBay對產品相似性的重視根深蒂固,每當談到優化他們的推薦方法時,他們首先想到的是,“我如何加強相似性推斷? ”
例如,他們有乙個收費的相似度產品推薦廣告版面,使用梯度提公升樹來訓練其背後的推薦模型,使用多種排序演算法,包括受歡迎程度、產品質量和相似度,以提高廣告轉化率,放大受歡迎程度對排名的影響。
因此,通過此頁面推薦的產品可能會出現與主產品有很大差異的產品,例如出現的**觀看頁面**,外觀與主產品相去甚遠。
當eBay團隊發現這個問題時,他們直接選擇增加產品相似度的權重,而不是進一步研究和微調模型中不同因素的權重。 他們錯誤地認為,簡單地調整相似性將使推薦的產品更具相關性,更有可能引起消費者購買。
他們甚至刻意排除了人氣的影響,微調了新模型,過濾了舊模型的結果。 新模式刪除了與受歡迎程度相關的所有排序函式,並新增了具有購買概率的目標函式,從而為具有高相似度分數的產品賦予更高的權重。 但是,應用新模型後,推薦結果並沒有像預期的那樣提高客戶的購買率,只有部分產品有效。
這個結果反映出還有其他影響因素需要考慮,但當eBay團隊發現推薦機制有誤時,他們習慣於將產品相似度視為靈丹妙藥,他們首先從這個角度思考解決方案。
eBay完善推薦機制的方法,不是“哪個推薦元素錯了”的實驗,而只是關注“如何加強相似度權重,加強多少”。 這種對產品相似性的過分強調限制了其工程團隊的思維空間。
多年來,eBay不斷完善其推薦機制,確實有效改進了基於相似度的推薦方式。 然而,Nitzan Mekel-Bobr**承認,沒有必要對舊的做法進行現代化改造,以打破eBay推薦機制面臨的瓶頸。 即使相似性推薦做到極致,這種思維一開始就無法處理的推薦場景仍然無法處理。
他認為,eBay機制要想取得突破,就必須從根本上改變思路。 首先,在定義產品相關性時,有必要超越 25 年來對相似性的痴迷,並考慮更多因素。
不僅如此,他們還必須跳出平台思考,否則,當客戶感興趣的產品不被平台視為同一品類時,即使相關性對普通大眾來說是顯而易見的,產品相似度推薦系統仍然無法推薦。 新思維要從客戶的角度出發,嘗試了解客戶對自己產品的看法,根據每個客戶的興趣調整產品類別和解決方案,從而實現超個性化的產品推薦。