天天看點

京東零售在電商搜尋場景下的資料科學實踐

作者:DataFunTalk

導讀 電商場景資料量大、業務複雜,搜尋場景作為其中最為核心的流量分發與轉化場域,更面臨着諸多資料科學領域的問題與挑戰。

本文将分享京東零售搜尋資料科學團隊在電商搜尋場景下的資料科學實踐,主要介紹:

1. 電商搜尋場景的特點

2. 實驗科學和因果推斷實踐

3. 觀測名額設計和業務分析

分享嘉賓|孫曉宇 京東零售 算法專家

編輯整理|徐俊章 上海海洋大學

出品社群|DataFun

01

電商搜尋場景的特點

首先介紹電商搜尋場景下基礎資料建設與AB實驗體系的特點。

1. 搜尋訂單歸因

京東零售搜尋業務負責精準高效地連接配接搜尋使用者和商家,涵蓋各零售管道的關鍵字搜尋、店鋪内搜尋、優惠券與活動搜尋等核心搜尋業務。

京東零售搜尋的核心目标是:提升訂單轉換效率,兼顧結果的精确性和豐富性。是以,搜尋訂單資料,是搜尋業務最為核心的 feature、label、metrics 資料源

一條訂單,如何歸因到搜尋訂單?

(1)訂單事件歸因

京東零售在電商搜尋場景下的資料科學實踐

多觸點歸因(MTA, Multi-Touch Attribution Model)是計算廣告裡的經典問題,對于一次轉化中的各子產品影響進行定性/定量的判斷。歸因模型對于搜尋跟單、AB 口徑、樣本 Label 都有直接的影響,常見的規則型的歸因模型有首次歸因、末次歸因、平均歸因、複雜歸因模型(Markov 模型歸因、Shap 值分解歸因)。比如推薦子產品,更為關注何時進行首次觸達,進行有效“種草”,傾向于進行首次歸因;如果是關注轉化的子產品,例如搜尋,會注重最後的訂單成單是否是由搜尋轉化的,是以會傾向于末次歸因。不同的歸因方式,會用來解決不同的業務問題。

(2)時間相關性

京東零售在電商搜尋場景下的資料科學實踐

在歸因分析中,關聯事件的時間視窗是很重要的。例如,懷疑因素 X 引發了疾病 Y,那麼對于 Y 的實驗分析工作,就需要觀察 X 發生的時間來做判斷。

一條訂單的産生,通常會經曆這些流程:曝光→點選→加購→下單→支付→出庫→完成。這一流程,往往會跨越一定的時間視窗, 也就是說電商裡的訂單回報,是有很大遲滞的!

對于我們的 AB 實驗同樣,6 月 1 8 日使用者 A 從購物車裡下的訂單,是 06-01 的時候進入 Test 實驗 X 并加購的。即使 06-18 的時候 Test X 下線了,使用者 A 已經被劃分到 Test F 了,那麼這個訂單依然和 Test F 無關。

是以,我們需要回追真正使用者真正受到政策影響的時間,以此保證下單行為和搜尋行為在時間視窗上的相關性。

2.搜尋場景下的 AB 實驗

随機分流的 AB 實驗是最好用的因果效應分析工具,線上 AB 實驗是網際網路産品疊代的核心方式。AB 實驗的核心,有三個要素:

  • 實驗對象——Randomization Unit
  • 實驗變量——Treatment
  • 實驗效應——Metrics

(1)實驗對象——Randomization Unit

随機分流單元的選擇很多,包括:浏覽器 Cookies(PC)、device id/ MEID_ IMEI(APP)、PIN、request id。選擇不同的分流單元,可能會面臨不同的問題。例如實驗效應有跨天的情況,那麼 request id 就可能無法追到,但 device id 不會變。需要特别注意,當随機分流的單元與名額分析單元不同時,評估需要非常謹慎。例如,分流單元為 device id,但分析單元為 request id 時,一方面要注意,從分流單元到分析單元之間還有一個“平均請求數”名額可能會變化;另一方面,在假設檢驗時,對于 request id 為單元的名額,其 variance 需要通過 delta method 進行校正。

