日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

拍不完的脑袋:推荐系统打压保送重排策略

發布時間:2024/7/5 windows 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 拍不完的脑袋:推荐系统打压保送重排策略 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文 | 水哥
源 | 知乎

saying

1.懂模型不只是要知道模型能干什么,更要知道它不能干什么
2.在從業一段時間后應該有一次“轉職”,如果你相信模型無所不能,你應該走科研路線;如果你對模型不是很放心,那你應該成為一名工程師
3.舍棄一些眼前利益是短痛,把平臺的活力做沒了就是長痛了
4.我們要把模型看作是一個喜歡敷衍甩鍋的人,時時刻刻要防止它在我們給定的任務上作弊偷懶
5.做模型好看是好看,但是慧極必傷。只有拍腦袋才是永恒(誤)

在這一講開始之前,我們先回答上一講留下的問題(幾千閱讀都沒有人回答下的嘛。。。)

Q:為什么我們需要多路召回,而不是一個主路就把所有的情況都涵蓋了?

A:由于之前講過的原因,召回是時延負擔最大的地方,這個客觀條件使得我們設計的模型都相對簡單。在這樣的情況下,模型能力比較弱,不太可能做到“涵蓋所有情況”。

Q:

  • 為什么刷單對商家有利可圖?

  • 它符合我們這兩講中的哪一條性質?

  • 刷單這種手段是否可以檢測出來?涉及到哪一類算法?

  • A:刷單就是漏斗的后面環節。訂單,購買等行為是較強的正樣本,根據前面講的正反饋性質,這一系列正樣本會使得商家在模型的預估和排序上更靠前(不論是推薦中還是搜索中都有可能)。這個手段涉及的算法是反作弊,舉個例子就是下單行為總是集中在某幾個賬號,或者有個下單行為連商品都沒看完一路直搗黃龍就付款了可能會被標記。


    這一講中,我們要講一講模型之外的環節。這些環節看起來并不高大上,但是他們的重要性一點也不低。在推薦的整過程中穿插著許多策略環節來輔助。這些策略有些是為了推薦的結果更好,有些則是為了某種長期規劃或者營利訴求。

    剛畢業的同學可能會覺得模型很高級,寫ifelse很low。我個人不提倡大家這樣想問題,因為在求學階段我們天天面對的都是模型,所以會不自覺的帶著“模型即世界”這樣的思維慣性。我們跳出這個視角,現在的主流模型無非就是一些MLP,transformer啊,mmoe之類的。你要說這些新模型距離線性回歸變化大,那當然是很大。但是你要說現在的模型無所不能了,那顯然也還差的遠。有很多的策略,機制都是在彌補模型能力的欠缺。當我們稱為一名工程師的時候,除了知道模型能做什么之外,還需要想想模型不能做什么。

    我一直說相對于模型,策略其實是一個更有門檻的領域:模型研究的是客觀規律,而策略可能研究的是人心。研究模型易,讀懂人心難。在本講我們介紹幾種最常見的策略環節。

    上面的圖展示了策略可能在模型附近出現的環節(當然做活動撒幣之類的都算策略,不過些我們可以留到運營篇再慢慢講),其中黃色標出來的部分都是策略部分。可以看到,策略本身就可以成為一路召回,比如前面講的按照熱度或者精品池召回。策略可以強行在排序的過程中保送一部分內容,還可以在輸出結果后進行重組。

    本講具體介紹下面幾種策略:

    根據標簽區分對待

    標簽系統高度滲透在整個推薦的流程中。標簽系統最重要的功能,是對用戶進行分層。根據當前用戶是屬于活躍或者非活躍,是老用戶還是新用戶,是哪一個年齡段的用戶,都要制定具體的策略。許多產品,運營同學的第一課,就是一定要學會分層的看待用戶,針對性的優化每一種群體的體驗。這就需要我們通過用戶的歷史行為,或者調查問卷等信息來進行判別。我們先忽略如何得到用戶的標簽,討論下有了用戶的標簽之后怎么用。

    假如有一個金幣的補貼策略,意思是說用戶做了任務之后會有獎勵。這個任務可能是看視頻,點關注,分享之類的。我們當然不能對所有的用戶都一視同仁了(發金幣本身是要算虧損的,最后要評估得到的收益是不是值得這樣的虧損),一方面,這個活動的主要點當然是在刺激那些看視頻不是很多的用戶,那一個本來就會看很多視頻的用戶激勵自然就沒必要那么多。除此之外,在不活躍的用戶里面,還要區分敏感與不敏感的用戶。有的用戶很喜歡這種激勵,本來沒什么熱情,你一發金幣他馬上就看得多了起來。但是有的用戶可能很佛系,你發了他也不怎么受到鼓勵,那我們就會傾向于給那些容易受到激勵的用戶多發金幣。這個例子中,判別用戶是不是活躍,是不是容易受到激勵就是非常重要的。這是標簽系統指導策略的一個例子。

    標簽系統的另一個要點是要突破“語義鴻溝”。比如說當我搜索“盤古七星”的時候,我可能不是要看這個酒店的客房,而是看內部的商戶,或者周邊有什么吃的(盤古七星,打錢!)。但是周圍的商戶的店名不可能都帶著這四個字。這個時候內部的標簽可以給它們打上“盤古七星周邊美食”這樣一個標簽,就可以把它們展示出來。這種用途非常關鍵,其作用也非常提升用戶體驗。

    打壓與保送

    并非所有的生產內容,在平臺看來都是平等的。有的內容是政府要傳達的重要精神,那就算點擊率不高,也要放出去。有的內容雖然吸引人,但是很容易消耗掉用戶的興趣,所以要控制度。因此,有的內容我們要打壓,有的則要保送。

    需要打壓的一般有這么幾種情況:第一種是觀感容易引起不適的,比如各種皮膚病廣告。這種內容的密度需要控制,不然天天推這種東西誰頂得住啊。第二種是存在政策風險的,比如某些擦邊球內容,平臺可能不會強制取消,但是不敢放任,不然容易被警告。第三種是不合時宜的類型,比如時效性很強的新聞,奧運已經過去一個多月了就應該少出現這類內容了。需要保送的一般則有這些情況:最直接的就是掏錢了,那我們就往前排。這樣的例子就有淘寶直通車。也沒什么別的理由,就是可以創收唄。另一種是平臺已經欽定了,比如說我這個APP就要走高端名媛風,那這類內容就得多多推送,我也不在乎不喜歡的用戶怎么想,我的人設就這樣。

    打壓和保送的決定一般很早就出現了,比如我們要給哪種item加量;但是實際操作一般是在精排出結果之后,按照他們的標簽(就是上面的標簽系統)偷偷做點手腳。操作時可以直接對輸出分數做boost,加偏置或者乘一個系數。

    探索與利用:含淚(笑?)承損

    探索和利用本身是一個很大的方向,這里所涉及的也是在精排輸出之后的一個環節。其實在這里操作,本身也是打壓保送的一種情況。但是探索與利用這里想強調的是,它是一個較為長期的規劃,而且可能要承受一定的損失。

    探索與利用全稱是Exploration and Exploitation,也叫做EE問題。大概可以理解為,當我有一個機會的時候,我可以選擇一個未知的東西拿來試試,我也可以選擇一個已知的東西來獲取收益,如何操作,才能使得利益最大化?

    這樣揪心的選擇往往出現在item冷啟動的環節。新視頻我們往往要進行保送,有的時候即使其他視頻預估的結果更好,甚至它實際上也會更好,我們也要把新視頻推出去。一方面,把新視頻推出去我們能獲得更加豐富的數據,另一方面,不把它推出去我們也不知道它到底好不好。最重要的是,新視頻的多少決定了整個平臺的活力,永遠有新的內容出現,才是一個生命力旺盛的產品。這個東西很像現在的國乒。即使馬龍打的好,小胖沒有贏過他,大比賽也可能把名額給年輕人。從成績的角度來講,當然可能會承受風險,因為你派水平更高的人拿獎更穩,但是這是有隱患的。因為馬龍年紀已經比較大了,如果年輕人沒有很好的接班,以后的國家隊水平會不會倒退?新視頻老視頻也是這樣的。有一些老視頻我們當然知道他好,但是必須舍棄這個機會給新視頻。否則有一天用戶發現平臺上全是老內容,就可能會覺得索然無味,然后離開平臺。如果不愿意付出短期的一點小損失,會導致未來的重大損失。

    實現這種控制的做法一般有兩種,一種是區分新老隊列,也就是上面圖上所畫出來的情況,保送隊列里面只有新視頻,那么一直到最終決策之前,新視頻都只和新視頻競爭。另一種做法是強制比例,比如我就要我的內容10%是新的,那么每次推送都會看一眼,如果新視頻比例不夠,我就根據差多遠給新視頻加權重,反之就減權重。

    EE問題的難點是如何把控短期收益和長期收益的關系。就像上面這個例子,投放新視頻短期內可能是有損的,但是這個損失是多大,長期的收益怎么衡量,我又怎么知道我所謂的長期收益值得現在的付出呢?這些問題是很難解決的,可能也區分一個決策者的水平。

    重排序:生態控制

    重排序一般來說要做這么幾件事情:

  • 控制展示內容的多樣性。含義就是,我可能一次輸出n個結果,這n個結果不能都講的是同一件事情。否則對用戶體驗的傷害極大。不知道有沒有同學記得大概17年底某資訊軟件A被停了三天,那幾天我下載了其他幾個資訊軟件BC,但是一刷就發現每次出來的n個內容雖然不是同一個人所寫,但是講得都是同一件事情。很快我就又把它們刪掉了。

  • 去重復。用戶已經看過的,或者類似的進行去除,這個很好理解。

  • 強插,和上面講的打壓保送類似,這里的做法更加直接,強插的內容可能是不需要經過前面環節的。

  • 在這個部分,我們要說明的一件事情是,策略能做到的一些事情,模型可能很難做到。

    這里以圖文內容和視頻的混排做一個例子。具體來說就是有的APP上,既有圖文內容,也有視頻。放到同一個模型里面預估當然是可行的。但是實踐中往往會出現偏差。視頻內容和圖像內容比起來,很有可能在很多指標上都是領先的。當這個領先到一定程度,模型就會說:啊,我發現了,視頻就是比圖文好啊,于是它直接把所有視頻的預估都提高。這樣下來模型就沒有達到當初我們給他的設想,我們認為理論上他能分別學習圖文和視頻的規律,理論當然是對的,但是機器學習沒有理所當然的事情。實踐中往往會退化到簡單的一刀切結果上。為了糾正他,我們可能又要在數據采樣,loss設計上花很多功夫。這樣下來,不僅目的很難達到,解決方案還會變的很丑。

    其實這樣的問題用一個策略就可以很好地解決:我們先看看總共有多少視頻,多少圖文,然后按照比例,從各個隊列里面抽就行了。一個探究黑盒模型能力上限的問題用幾行ifelse就能極大的緩解。

    類似的一個策略在美團的公開資料中也存在[1]:比如美食可以分為兩種,一種是根據用戶過往行為預估出來的喜好,一種是根據用戶所處的位置的推薦。這兩種我們都需要留一些空間,如果把它們都丟進一個模型去排序,很可能會形成一邊倒的結果。

    這里的策略其實和模型的邊界不是那么嚴格的。在重排列這塊,也會有人用模型來做,我們后面也會講到。

    策略必須存在

    策略必須存在,一個理由就是上面所說的模型能力不足。另一個理由是可解釋性,在有的場景下,可解釋性的重要性是要大于性能的。比如在廣告投放中,你可能可以做到把某個環節替換為模型,但是廣告主馬上就要問他的素材為什么投不出去了,你的模型是不是對他有意見。這個時候就很難解釋。與其惹了金主爸爸不開心,還不如老老實實寫ifelse。當你有一套策略的時候,你就可以告訴他,他們的素材哪里哪里不夠好,在什么地方根據什么規則吃虧了。


    到了這里,我們這個專欄的第一個篇章,基本就結束了。這個篇章是對整個推薦系統的概述。我們稱之為“總覽篇”。在這個部分我們其實沒有把重點放在某一種具體的算法,或者某一篇具體的論文上,而是放在推薦系統的各個需要聯合,相互影響的環節上。換句話說,在這一篇希望強調的是某種“大局觀”。寫這個部分的時候我也注意到很多的產品,運營同學點了關注,這也是我覺得很好的一件事情。

    下一個篇章是“模型篇”,在模型篇里面我們會涉及具體的模型。會按照一種模型整體介紹其進展以及優缺點等。

    ps:如果您覺得學到了一點東西,請一鍵三連呀~

    下期預告

    精排之鋒(1):簡單復讀機LR

    后臺回復關鍵詞【入群

    加入賣萌屋NLP/IR/Rec與求職討論群

    后臺回復關鍵詞【頂會

    獲取ACL、CIKM等各大頂會論文集!

    ?

    [1]. 旅游推薦系統演進 https://tech.meituan.com/2017/03/24/travel-recsys.html

    總結

    以上是生活随笔為你收集整理的拍不完的脑袋:推荐系统打压保送重排策略的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。