在推薦場景下,模型auc大于0.5,其排序能力一定高于隨機嗎辽旋?模型離線評估auc大于0.5,上線后發(fā)現(xiàn)與隨機推薦沒差別檐迟?排序的商品結(jié)果與用戶沒有相關(guān)性补胚?
關(guān)于相關(guān)性與偏置信息
對于單目標(biāo)的推薦排序來說改鲫,模型能起到的優(yōu)化效果只跟相關(guān)性有關(guān)(即內(nèi)容與用戶的相關(guān)性本身)鸳吸,與用戶之間的差異,位置偏置策橘,時間等因素都是無關(guān)的敦间。
比如瓶逃,我們在模型中假設(shè)只使用這些偏置因素束铭,而不加入相關(guān)性特征(譬如完全沒有item特征),也可以獲得不錯的auc厢绝,模型能區(qū)分不同用戶/位置/時間之間的點擊率差異契沫,但并不能區(qū)分每個人在特定的時間會喜歡怎樣的item。所以昔汉,最終排序結(jié)果懈万,和直接隨機排序是沒有差別的。
即:模型的排序能力體現(xiàn)在兩方面靶病,其一是對偏置信息的排序能力会通,其二是對用戶相關(guān)性的排序能力。
- Q1:那我們需要在模型中加入這些偏置嗎娄周?
A:需要涕侈,如果不加入這些特征,則會導(dǎo)致omitted-variable bias(OVB[1]昆咽,其實OVB與causal inference中的confounding bias是有很多關(guān)聯(lián)之處的[2])驾凶。要理解起來也很簡單,譬如某用戶手機有bug會自動點擊第一個內(nèi)容掷酗,如果不加入位置特征调违,那么模型就會錯誤地認(rèn)為出該商品與該用戶有很強的相關(guān)性,但其實推薦另一個商品在第一位也會被點擊泻轰。如果加入位置信息技肩,模型則能學(xué)到點擊的“原因“來自于第一個位置,而非用戶相關(guān)性浮声。
--
PS:在這里很多團隊會犯錯虚婿,譬如有些團隊在新客場景選擇用剔除用戶特征的模型在老客歷史數(shù)據(jù)上訓(xùn)練以期望此模型能在新客業(yè)務(wù)中有更好的效果,認(rèn)為此舉剔除了用戶特征的影響泳挥,這就是很常見的認(rèn)知誤區(qū)然痊。
當(dāng)然,直接無腦加入特征也會造成一定的問題屉符,其實特征分為兩類:
第一類剧浸,固有屬性。譬如用戶的年齡矗钟,職業(yè)唆香,地區(qū)等等。
第二類吨艇,用戶反饋數(shù)據(jù)躬它。譬如7天內(nèi)點擊數(shù)量,購買數(shù)量东涡,曝光數(shù)量等等冯吓。
其實第二類反饋特征為0倘待,有兩種可能,第一種桑谍,新用戶延柠,第二種,老客戶锣披,但是他就是不喜歡點擊贞间。如果我們大量的樣本是老客戶,那么這樣的特征就會在新用戶身上產(chǎn)生bias雹仿,偏向那些不喜歡點擊的老客戶(因為特征表現(xiàn)一樣增热,但是ground truth真實點擊率是不同的)。因此胧辽,一些簡潔的做法是峻仇,我們需要在模型中加入譬如用戶注冊時間,來訪次數(shù)邑商,曝光次數(shù)等等數(shù)值特征來“糾正”這些累計數(shù)值在時間上的“偏差”摄咆。理論上只要直接加入這些特征,dnn等模型就能抽取出其中的各種非線性關(guān)系人断,但是實際中這樣可能效率不高吭从,因此可以加入一些特定的特征工程。
反正核心就是恶迈,這類信息得輸入給模型涩金,如果是你“先驗”就比較重要的信息,更應(yīng)該以更顯式的方式輸入暇仲,以便加速模型的收斂步做。(很多做特征抽取的優(yōu)化,其實一定程度上奈附,也是在“加速”模型的收斂)
- Q2:全量數(shù)據(jù)集上的AUC指標(biāo)也由兩方面組成全度,一方面是偏置信息帶來的AUC,一方面是用戶內(nèi)容相關(guān)性帶來的AUC斥滤。我們真正想要得到的模型将鸵,是對用戶內(nèi)容相關(guān)性有更好排序能力的模型。那么我們能否在離線評估的時候剔除這些因素中跌,更具體地評估模型對相關(guān)性的排序能力?
A1:使用隨機推薦的數(shù)據(jù)來做評估菇篡。這里其實相當(dāng)于在causal inference中進行完全無偏的隨機實驗漩符,來驗證結(jié)果。(數(shù)據(jù)完全無偏驱还,就不需要adjust for confounder了)
A2:使用用戶/session級別的gauc指標(biāo)來評估嗜暴,這里類似于于對實驗進行control variable(control這些confounder)凸克。
Refer:
[1]OVB
見:https://en.wikipedia.org/wiki/Omitted-variable_bias
[2]OVB與confounding bias之間的差異:(mediator and confounder)
https://stats.stackexchange.com/questions/496328/difference-omitted-variable-bias-and-confounding
1、即當(dāng)缺失的變量為mediator的時候闷沥,這時其實的估計在total effect維度是無偏的萎战,但是對于direct effect來說是有偏的。(即在prediction problem中是沒問題的舆逃,但是在causal problem中是有偏的)
2蚂维、而當(dāng)缺失變量為confounder的時候,其估計的參數(shù)路狮,在total effect維度也是有偏的虫啥。當(dāng)然,direct effect也是有偏的奄妨。(在causal和prediction中都是有問題的)
3涂籽、因此,通常砸抛,這個bias要視情況來分析评雌。譬如在臨床醫(yī)療等領(lǐng)域,當(dāng)我們關(guān)注某變量對疾病的直接影響直焙,那么需要在direct effect保持無偏景东,因此無論mediator抑或confounder都需要被重視。而互聯(lián)網(wǎng)ctr預(yù)估等領(lǐng)域箕般,當(dāng)只關(guān)注最終的估計時耐薯,缺失mediator不會導(dǎo)致total effect的bias所以可以忽略。當(dāng)然丝里,這都是理論分析曲初,實際上我們并無法準(zhǔn)確分辨mediator和confounder。
[3]關(guān)于 Collider 變量對模型的影響:
https://stats.stackexchange.com/questions/399640/including-collider-variables-in-prediction
總結(jié)就是:
1杯聚、在prediction problem中臼婆,加入collider并不影響結(jié)果(不影響預(yù)估結(jié)果,但是模型系數(shù)失去了表達(dá)”causality的性質(zhì)“)
2幌绍、在causal problem中颁褂,collider會帶來bias。(系數(shù)無法表征causality)