随機分流的穩定性是電商平台經常會面臨的一個問題。電商平台頻繁開展促銷,短期内的樣本分布會産生劇烈波動。最常用的方式是先開一組AA實驗,看實驗效果來評估現在流量是否均勻。但如果每次都去開 AA 實驗,流量穩定了,再開一組 AB 實驗,這樣代價是非常大的。是以希望在觀測到波動的情況下,對波動進行剔除。另外,每天電商都有巨大的流量,如果是多層正交的分流實驗平台,一天線上實驗可能會有幾百層,有的 AA 波動顯著,有的沒有,那麼如何評估整體流量分發是否平穩呢?我們的辦法是做 Multi-AA Test,比如在一個實驗層上切 50 組 AA,兩兩之間計算顯著性差異,在 95% 的顯著性水準下,P 值應當服從均勻分布。如果 P 值分布明顯出現左偏(如下圖所示),則意味着可能有系統性的 AA 波動出現,而右偏則可能是檢驗效力不足。是以,Multi-AA Test 除了檢測 AA 異常之外,也是對 Metrics 穩定性與假設檢驗方式是否合理的一種有效工具。

京東零售在電商搜尋場景下的資料科學實踐

另一個有趣的問題是,樣本獨立性問題,在社交/團購類 APP 很容易出現樣本間溢出效應。例如,當團購 APP 在針對新的“促銷推送”功能做 AB 實驗時,test組收到影響的使用者可能通過分享、或者線下方式,告知自己周邊的 base 使用者,進而造成 treatment 政策同時影響了 base 和 test 組的使用者。

(2)實驗變量——Treatment

Treatment 應當盡量單一,Multi-Treatment 的加入會導緻實驗效果的混淆。若一個實驗政策,需要多個子產品同步修改,在多層正交分流的前提下,可以進行聯合實驗,觀察整體政策效果。

如下圖中的例子,在藍色圈選的時間點,一個精排排序政策的全量,導緻了目前在觀測的 EE 政策實驗效果突然反向。是以,實驗期間出現多個 treatment 共同影響的時候,很難嚴謹評估出這個政策本身是否有問題,是以要盡量保證單一 treatment,減少實驗間的耦合破壞多層正交性。

京東零售在電商搜尋場景下的資料科學實踐

(3)實驗效應——Metrics

評估一個實驗名額的優劣,可以考慮以下三個方面:

  • 敏感性:名額收斂能力,名額的 Test Power 與所需 Sample Size 預估,根據曆史實驗 case 進行 variance 估計,下圖中給出了一個經典的預估公式;
  • 解釋性:名額是否可拆解、是否便于 AB 效果的分次元分析、是否直接反映到業務上,在電商搜尋場景下,一個名額的解釋性往往更加重要;
  • 魯棒性/穩定性:名額是否會誤顯著,需要關注名額的 AA 穩定性。
京東零售在電商搜尋場景下的資料科學實踐

--

02

實驗科學&因果推斷實踐

通過前面的講解可以看到,電商 AB 實驗過程中可能會存在一些問題,我們通過實驗科學和因果推斷技術不斷疊代和修正,積累了一些成功案例。

1.因果推斷基礎架構

京東零售在電商搜尋場景下的資料科學實踐

因果推斷典型架構之一是 Rubin’s Potential outcome 架構,其核心是尋找反事實樣本。從個體效應的角度,在現實生活中反事實樣本通常難以擷取,但通常電商樣本的資料量足夠大,在一群人中總能找到某個事實的反情況樣本。

  • 個體實驗效應是指電商場景下某個單獨的人或某件單獨的商品的情況。
  • 子群實驗效應是指某個商品類目、某個使用者群分層下的收益。
  • 全局實驗效應是指整個電商銷售平台的大盤收益或者整體銷售價值提升。

另外一個典型架構是 Peral’s Causal Graph 因果圖架構,即建立有向圖描述因果關系,通過确認節點與節點之間的關系,來剔除更多的 confounder,以保證更加單純無偏的因果關系。但在電商場景下,每天使用者點選搜尋會是上億甚至十億級别,這樣規模上模組化因果圖成本會很大。僅在 case 級别的研究時會用因果圖架構。

