MLops

MLOps核心功能

機(jī)器學(xué)習(xí)系統(tǒng)是一個(gè)持續(xù)運(yùn)行的系統(tǒng)张弛,需要持續(xù)的循環(huán)數(shù)據(jù)流轉(zhuǎn)才得以運(yùn)轉(zhuǎn),其中就包括:特征生產(chǎn)意推、樣本生產(chǎn)豆瘫、模型訓(xùn)練、模型部署菊值、線上預(yù)測外驱、日志下發(fā)等關(guān)鍵模塊持續(xù)運(yùn)轉(zhuǎn)才能正常運(yùn)行,同時(shí)配套對應(yīng)的數(shù)據(jù)質(zhì)量腻窒、效果監(jiān)控體系進(jìn)行質(zhì)量審查昵宇。

MLOps是一種將機(jī)器學(xué)習(xí)系統(tǒng)開發(fā)(Dev)和運(yùn)營(Ops)結(jié)合在一起機(jī)器學(xué)習(xí)工程文化實(shí)踐,踐行MLOps意味著需要在機(jī)器學(xué)習(xí)系統(tǒng)構(gòu)建的所有步驟支持自動(dòng)化和監(jiān)控化儿子,包括代碼瓦哎、數(shù)據(jù)砸脊、模型持續(xù)集成、測試壁肋、部署和發(fā)布揍诽。MLOps****脫胎于DevOps,采用數(shù)據(jù)工程方式犯助,解決機(jī)器學(xué)習(xí)數(shù)據(jù)要素研發(fā)/服務(wù)/運(yùn)營問題

image.png

MLOps解決問題

MLOps繼承了DevOps理念蜂桶,差別在于數(shù)據(jù)是在機(jī)器學(xué)習(xí)系統(tǒng)中有著特殊地位,因此MLOps需要采用數(shù)據(jù)工程實(shí)現(xiàn)方式也切,解決機(jī)器學(xué)習(xí)研發(fā)和應(yīng)用中的三方面問題扑媚。

  • Feature/Label/Model數(shù)據(jù)要素從需求到服務(wù)全研發(fā)流程端到端問題?包括高效管理數(shù)據(jù)要素從需求雷恃、設(shè)計(jì)疆股、開發(fā)、review倒槐、發(fā)布旬痹、監(jiān)控等過程涉及信息流,實(shí)現(xiàn)各數(shù)據(jù)要素構(gòu)建讨越、部署两残、監(jiān)控信息流一體化;高效選擇和配置需要建模工具把跨,構(gòu)建和應(yīng)用數(shù)據(jù)要素研發(fā)流水線人弓,避免在多個(gè)存儲(chǔ)系統(tǒng)、計(jì)算平臺(tái)着逐、調(diào)度平臺(tái)之間來回切換帶來的不必要損耗崔赌。

  • Feature/Label/Model數(shù)據(jù)要素生命周期管理問題?建模數(shù)據(jù)要素生產(chǎn)出來首先會(huì)面臨信息注冊問題耸别,比如你構(gòu)建了哪些特征健芭、特征的類型和存儲(chǔ)庫表是什么,如果涉及多地部署還需要知道對應(yīng)的特征地區(qū)信息秀姐,構(gòu)建模型時(shí)的特征選擇慈迈, 要素引用問題,需要關(guān)注數(shù)據(jù)要素服務(wù)質(zhì)量問題省有,包括數(shù)據(jù)要素用于服務(wù)前質(zhì)量檢測痒留,比如樣本和特征入模質(zhì)量是否達(dá)標(biāo)、Model性能檢測和評分質(zhì)量是否滿足上線標(biāo)準(zhǔn)锥咸、Model和Feature部署前在線服務(wù)環(huán)境和特征工程邏. 輯和離線是否一致狭瞎、線上真實(shí)使用特征數(shù)和離線引用特征數(shù)是否相同,如果不一致時(shí)如何高效進(jìn)行排查中間環(huán)節(jié)問題搏予,以及數(shù)據(jù)要素在服務(wù)中如何持續(xù)保證質(zhì)量健康熊锭,尤其流式特征和在線學(xué)習(xí)模型;數(shù)據(jù)要素運(yùn)營管理,例如特征下線碗殷、特征組變更精绎,如何及時(shí)更新負(fù)責(zé)人;數(shù)據(jù)要素服務(wù)期終止锌妻,如何安全下線代乃,類似特征下線導(dǎo)致模型配置還在生效的問題之前我的團(tuán)隊(duì)就遇到過,所以都是比較重要的仿粹;這些都是之前得到的經(jīng)驗(yàn)搁吓,我們做特征服務(wù)切換時(shí),就因?yàn)橥淮握埱笮屡f模型返回樣本數(shù)據(jù)不一致吭历,需要我們?nèi)斯膸浊颖咎卣鞯淖罱K值進(jìn)行鏈路反推堕仔,鏈路復(fù)雜難形成體系化的埋點(diǎn),排查效率低下晌区,至今我們還沒有一個(gè)工具可以清晰的展示出摩骨,一次請求的數(shù)據(jù)處理的各個(gè)環(huán)節(jié)數(shù)據(jù),來保證送給模型的數(shù)據(jù)是正確的朗若;我們做的策略中控恼五,也是想在ecpm計(jì)算鏈路能夠形成策略透明及鏈路排查效率。

  • 生產(chǎn)各數(shù)據(jù)要素的代碼管理問題哭懈?研發(fā)數(shù)據(jù)模型的算法工程師開發(fā)代碼偏好靈活和創(chuàng)新灾馒,如何便利有效輔助算法工程師 實(shí)現(xiàn)代碼開發(fā)和代碼生產(chǎn)一體化,降低靈活和創(chuàng)新引入的風(fēng)險(xiǎn)银伟,避免用于生產(chǎn)代碼和git倉庫代碼不一致和變更不規(guī)范風(fēng)險(xiǎn)你虹;這算是一個(gè)比較高階的功能,當(dāng)然我們目前是采用離線彤避、實(shí)時(shí) 的特征生產(chǎn)SDK來保證我們特征生產(chǎn)的規(guī)范化和安全保障,后續(xù)也在規(guī)劃將特征生產(chǎn)做成平臺(tái)功能夯辖,進(jìn)一步把控特征生產(chǎn)質(zhì)量和安全琉预。

