omniture

從零開始搭建工業(yè)級推薦系統(tǒng),你不可不知的五大問題(上篇)

中量質(zhì)子CEO 長風(fēng)

北京2021年8月12日 /美通社/ -- 推薦系統(tǒng)作為一種高效的信息發(fā)現(xiàn)工具,可以很好地解決用戶精準(zhǔn)高效獲取信息的問題,尤其在人們需求不明確時,借助推薦系統(tǒng)獲取信息是非常重要甚至是不可或缺的一種手段。同時就商業(yè)價值而言,推薦系統(tǒng)在內(nèi)容分發(fā)、用戶體驗、商業(yè)化變現(xiàn)等方面也已經(jīng)獲得了廣泛的認(rèn)可。推薦系統(tǒng)目前已經(jīng)成為互聯(lián)網(wǎng)to C產(chǎn)品的標(biāo)配技術(shù),用來高效地解決用戶的信息匹配問題。

筆者是算法工程師背景,曾在國內(nèi)最大的短視頻平臺參與推薦系統(tǒng)核心算法模塊研發(fā),先后經(jīng)歷五款千萬級以上日活內(nèi)容分發(fā)產(chǎn)品從0到1階段的推薦系統(tǒng)架構(gòu)設(shè)計,踩過各種產(chǎn)品/內(nèi)容/算法/運營的坑。之后在做推薦算法to B服務(wù)過程中,經(jīng)歷了各種推薦應(yīng)用的場景,比如:短視頻、長視頻、新聞資訊、音頻應(yīng)用、社交社區(qū)、直播、電商、游戲等幾乎所有需要個性化算法的產(chǎn)品。通過本文,筆者希望基于以往經(jīng)歷過的失敗或成功的案例,與業(yè)界同仁探討在搭建工業(yè)級推薦系統(tǒng)過程中必須深入思考的五個關(guān)鍵性問題。

問題1:算法是否有用?

根據(jù)業(yè)界主流定義,推薦算法是指建立在機(jī)器學(xué)習(xí)基礎(chǔ)之上的一套包含模型訓(xùn)練/預(yù)測功能的決策系統(tǒng)。廣義的算法其實包含各種計算策略、方法和技巧,不限于機(jī)器學(xué)習(xí)方法,比如一些求解技巧或者是結(jié)合業(yè)務(wù)特點的先驗假設(shè)。

如前文所述,推薦系統(tǒng)目前已經(jīng)成為to C互聯(lián)網(wǎng)產(chǎn)品的標(biāo)配技術(shù),但是,你有沒有認(rèn)真思考過:你的產(chǎn)品或者系統(tǒng),有沒有必要利用推薦算法?推薦算法有多大的空間?

筆者經(jīng)常見到一些初入門算法工程師,面對具體推薦場景時,沒有做好充分的評估建模,一上來就三段式:樣本生成、模型訓(xùn)練、上線預(yù)測,最終折騰半天沒有任何效果,甚至不如人工推薦的效果。之所以會出現(xiàn)各種結(jié)果,是因為這些算法工程師沒有做好前期建模,分析數(shù)據(jù)基本面,確認(rèn)面對的應(yīng)用場景是不是屬于“用戶”和“事物(Item)”的雙邊充分消費市場。這里面,事物(Item)可以是人、信息、商品、服務(wù)等,雙邊基數(shù)越大推薦算法作用越大,雙邊消費越頻繁,推薦效果越好。

在2020年中量質(zhì)子曾經(jīng)接觸過一個做小游戲推薦的客戶。他們在產(chǎn)品早期有幾個策略工程師基于一些業(yè)務(wù)策略做了一版推薦系統(tǒng),相對于完全沒有策略的狀態(tài)推薦效果好了很多,公司決策層于是認(rèn)為算法效果立竿見影、大有可為,高成本從抖音、百度等大廠挖了20多個高級算法工程師。算法同學(xué)加入之后沒有充分理解小游戲場景的用戶行為特點和產(chǎn)品指標(biāo)評估體系,而是把內(nèi)容類產(chǎn)品的建模方法和模型算法應(yīng)用在App上,評估指標(biāo)體系是用戶人均使用時長和用戶留存,結(jié)果做了半年嘗試了各種模型算法都沒有任何進(jìn)展,團(tuán)隊信心喪失,人員流失嚴(yán)重,這時公司決策層又開始懷疑算法的價值。那么究竟是哪里出了差錯呢?