我們歸納了因果推斷基礎架構,如上圖右側所示,包括實驗資料因果推斷和觀測資料因果推斷兩個方向。實驗資料雖然由随機分流AB實驗得到,但是依然可能存在實驗前樣本差異,實驗中低滲透率,實驗後損益不均等問題,是以主要使用因果推斷方法來修正或者下鑽實驗效應分析。當沒有條件進行 AB 實驗時,針對觀測資料也有一些方法,如政策全量生效時,有經典的斷點回歸和時序分析;當政策分批生效時,可能存在組間差異,可以使用宏觀雙重差分 DID、宏觀合成控制 SCM 等技術;當全局不均勻生效,則需要樣本微觀層面進行 PSM、SCM-DID 等工作。

2.小流量/高波動場景下的實驗方法論

搜尋實驗,由于訂單回報的延遲、頻繁的促銷行為、垂直場景豐富等原因,往往可能存在以下問題:

  • 樣本量小,回報稀疏
  • 方差大,難收斂
  • 波動大,不穩定
  • 混淆因子多,随機性差
京東零售在電商搜尋場景下的資料科學實踐

(1)樣本糾偏

為解決以上問題,首先會做樣本糾偏,用 PSM 回歸 propensity score,修正樣本分布,借用使用者畫像 tag 尋找 confounder。例如年齡可能會導緻抽煙和不抽煙的使用者發生變化,如果直接把抽煙的使用者和不抽煙的使用者放在一起,去看死亡率,那肯定會有問題。是以首先要控制 base 和 test 組年齡分布相同。當實驗隻看一個 treatment 的影響時候,年齡這樣的 confounder 就會帶來影響。在對于 ATE 的計算上可以把 propensity score 代入,去做 PSM,找兩組樣本盡可能一樣,或者是用 IPTW 這種方法,把每個樣本對于 treatment effect 的貢獻做權重上的調整。我們更多會關注 IPTW 的方法,因為 PSM 有一個關鍵的問題是,去做 matching,總有一部分樣本是 match 不到的,那麼 match 不到的這部分樣本上面的收益和損失,可能就已經帶來了選擇偏差。

(2)方差縮減

CUPED 方差縮減的想法也很樸素,就是如果能夠找到在 treatment 真正作用之前,這個樣本本身就是一個很愛點選很愛回報的樣本,那麼進入 treatment 之後,這樣的可能會給 treatment effect 的估計帶來偏差。我們要盡可能用實驗前的樣本行為來減少實驗中帶來的 variance。這時的做法就如圖中公式,找到一個協變量x。比如要去評估 UCTR 名額,如果能找到他的回訪周期是否頻繁,浏覽深度如何等,就可以通過這些協變量來消除點選上的 variance。這個協變量的相關系數越高,對方差的縮減就越大。

上圖右下角的圖展示了 P 值的縮減效果,原本要七八天都無法收斂的實驗,現在使用 CUPED 方法,第四天就可以看到收斂效果。但這裡的縮減不一定正确,可能讓你在第四天就做出了錯誤的決定,p 值後續可能又會增高。是以使用方差縮減,在反向實驗時要加強驗證,避免誤顯著帶來錯誤決策。

(3)分流單元切換

京東零售在電商搜尋場景下的資料科學實踐

在電商搜尋裡,使用者劃分在樣本量不足的情況下,通常難以建構有效的 AB實驗。解決方案是讓一個使用者同時暴露在兩種實驗政策下,即不使用使用者次元分流,而是使用 interleaving 坑位穿插分流,這種實驗方式在 feed 流實驗中會更為有效。對比正交分流實驗,interleaving 分流方式收斂速度會非常快。但是,在電商排序場景中,interleaving 分流方式會存在一定的風險:一方面,電商場景存在 position bias,首位商品的 ctr 會明顯高于後續位置,interleaving 分流需要非常嚴格按照位置進行分流,否則極易産生錯誤結論;另一方面,base 和 test 穿插的搜尋結果頁,可能導緻使用者整體翻頁下滑,換句話說,坑位樣本的提升效果不一定在使用者樣本上仍然存在,後續的正交分流 holdback 實驗是非常重要的。