機(jī)器學(xué)習(xí)系統(tǒng)開發(fā)流程演進(jìn)

一般團(tuán)隊(duì)在機(jī)器學(xué)習(xí)系統(tǒng)的開發(fā)中,都會(huì)經(jīng)歷幾個(gè)階段 算法工程師手動(dòng)驅(qū)動(dòng)蒿褂、工具化開發(fā)圆米、機(jī)器學(xué)習(xí)CI/CD流水線,我總結(jié)下我們團(tuán)隊(duì)的目前進(jìn)展

1.算法工程師手動(dòng)驅(qū)動(dòng)

特點(diǎn):

  1. 手動(dòng)開發(fā)啄栓、腳本驅(qū)動(dòng)娄帖,靈活前期迭代快
  2. 模型特征、樣本昙楚、在線預(yù)測等模塊數(shù)據(jù)一般通過共享文檔記錄

缺點(diǎn):

  1. 模型迭代慢近速,ML一些特征處理優(yōu)化、算法新模型無法快速應(yīng)用,不支持快速試驗(yàn)削葱,算法迭代受到工程團(tuán)隊(duì)進(jìn)度制約
  2. 缺少主動(dòng)監(jiān)控奖亚,數(shù)據(jù)質(zhì)量無法保障(這是最關(guān)鍵模塊,團(tuán)隊(duì)進(jìn)行數(shù)據(jù)質(zhì)量監(jiān)控之后發(fā)現(xiàn)很多特征析砸、樣本問題:包括特征制作錯(cuò)誤昔字、長期不更新、更新數(shù)據(jù)不一致首繁、樣本回傳確實(shí)問題嚴(yán)重)
  3. 沒有形成統(tǒng)一的特征作郭、樣本、模型生產(chǎn)流程及工具弦疮,數(shù)據(jù)雜亂所坯、存儲(chǔ)效率低存儲(chǔ)成本高、樣本回傳日志量冗余挂捅、特征數(shù)據(jù)冗余等多個(gè)問題芹助,這里就不一一列舉