其實,這個案例的核心問題出在建模目標(biāo)、模型拆解、樣本生成、評估體系上。小游戲場景和內(nèi)容分發(fā)類產(chǎn)品差別很大。內(nèi)容分發(fā)類產(chǎn)品一個最大的特點是:推薦內(nèi)容都是新的不重復(fù)的(工業(yè)級內(nèi)容推薦系統(tǒng)都有展現(xiàn)消重模塊),用戶對老內(nèi)容會本能排斥。而小游戲則不同,相比內(nèi)容消費,玩小游戲是一個中度決策的場景,用戶一個時段傾向于玩相同游戲直到興趣消退,對新游戲發(fā)現(xiàn)需求不如內(nèi)容分發(fā)強(qiáng)。因此,就需要仔細(xì)權(quán)衡新老游戲分發(fā)權(quán)重、冷啟動策略如何制定、多目標(biāo)如何拆解、模型樣本怎么定義等等關(guān)鍵節(jié)點。如果這些關(guān)鍵點沒有做到位,那么后續(xù)怎么調(diào)參都不會有效果。同時,在產(chǎn)品宏觀指標(biāo)算法效果評估上也要能反應(yīng)出產(chǎn)品大目標(biāo),比如人均消費游戲數(shù)量、人均新游戲打開數(shù),并綜合考慮留存和人均時長指標(biāo)。

中量質(zhì)子團(tuán)隊在2020年還曾經(jīng)服務(wù)過一個做藝術(shù)品的社區(qū)社交的客戶,其產(chǎn)品UI類小紅書??蛻舻漠a(chǎn)品從UI形式上看非常適合推薦,然而我們嘗試了一段時間,效果始終做的不好。經(jīng)過深度復(fù)盤,我們終于發(fā)現(xiàn)核心原因是用戶數(shù)量太少,每天的用戶行為非常少,導(dǎo)致模型學(xué)習(xí)非常不充分預(yù)測不準(zhǔn);而且,用戶的消費行為不像內(nèi)容消費那么高頻度。這些用戶對一個藝術(shù)品會反復(fù)瀏覽,是一個重度決策過程,更接近一個電商商品推薦。此外,這家客戶設(shè)定的評估指標(biāo)是人均消費金額,相比與時長留存,這是一個行為更稀疏的指標(biāo),更難做多目標(biāo)的拆解和模型算法的充分學(xué)習(xí)。最終,我們給客戶的建議是:這個階段的產(chǎn)品更適合基于策略做熱門運營半自動推薦,先做好用戶增長。記不記得前面我曾經(jīng)講過,在“用戶”和“事物”的雙邊消費市場里,雙邊基數(shù)越大推薦算法作用越大,雙邊消費越頻繁推薦效果越好。

其實,對于算法硬實力筆者認(rèn)為不必過分強(qiáng)調(diào),反而對于理解業(yè)務(wù)場景、建模問題、定義模型目標(biāo)等等推薦系統(tǒng)團(tuán)隊的軟實力,大家應(yīng)該給予更多的重視。

問題2:特征工程該怎么做?

在確認(rèn)了產(chǎn)品的場景適合用算法提升匹配效率,并且評估了產(chǎn)品和數(shù)據(jù)基本面,完成了建模后,“特征工程”是下一個決定模型能否充分訓(xùn)練學(xué)習(xí)、精準(zhǔn)預(yù)測的關(guān)鍵環(huán)節(jié)。不知道你對于特征工程是否熟悉。據(jù)筆者的觀察,目前行業(yè)里系統(tǒng)性介紹特征工程的技術(shù)文章不多,也不如算法受重視程度高,特征的重要性往往被忽視。

什么是特征?特征是影響模型預(yù)測的輸入因子,而模型是預(yù)測時基于輸入因子的計算方法。從兩者間的相互關(guān)系,你立刻就會意識到特征的重要性有多么大。在深度學(xué)習(xí)算法時代來臨之前,以邏輯回歸為代表的線性寬度模型是業(yè)界主要應(yīng)用的模型,那時特征工程幾乎對算法效果具有決定性的作用。時至今日,在深度學(xué)習(xí)模型廣泛應(yīng)用的大背景下,特征工程依然是推薦系統(tǒng)的核心前置工程,復(fù)雜的特征工程和復(fù)雜的深度模型結(jié)構(gòu)都是主流工業(yè)級推薦引擎必不可少的基石性的組成部分。