3. 異質性效應分析

為應對異質性效應,可以通過以下方式模組化:

(1)CATE 的模組化——Causal Tree 樣本劃分

此處的模組化目的是,使用 Causal Tree 劃分 AB 實驗樣本空間,剔除不敏感的使用者子群,進而加速實驗決策。具體方法如下圖,修改樹模型的節點增益計算方式,進而使樹模型最小化 P_ value 。基于規則樹的模組化方式,可以直接得到子群劃分規則,小幅度剔除不敏感使用者子群後,P 值收斂明顯加快,進而加速實驗的分析決策。

(2)ITE 的模組化——Uplift Model 預估 ITE

此處模組化的目的是,分析實驗在樣本次元的異質性損益,用于綜合評估實驗風險。其中,Transform Outcome 方法用于轉化因果 label,Tree- based model 模組化用于得到可解釋規則。使用 Qini Curve 評估實驗對于敏感樣本的排序能力。例如,對于新品實驗進行分析,其中較為敏感的 feature 是“商品評論數”,基于該 feature 劃分樣本可以發現,對于高評論使用者的新品政策收益是最大的。

京東零售在電商搜尋場景下的資料科學實踐

4.準實驗評估方案

在沒有條件進行 AB 實驗, 或 AB 實驗受到幹擾導緻随機分流失效時,就需要我們建構準實驗。具體應用如下:

(1)RDDiT 時間斷點回歸

斷點回歸 RDD 的應用例如下圖中,在 12 号存在一次叢集配置突變,該資料僅有大盤整體的 daily 資料點,需要評估該叢集突變帶來的使用者轉化變化,此處就需要使用 RDDiT 進行。左圖可以看出斷點明顯,回歸後得到量化的截距差就是這個 treament 帶來的影響;右圖的安慰劑實驗也可以判斷,僅在 12 号存在斷點顯著差異。傳統的 RDD 使用鄰域采樣,RDDiT 使用時間序列,是以會有以下差別:無法進行帶寬選擇,樣本點較少;需要時間序列平穩性驗證;需要安慰劑實驗驗證顯著性。

京東零售在電商搜尋場景下的資料科學實踐

(2)DID 修正後的多重差分

在下圖例子中,一組實體實驗,在 2022-01-07 前後出現了叢集切換,同時在 2022-01-12 前後出現了實驗政策的反向交換。是以,此處不再是正常的 DID 雙重差分,而是需要引入 treatment、timing、group 三重變量的多重差分。搜尋實驗中應用 DID 方法有以下問題需要關注:

首先,DID 務必需要進行 Common Trends 校驗,回歸實驗前虛拟的時間變量和分組變量交叉項;對于非平穩時間序列,此處增加時間項修正誤差;經典雙重 DID 評估斜率變化,适合評估絕對值,而搜尋場景評估截距變化,關注的是 ratio 名額。

京東零售在電商搜尋場景下的資料科學實踐

--

03

觀測名額設計與業務分析

除了以上實驗科學的工作之外,名額設計也是資料科學中一項重要的工作。除了傳統的 CVR、CTR 等名額之外,在複雜業務場景中還有諸多業務效果的衡量訴求,這些業務的 Metrics 都是需要一定設計的。

1. 流量分發的度量

大家預設有個共識,搜尋的流量會集中在很多頭部詞上,而長尾詞和長尾供應上天然是不足的。但是,搜尋詞是否真的全部符合“長尾分布”?這個“長尾效應”的強弱到底如何?這些問題一直是沒有固定答案的。

那麼,如何度量搜尋流量分發的頭部效應?就是一個困難而有趣的課題。

觀察搜尋 Query 的 Session 量分布,有很明顯的幂率分布的特征,頭部query 的 Session 量聚集明顯。

京東零售在電商搜尋場景下的資料科學實踐

搜尋 session 分布符合一種很典型的分布,即幂率分布,它的特征是有顯著的轉折點,累積可能有一個很快的上升并最終收斂在某一區間,如果對縱軸和橫軸都取 log 會變成線性。