這個(gè)階段我們目前已經(jīng)渡過,逐漸解決老流程的上述問題闲先,具體總結(jié)我在之前特征工程1.0問題分析中進(jìn)行過總結(jié)状土,當(dāng)然不止文檔總結(jié)的這些,還包括架構(gòu)上的一些:例如特征一致性回傳時(shí)機(jī)伺糠、特征回傳冗余及存儲(chǔ)占用太高蒙谓、回傳樣本長期錯(cuò)誤等問題

2.工具化開發(fā)

特點(diǎn):

  1. 上述各個(gè)關(guān)鍵流程采用固定SDK工具開發(fā),統(tǒng)一開發(fā)工具训桶,提前做好公共的監(jiān)控等公用模塊的開發(fā)累驮,這樣會(huì)大大提高開發(fā)、數(shù)據(jù)遷移舵揭、任務(wù)穩(wěn)定谤专、數(shù)據(jù)質(zhì)量各個(gè)方向。例如我們這次需要進(jìn)行特征集群的多地部署午绳,我們只需要改動(dòng)底層的入庫SDK添加支持多集群的寫入功能就可以應(yīng)用在所有上百任務(wù)中置侍,中間節(jié)省的人力和開發(fā)成本以及數(shù)據(jù)質(zhì)量的保障是不可忽略的;目前形成的公共SDK包擴(kuò)離線特征生產(chǎn)拦焚、實(shí)時(shí)特征生產(chǎn)蜡坊、實(shí)時(shí)樣本生產(chǎn)(在線學(xué)習(xí)),離線樣本等模塊
  2. 配置化開發(fā)赎败,但是還是基于離線進(jìn)行秕衙,沒有統(tǒng)一配置管理平臺(tái),前期借助七彩石等配置中心進(jìn)行生產(chǎn)僵刮,基本可以進(jìn)行敏捷開發(fā)
  3. 監(jiān)控體系逐漸健全据忘,配套有特征鹦牛、樣本、模型效果監(jiān)控若河,數(shù)據(jù)鏈路得到有效監(jiān)控和保障

缺點(diǎn):

  1. 數(shù)據(jù)開發(fā)基于離線SDK開發(fā)能岩,任務(wù)依托于各個(gè)平臺(tái)spark、oceanus萧福、us等拉鹃,算法數(shù)據(jù)血緣沒有被記錄,無法保證特征處理鏈路的數(shù)據(jù)是否被正確處理及下發(fā)鲫忍;各個(gè)模塊計(jì)算任務(wù)也無法被有效管理及資源控制膏燕,溯源任務(wù)目前只能根據(jù)SDK注冊的特征信息,手動(dòng)尋找US上游任務(wù)悟民,多系統(tǒng)之間來回跳轉(zhuǎn)坝辫,這里只列舉了特征元數(shù)據(jù)任務(wù)查找、包括特征處理環(huán)境射亏、模型監(jiān)控近忙、特征處理環(huán)節(jié)都需要在各個(gè)系統(tǒng)之間來回跳轉(zhuǎn)才能理清數(shù)據(jù)鏈路及血緣關(guān)系
  2. 沒有平臺(tái)化,沒有形成數(shù)據(jù)資產(chǎn)和上面第一條也有類似問題
  3. 監(jiān)控零散智润,沒有形成體系及靈活配置及舍,目前有:特征監(jiān)控、樣本監(jiān)控窟绷、算法監(jiān)控锯玛,分別分散在grafana、藍(lán)鯨等各個(gè)平臺(tái)兼蜈,查看數(shù)據(jù)比較麻煩攘残。算法監(jiān)控還是傳統(tǒng)的需求提出和定制開發(fā),但是監(jiān)控指標(biāo)很多都可以固化为狸,并且形成算子:例如模型的ctr歼郭、cvr、偏差钥平、消耗实撒、roi、分位統(tǒng)計(jì)等各個(gè)指標(biāo)涉瘾;例如樣本、特征等都有共性的更新數(shù)量捷兰、最大值立叛、最小值、分布贡茅、null值秘蛇、方差等各個(gè)統(tǒng)計(jì)指標(biāo)其做,可以根據(jù)算法需要進(jìn)行方便的勾選相應(yīng)的配置及沒有一個(gè)平臺(tái)可以從特征列表直接進(jìn)入特征分析頁面、樣本分析赁还、模型分析頁面妖泄,沒有形成體系