那么,特征工程是什么?是如何影響模型的?具體而言,特征工程屬于建模的一部分,指用哪些因子(特征)去支持模型做決策判斷。特征和行為埋點、畫像系統(tǒng)密切關(guān)聯(lián),行為埋點是最原始的數(shù)據(jù)來源,畫像字段一般是用行為埋點和用戶以及事物的元信息生成的。特征工程的關(guān)鍵是找到一系列判定模型目標(biāo)的決策因子,并且在工程上有一套標(biāo)準(zhǔn)化的特征抽取和表示方法,一般可以分為單維特征(比如各畫像字段維度)、多維組合特征(比如用戶和事物的特征組合)、機(jī)器學(xué)習(xí)特征(比如用戶和事物的embedding特征)。特征是模型的原始輸入,工業(yè)級推薦系統(tǒng)優(yōu)化到一定階段,特征工程就成為算法工程師最主要的工作。

在特征工程領(lǐng)域,中量質(zhì)子團(tuán)隊在“行業(yè)級最佳實踐”和“工程實現(xiàn)”兩個關(guān)鍵領(lǐng)域積累了深厚的實力。

行業(yè)級最佳實踐,是一種準(zhǔn)確判斷在不同的產(chǎn)品場景應(yīng)用哪些特征能夠獲得最優(yōu)效果的能力。特征工程也遵循28原則,你需要找到在每個領(lǐng)域起核心作用的那些少數(shù)特征。中量質(zhì)子團(tuán)隊在內(nèi)容、短視頻、新聞資訊、社區(qū)社交、電商、直播等應(yīng)用領(lǐng)域已經(jīng)積累了大量的最佳特征體系實踐,比如電商領(lǐng)域哪些是核心特征、怎么構(gòu)建用戶側(cè)特征、特征字段計算方法和更新頻率等等。

關(guān)于工程實現(xiàn),有三個維度你需要給予特別的關(guān)注:

  • 首先,特征工程中最消耗算法工程師時間的工作是頻繁嘗試新特征,這需要在工程上做各種提效支持,比如可配置特征和訓(xùn)練時特征屏蔽功能等等。在這方面,中量質(zhì)子經(jīng)過多年實戰(zhàn),已經(jīng)具備了一套高效標(biāo)準(zhǔn)化的特征抽取和表示方法,我們提出的DeepTouch推薦系統(tǒng)擁有各種特征增刪、組合配置、屏蔽的功能,并和模型創(chuàng)建、訓(xùn)練、預(yù)測等管理功能形成高效協(xié)同的一體化框架。
  • 其次,是特征工程的規(guī)模。工業(yè)級推薦系統(tǒng)數(shù)據(jù)量巨大,特征工程規(guī)模也越做越大,千億幾乎成了行業(yè)標(biāo)準(zhǔn),萬億級特征也成為不少系統(tǒng)追求的目標(biāo)。中量質(zhì)子的DeepTouch推薦系統(tǒng)已經(jīng)實現(xiàn)了萬億級特征實時在線學(xué)習(xí)的能力。
  • 最后,特征工程不是獨立的系統(tǒng),其和模型訓(xùn)練、模型預(yù)測、參數(shù)服務(wù)器單元高效耦合是一個巨大的工程挑戰(zhàn)。DeepTouch推薦系統(tǒng)已經(jīng)實現(xiàn)了以上所有關(guān)鍵要素的高效耦合。

由于文字篇幅所限,筆者在本文中重點分享了從零開始搭建工業(yè)級推薦系統(tǒng)的過程中,最為關(guān)鍵的兩大問題。“算法”和“特征工程”,這兩個話題一個在行業(yè)內(nèi)為大家所津津樂道,而另一個則名聲不顯。但是,通過筆者實戰(zhàn)經(jīng)歷的分享,相信大家一定已經(jīng)認(rèn)識到了他們在工業(yè)級推薦系統(tǒng)中的基石性的作用。在接下來的文章中,筆者將就對于搭建工業(yè)級推薦系統(tǒng)另外三個至關(guān)重要的問題跟大家做進(jìn)一步的分享。

消息來源:北京中量質(zhì)子網(wǎng)絡(luò)信息科技有限公司
China-PRNewsire-300-300.png
相關(guān)鏈接:
全球TMT
微信公眾號“全球TMT”發(fā)布全球互聯(lián)網(wǎng)、科技、媒體、通訊企業(yè)的經(jīng)營動態(tài)、財報信息、企業(yè)并購消息。掃描二維碼,立即訂閱!
collection