而幂律分布的成因,有一個非常有趣的解釋。借由無标度網絡的角度來看,樣本間不獨立,增量與存量不獨立,進而帶來了頭部節點指數級别的“度”增長。

京東零售在電商搜尋場景下的資料科學實踐

結合幂率分布的性質,我們可以圍繞流量分發的集中程度進行名額設計:

  • 幂率分布的幂指數

雙 log 後會看到典型的線性特征。斜線的斜率可以很好的度量目前流量集中情況。幂指數可以全面衡量資料分布,穩定性好,但解釋性差,敏感度差。

  • Top80% 搜尋量覆寫的 query 個數/占比

關注業務解釋性,穩定性和敏感度較差。

  • 搜尋 Querv 熵名額

穩定性和敏感度較好,但解釋性較差。

拟合一個幂率分布很難,但拟合一個線性關系很簡單。我們對于雙 log 圖進行線性拟合,發現大量腰尾部點是符合幂率分布性質的,但是頭部 query 卻并非完全符合幂率分布。這裡展現的,在實踐中,長尾效應并非是覆寫所有樣本點的,存在明顯的分段幂率效應(Broken Power Law)。

京東零售在電商搜尋場景下的資料科學實踐

為什麼存在分段幂率效應?我們可以通過一個生動的例子來看,人類的城市化程序中,人口的分布就是一個典型的幂率效應。人類的遷徙聚落,就是一個無标度網絡連接配接的過程。我們會從一個縣走到一個省的省會,也可能從省會走到首都,北上廣這樣超級城市的誕生就是人口流動和遷徙帶來的。但是,人口的流動和遷徙也會有不滿足線性特征的情況,比如右圖中西歐城市化程序中的人口分布,因為土地承載力是有極限的,頭部城市無法完全滿足幂率特征。類似的,我們 query 的承載力也是有極限的。不可能在一個 query 上滿足所有使用者需求。使用者的需求會進一步細化。

這樣去看我們現在的流量分發,就可以很好的意識到,頭部流量上偏離拟合,就是因為這一部分的流量承接已經飽和了,沒有更多的成長空間了。通過拟合值和真實值之間的差異,或者去校驗幂率分布和真實分布之間的差異是從哪個斷點開始的,就能很好地确認哪些詞是頭部詞。同時,在二八定律下,80% 的流量能覆寫哪些詞,這些詞其實就是我們真正的去再做細化的腰部詞。最後,可能還有很巨量的尾部詞,已經是非常細化的使用者需求了,我們也需要通過算法去引導。

京東零售在電商搜尋場景下的資料科學實踐

結語:

從訂單樣本的建構,到 AB 實驗與因果推斷的應用,以及最後流量分發的metrics 設計。搜尋資料科學始終堅持以業界先進方法解決實際的業務難題,堅持從基礎資料入手為複雜方法論建構地基。如果讀者對我們的團隊感興趣,歡迎參考下圖中的團隊介紹,或通過郵箱 [email protected] 與我交流。

京東零售在電商搜尋場景下的資料科學實踐

今天的分享就到這裡,謝謝大家。

|分享嘉賓|

孫曉宇|京東零售 算法專家

本碩畢業于北京大學,地理資訊科學與計算機科學雙學位。2018年加入京東搜尋算法團隊,主要工作方向為,實驗科學與因果推斷在搜尋場景的落地。

|《資料智能知識地圖》下載下傳|

上下滑動⬆️⬇️,檢視《資料智能知識地圖》使用者畫像闆塊(點選可看大圖),關注公衆号“大話數智”,下載下傳完整版知識地圖

京東零售在電商搜尋場景下的資料科學實踐

|DataFun新媒體矩陣|

京東零售在電商搜尋場景下的資料科學實踐

|關于DataFun|

專注于大資料、人工智能技術應用的分享與交流。發起于2017年,在北京、上海、深圳、杭州等城市舉辦超過100+線下和100+線上沙龍、論壇及峰會,已邀請超過2000位專家和學者參與分享。其公衆号 DataFunTalk 累計生産原創文章900+,百萬+閱讀,近16萬精準粉絲。

繼續閱讀