這個(gè)階段我們基本渡過,但是還有部分流程在遷移中艘策,例如特征服務(wù)還在遷移中

3.機(jī)器學(xué)習(xí)CI/CD流水線

特點(diǎn):

  1. 平臺(tái)化蹈胡,算法建模流程抽象流水線,研發(fā)朋蔫、生產(chǎn)罚渐、運(yùn)營一體化
  2. 快速試驗(yàn)、持續(xù)訓(xùn)練
  3. 模塊化流水線組件(核心)
  4. 組件代碼CI/CD能力(高階)

基本完成模型訓(xùn)練驯妄、模型部署流水線的串聯(lián)荷并,模型數(shù)據(jù)鏈路追蹤

團(tuán)隊(duì)目標(biāo)和定位

目標(biāo):

整合現(xiàn)有能力,采用數(shù)據(jù)工程實(shí)現(xiàn)方式青扔,解決機(jī)器學(xué)習(xí)要素研發(fā)源织、服務(wù)、運(yùn)營問題

定位:

算法建模工具平臺(tái)

我們應(yīng)該重點(diǎn)加強(qiáng)哪些模塊微猖?

在背景模塊我們也大致列了我們目前的進(jìn)度以及遇到的一些問題谈息,這個(gè)模塊主要是來看下MLOps涉及到的各個(gè)模塊,我們主要來看下我們后續(xù)需要加強(qiáng)哪些模塊励两,并且給出優(yōu)先級及規(guī)劃

image.png

一黎茎、流水線

流水線部分涉及兩個(gè)方面

  1. 模型訓(xùn)練:模型的訓(xùn)練可以理解為離線模型準(zhǔn)備階段,這個(gè)階段需要進(jìn)行樣本的配置化選擇当悔,選擇需要的樣本進(jìn)行建模傅瞻,目前在算法模型訓(xùn)練時(shí),如果采用目前樣本回傳線上處理之后的特征盲憎,將無法進(jìn)行后續(xù)模型進(jìn)行特征工程的試驗(yàn)嗅骄,這是目前流程的弊端,因?yàn)樗惴ǖ奶卣鞴こ痰膶?shí)驗(yàn)會(huì)十分頻繁和有價(jià)值饼疙,目前的流程只能進(jìn)行模型層面的AB試驗(yàn)溺森,進(jìn)行另外一份的樣本回傳,解決這個(gè)問題的方案就是線上回傳樣本時(shí)回傳處理之前的特征數(shù)據(jù)處理換到線下去做窑眯,這樣就可以保證多個(gè)試驗(yàn)只需要一份樣本屏积,多個(gè)配置即可進(jìn)行,但是這個(gè)方案有個(gè)弊端就是需要保障線下處理過程需要保證線上線下一致磅甩,需要進(jìn)行工程改造炊林,但是看來隨著工程的優(yōu)化及算法需要,這個(gè)方案需要逐漸提上議程卷要;回到目前的方案的好處就是渣聚,充分保證線上線下的樣本一致性独榴,工程相對簡單,回傳給模型的數(shù)據(jù)是直接處理過后的奕枝;這里所以暫時(shí)沒有加樣本配置的步驟棺榔,樣本選擇完成后,需要對樣本進(jìn)行數(shù)據(jù)指標(biāo)分析隘道,保障樣本數(shù)據(jù)分布和各項(xiàng)指標(biāo)都o(jì)k症歇,這塊目前有工具在支持,接著是模型訓(xùn)練部分薄声,模型訓(xùn)練在KP上当船,在KP上輸入我們校驗(yàn)好的樣本即可開啟訓(xùn)練,訓(xùn)練完成后默辨,需要有模型的離線指標(biāo)報(bào)告德频,這塊目前KP暫時(shí)沒有頁面化的工具,之后是模型部署缩幸,目前做法是IDC機(jī)器部署壹置,缺乏IDC機(jī)器的管理,后續(xù)廣州地區(qū)支持KP預(yù)測之后表谊,可以考慮模型部署在KP,fsp系統(tǒng)只需要做好與KP的打通即可
  2. 模型配置:模型配置服務(wù)于在線預(yù)測钞护,我們目前可以在fsp平臺(tái)進(jìn)行 特征選擇→ 特征組配置 → 模型配置 之后呢,需要離線進(jìn)行所選特征的數(shù)據(jù)分析面板爆办,用來評估模型建模的特征是否符合要求难咕,目前fsp暫時(shí)是一個(gè)配置管理平臺(tái),模型部署 →試驗(yàn)指標(biāo)打通距辆,這里模型部署主要在KP平臺(tái)余佃,試驗(yàn)指標(biāo)目前在TAB平臺(tái),上線的模型跨算,可以直接進(jìn)行一站式流程爆土,效果直達(dá),這里需要做好兩個(gè)平臺(tái)的打通

二诸蚕、數(shù)據(jù)

數(shù)據(jù)這塊整體包括特征源表步势、特征數(shù)據(jù)、樣本數(shù)據(jù)背犯、數(shù)據(jù)校驗(yàn)部分坏瘩,沒有多余可以介紹的

三、代碼

代碼管控會(huì)是MLOps中比較高階的功能漠魏,可以做到特征生產(chǎn)桑腮、樣本生產(chǎn)、算法生產(chǎn)蛉幸、質(zhì)量監(jiān)控(特征破讨、樣本、算法等)幾個(gè)模塊的代碼管控奕纫,通過CI/CD的能力提陶,來解決生產(chǎn)各數(shù)據(jù)要素的代碼管理問題。這塊我覺得不是我們目前的重點(diǎn)匹层,我們目前還有更重要的模塊進(jìn)行建設(shè)

四隙笆、模型

模型部分相對比較固定,目前借用KP平臺(tái)能力升筏,涉及到支持更多的模型庫撑柔,高效的模型訓(xùn)練的研究、模型訓(xùn)練部署一體化管理您访、模型預(yù)測性能提升工程铅忿,模型預(yù)測這塊了解到團(tuán)隊(duì)有研究,但是可能成果和可實(shí)際投入使用的希望不大灵汪,目前還是采用原生tensorServing提升空間很大檀训,對于降低預(yù)測時(shí)延、提高預(yù)測qps有很大幫助享言,目前的預(yù)測性能會(huì)給后續(xù)模型復(fù)雜度峻凫、特征豐富度帶來阻力,目前所有關(guān)于模型訓(xùn)練加速览露、部署荧琼、預(yù)測都是采用KP平臺(tái)相關(guān)技術(shù),這塊技術(shù)快速提升會(huì)對業(yè)務(wù)幫助很大差牛,需要重點(diǎn)關(guān)注!!

五命锄、監(jiān)控

監(jiān)控模塊目前主要包括幾個(gè)方面,特征多糠、樣本監(jiān)控累舷、算法效果監(jiān)控、模型監(jiān)控夹孔,其中特征和樣本的監(jiān)控具體指標(biāo)就不一一列舉被盈,告警的難點(diǎn)在于如何定義告警指標(biāo)及規(guī)則,一般需要借助環(huán)比搭伤、同比進(jìn)行組合規(guī)則才能實(shí)現(xiàn)比較準(zhǔn)確的告警只怎,需要將告警進(jìn)行分級:致命告警、一般告警怜俐,選擇好的指標(biāo)做到真正有意義的告警身堡,而不是做一堆無用告警占用大家注意力,這才是搭建好一個(gè)監(jiān)控系統(tǒng)關(guān)鍵拍鲤,如何搭建一個(gè)好的監(jiān)控系統(tǒng)這里推薦一篇文章《無效告警優(yōu)化實(shí)踐總結(jié)》:https://mp.weixin.qq.com/s?__biz=MzAxNDEwNjk5OQ==&mid=2650437277&idx=1&sn=330e3756eed2430b3df3afd9cf9965c4&chksm=8396be85b4e13793c9f62b772e2953abd3f3f2f9dedf7d9015e9f7a2b5a7c60256d46808903e&mpshare=1&scene=1&srcid=1013uRBrEO9KkJejBTjCzpXW&sharer_sharetime=1634116543582&sharer_shareid=208f3a65b9fed33103a4e3ffc4932068&version=4.0.3.6007&platform=win#rd

模型監(jiān)控部分指模型訓(xùn)練部分監(jiān)控贴谎,暫時(shí)由算法同學(xué)自行監(jiān)控汞扎,部分功能借助KP能力,但是尚未有可以

整體總結(jié)下目前還有以下幾個(gè)問題:

指標(biāo)分散:算法效果監(jiān)控這部分目前也基本已經(jīng)搭建完成擅这,有離線澈魄、實(shí)時(shí)多種類型報(bào)表,基本能符合目前的監(jiān)控需求仲翎,但是目前監(jiān)控指標(biāo)比較分散有:TAB試驗(yàn)指標(biāo)痹扇、Idata離線指標(biāo)、藍(lán)鯨溯香、grafana 四個(gè)平臺(tái)的指標(biāo)統(tǒng)計(jì)鲫构,分散在各個(gè)業(yè)務(wù)模塊,沒有統(tǒng)一的入口進(jìn)行效果直達(dá)玫坛,不同業(yè)務(wù)模塊同學(xué)也無法查看其他模塊效果指標(biāo)结笨,需要進(jìn)行整合

定制化開發(fā):目前各個(gè)模塊監(jiān)控基本都由各自模塊同學(xué)負(fù)責(zé)搭建,開發(fā)需要進(jìn)行需求定制化開發(fā)昂秃,但是目前監(jiān)控的各個(gè)模塊指標(biāo)通用性比較強(qiáng)禀梳,只需要一個(gè)平臺(tái)可以進(jìn)行配置化指標(biāo)生產(chǎn),這樣會(huì)大大減少數(shù)據(jù)開發(fā)人員工作以及指標(biāo)上線效率肠骆;舉個(gè)例子:對于特征算途、樣本算法同學(xué)可以自行選擇需要監(jiān)控的指標(biāo),進(jìn)而產(chǎn)生報(bào)表蚀腿,算法也是一樣ctr嘴瓤、cvr、消耗莉钙、ecpm等 百分位統(tǒng)計(jì)等都是可以通過固定的配置實(shí)現(xiàn)廓脆,從而實(shí)現(xiàn)監(jiān)控自治

六、工具集

工具集模塊是我們數(shù)據(jù)工程的關(guān)鍵模塊磁玉,它是MLOps的零件停忿,是骨頭,沒有它無法構(gòu)建完善的MLOps系統(tǒng)

數(shù)據(jù)同步工具:

  1. 離線特征蚊伞、實(shí)時(shí)特征生產(chǎn):離線和實(shí)時(shí)特征生產(chǎn)部分席赂,需要將原始的數(shù)據(jù)源表、實(shí)時(shí)日志时迫,轉(zhuǎn)化成用戶特征同步到feature-store并且注冊元數(shù)據(jù)信息颅停,其中如何高效、統(tǒng)一的進(jìn)行離線掠拳、實(shí)時(shí)特征生產(chǎn)是一個(gè)數(shù)據(jù)工程的問題癞揉,目前團(tuán)隊(duì)抽象出離線、實(shí)時(shí)特征生產(chǎn)框架,可以進(jìn)行批量特征生產(chǎn)喊熟,并埋入監(jiān)控埋點(diǎn)柏肪,數(shù)據(jù)質(zhì)量得到質(zhì)的提升。
  2. 離線逊移、實(shí)時(shí)樣本拼接:樣本拼接即將特征预吆、label進(jìn)行拼接形成樣本,雖然是一個(gè)基礎(chǔ)的操作胳泉,但是需要將百億特征數(shù)據(jù)和數(shù)億標(biāo)簽數(shù)據(jù)進(jìn)行實(shí)時(shí)拼接即離線拼接卻不是一件簡單的事情,目前樣本拼接我們借助Flink進(jìn)行實(shí)時(shí)樣本拼接岩遗,開發(fā)了在線學(xué)習(xí)引擎扇商,解決了多版本數(shù)據(jù)鏈路重復(fù)問題以及樣本拼接性能問題,實(shí)現(xiàn)離線配置化樣本拼接生產(chǎn)宿礁,積累了比較多的Flink調(diào)優(yōu)經(jīng)驗(yàn)案铺;離線拼接目前暫時(shí)借助TDW進(jìn)行,CTR模塊因?yàn)辄c(diǎn)擊日志上報(bào)快梆靖,可以進(jìn)行小時(shí)級離線拼接控汉,痛點(diǎn)不是很大,但是cvr由于轉(zhuǎn)化比較慢返吻,需要進(jìn)行3天轉(zhuǎn)化周期的數(shù)據(jù)姑子,所以在拼接時(shí)間上會(huì)比較長,需要6-7個(gè)小時(shí)测僵,這塊我們有后續(xù)優(yōu)化的打算街佑。

關(guān)于統(tǒng)一特征工程、樣本工程捍靠、特征在線服務(wù)都是每個(gè)推薦場景必須持續(xù)優(yōu)化的模塊沐旨,這樣才能保障算法高效迭代,https://km.woa.com/group/46147/articles/show/507858 《下一代廣告系統(tǒng)技術(shù)全景及設(shè)計(jì)思路》這篇文章也列出了其模塊

image.png

測試工具:

  1. 樣本回溯:樣本回溯榨婆,在推薦場景中非常常見磁携,例如某個(gè)樣本線上處理錯(cuò)誤,但是對模型的效果影響又比較大良风,如果因?yàn)榫€上問題導(dǎo)致樣本回傳錯(cuò)誤谊迄,導(dǎo)致缺乏大量訓(xùn)練樣本,就會(huì)導(dǎo)致模型無法進(jìn)行正常離線訓(xùn)練拖吼,進(jìn)而影響線上效果鳞上,如果持續(xù)時(shí)間比較長,模型需要等待14天樣本積累時(shí)間吊档,進(jìn)而導(dǎo)致迭代效率緩慢篙议。這時(shí)候樣本回溯的能力就比較重要,需要能夠根據(jù)原始tdw源數(shù)據(jù),離線拼接行為日志鬼贱,重新回填問題特征移怯,進(jìn)而實(shí)現(xiàn)樣本修復(fù),這個(gè)能力目前當(dāng)前架構(gòu)還無法滿足这难,上面也提到目前樣本特征是處理完成之后進(jìn)行回傳的舟误,后續(xù)離線補(bǔ)錄無法復(fù)用線上處理邏輯,并且線上線下的上下文會(huì)有些許不同姻乓,例如也會(huì)造成離線補(bǔ)錄和在線處理會(huì)有些許不同嵌溢,例如時(shí)間特征等。所以如果后續(xù)需要支持樣本回溯蹋岩,必須實(shí)現(xiàn)樣本特征處理后置化赖草、線上線下一致化才能保障樣本回溯。
  2. 特征處理回放:如1所說剪个,目前樣本特征是在進(jìn)模型之前直接處理好秧骑,并且回傳的樣本也是處理之后的,目前排查一個(gè)特征的處理回放需要從回傳樣本查起扣囊,查看特征所在模型特征組及索引位置乎折,才能查看其處理函數(shù),對應(yīng)的是哪個(gè)原始特征侵歇,然后根據(jù)tdw數(shù)據(jù)校驗(yàn)與redis數(shù)據(jù)是否一致骂澄,然后再離線使用線上處理函數(shù)進(jìn)行回放進(jìn)行對比線上是否處理或者回傳錯(cuò)誤,我們希望有個(gè)工具可以快速根據(jù)提供hive源數(shù)據(jù)盒至,排查出 redis數(shù)據(jù)是否一致酗洒、處理過程之后及回傳數(shù)據(jù)的正確性,提高算法數(shù)據(jù)排查效率
  3. 特征查詢:在模型上線階段枷遂,我們需要進(jìn)行特征一致性測試樱衷,即hive源表數(shù)據(jù)是否和redis數(shù)據(jù)一致,以及缺乏一個(gè)工具可以提供設(shè)備ID酒唉、創(chuàng)意ID等關(guān)鍵字快速查出redis的特征值矩桂,來判斷特征數(shù)據(jù)是否正確等場景,這個(gè)工具在2里面也會(huì)用到痪伦,對我們鏈路排查非常重要
  4. 線上線下一致性:根據(jù)歷史請求回傳數(shù)據(jù)重新回填模型侄榴,對比歷史打分,判斷線上模型打分與當(dāng)時(shí)模型打分是否一致网沾,來判斷是否出現(xiàn)模型部署有誤癞蚕。目前沒有這塊的工具,可以根據(jù)算法需求來定制開發(fā)

質(zhì)量&試驗(yàn):

  1. 特征校驗(yàn)辉哥、樣本校驗(yàn):特征校驗(yàn)和樣本校驗(yàn)剛才已經(jīng)在監(jiān)控中有提及桦山,其中的問題也有指出攒射,這塊后續(xù)我們會(huì)持續(xù)優(yōu)化
  2. 試驗(yàn)工具(TAB):試驗(yàn)平臺(tái)TAB,目前負(fù)責(zé)AB試驗(yàn)的分發(fā)恒水,但是一直有一個(gè)核心的問題会放,分層試驗(yàn)功能優(yōu)先需要支持,目前算法的試驗(yàn)迭代缺乏整體的調(diào)控人钉凌,多個(gè)模塊迭代效果重疊咧最,試驗(yàn)效果不置信,需要團(tuán)隊(duì)重點(diǎn)解決

MetaFeatureStore項(xiàng)目介紹

項(xiàng)目走讀

自建平臺(tái)功能示例

特征管理功能:

image.png

特征注冊

image.png

特征查詢

image.png

處理回放

image.png

模型配置管理

image.png

統(tǒng)一樣本配置

image.png

流水線

image.png
image.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末御雕,一起剝皮案震驚了整個(gè)濱河市矢沿,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌饮笛,老刑警劉巖咨察,帶你破解...
    沈念sama閱讀 219,188評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異福青,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)脓诡,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,464評論 3 395
  • 文/潘曉璐 我一進(jìn)店門无午,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人祝谚,你說我怎么就攤上這事宪迟。” “怎么了交惯?”我有些...
    開封第一講書人閱讀 165,562評論 0 356
  • 文/不壞的土叔 我叫張陵次泽,是天一觀的道長。 經(jīng)常有香客問我席爽,道長意荤,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,893評論 1 295
  • 正文 為了忘掉前任只锻,我火速辦了婚禮玖像,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘齐饮。我一直安慰自己捐寥,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,917評論 6 392
  • 文/花漫 我一把揭開白布祖驱。 她就那樣靜靜地躺著握恳,像睡著了一般。 火紅的嫁衣襯著肌膚如雪捺僻。 梳的紋絲不亂的頭發(fā)上乡洼,一...
    開封第一講書人閱讀 51,708評論 1 305
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼就珠。 笑死寇壳,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的妻怎。 我是一名探鬼主播壳炎,決...
    沈念sama閱讀 40,430評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼逼侦!你這毒婦竟也來了匿辩?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,342評論 0 276
  • 序言:老撾萬榮一對情侶失蹤榛丢,失蹤者是張志新(化名)和其女友劉穎铲球,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體晰赞,經(jīng)...
    沈念sama閱讀 45,801評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡稼病,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,976評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了掖鱼。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片然走。...
    茶點(diǎn)故事閱讀 40,115評論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖戏挡,靈堂內(nèi)的尸體忽然破棺而出芍瑞,到底是詐尸還是另有隱情,我是刑警寧澤褐墅,帶...
    沈念sama閱讀 35,804評論 5 346
  • 正文 年R本政府宣布拆檬,位于F島的核電站,受9級特大地震影響妥凳,放射性物質(zhì)發(fā)生泄漏竟贯。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,458評論 3 331
  • 文/蒙蒙 一猾封、第九天 我趴在偏房一處隱蔽的房頂上張望澄耍。 院中可真熱鬧,春花似錦晌缘、人聲如沸齐莲。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,008評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽选酗。三九已至,卻和暖如春岳枷,著一層夾襖步出監(jiān)牢的瞬間芒填,已是汗流浹背呜叫。 一陣腳步聲響...
    開封第一講書人閱讀 33,135評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留殿衰,地道東北人朱庆。 一個(gè)月前我還...
    沈念sama閱讀 48,365評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像闷祥,于是被迫代替她去往敵國和親娱颊。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,055評論 2 355

推薦閱讀更多精彩內(nèi)容