字節(jié)跳動副總裁楊震原:抖音如何用好機(jī)器學(xué)習(xí)
4月19日消息,火山引擎日前發(fā)布自研DPU等系列云產(chǎn)品,并推出新版機(jī)器學(xué)習(xí)平臺,支持企業(yè)客戶更好地訓(xùn)練AI大模型。字節(jié)跳動副總裁楊震原以《抖音的機(jī)器學(xué)習(xí)實(shí)踐》為主題,分享了他對機(jī)器學(xué)習(xí)的理解。
楊震原認(rèn)為,機(jī)器學(xué)習(xí)系統(tǒng)的核心競爭力,在于每次實(shí)驗(yàn)都能很快、很便宜。算法工程師能聚焦在自己的工作上,用很低成本不斷去試錯,這樣才能實(shí)現(xiàn)業(yè)務(wù)的敏捷迭代和創(chuàng)新。他表示:“火山引擎機(jī)器學(xué)習(xí)平臺是內(nèi)外統(tǒng)一的,火山引擎客戶和抖音用的是同樣的平臺。我希望公司內(nèi)部打磨的這些技術(shù)能夠服務(wù)更多的客戶,支持大家做智能化的創(chuàng)新?!?/p>
(字節(jié)跳動副總裁楊震原)來源:字節(jié)跳動官微
以下為楊震原演講全文:
上午好!大家知道,抖音等業(yè)務(wù)是火山引擎的內(nèi)部客戶,都跑在火山引擎的云上。今天我會分享下公司內(nèi)部業(yè)務(wù)的一些實(shí)踐經(jīng)驗(yàn):火山引擎是怎樣支持抖音用好機(jī)器學(xué)習(xí)的。
首先說說為什么要聊機(jī)器學(xué)習(xí),什么場景、什么情況下要用機(jī)器學(xué)習(xí)系統(tǒng)?用機(jī)器學(xué)習(xí)會有什么樣的挑戰(zhàn)?我們是怎么解決這些挑戰(zhàn)的?
我認(rèn)為機(jī)器學(xué)習(xí)很重要的一點(diǎn),是把問題數(shù)字化。先數(shù)字化,然后讓這個問題可以定量評估。當(dāng)問題可以定量評估的時候,接下來就可以智能化,進(jìn)一步用一些機(jī)器學(xué)習(xí)的方法來優(yōu)化。
之前有些朋友問我,說“震原,能不能幫我搞一個模型?”我問他想用這個模型干什么?他其實(shí)自己并沒有想清楚。
我想通過幾個例子來具體說明下機(jī)器學(xué)習(xí)的用法。
比如效果廣告,對于商家來講,是不是能用合理的錢找到客戶?對平臺來講,有一個廣告位,是不是能夠把最適合的廣告放到這個位置上?這個問題怎么評估呢?很簡單,我們看轉(zhuǎn)化率就可以了,所以它的目標(biāo)可以很清晰地定義出來。
能夠清晰定義目標(biāo),就可以做A/B實(shí)驗(yàn),可以判斷什么方法更好,進(jìn)而可以用機(jī)器學(xué)習(xí)進(jìn)一步去優(yōu)化。最后往往就會發(fā)現(xiàn),用人工的方法,比如圈選用戶這些方法做效果廣告,很難干得過用機(jī)器學(xué)習(xí)。
再比如,優(yōu)惠券發(fā)放。同樣的錢應(yīng)該發(fā)給哪些用戶,能給平臺帶來更長期的留存?這也是可以被精確定量和評估的問題。這樣的問題,我們就可以思考用什么樣的算法,用什么樣的機(jī)器學(xué)習(xí)去優(yōu)化。
運(yùn)力調(diào)度,這是大家很熟悉的網(wǎng)約車領(lǐng)域,也是可以定量評估的,可以通過成單率評估。如果匹配得不好,我就不能把司機(jī)和乘客有效匹配起來。自動駕駛就不多說了,這個領(lǐng)域想評估效果,實(shí)際上的維度更多,比如說安全性、時間、舒適度等等。
講了這么多,核心的問題是要能夠把問題定義清楚,先數(shù)字化,再去做智能化。
我們用機(jī)器學(xué)習(xí)做智能化,會有什么樣的問題呢?主要說兩個問題,第一個是復(fù)雜,第二個是貴。
為什么說復(fù)雜?因?yàn)闄C(jī)器學(xué)習(xí)軟件棧很深,它需要有平臺,有PyTorch平臺,有TensorFlow,還有很多的平臺。也涉及到框架、操作系統(tǒng),還有底層的硬件。大家最近出門,都問對方有多少張GPU卡,你如果沒有,都不好意思跟人家打招呼。但其實(shí)很多人并不知道用這些卡的效率到底是什么樣子。所以機(jī)器學(xué)習(xí)的軟件棧是很深的,是挺復(fù)雜的一件事情,每個環(huán)節(jié)都要做對、做好。
再說說很貴的問題。人力貴,一個非常優(yōu)秀的算法工程師很貴,也不是那么容易就能找到。除了人才昂貴,數(shù)據(jù)也很貴,高質(zhì)量的數(shù)據(jù)成本很高。硬件就不說了,高性能GPU的價格大家都知道。
所以,機(jī)器學(xué)習(xí)是一件既復(fù)雜又昂貴的事情。那抖音是怎么處理這個既復(fù)雜又昂貴的事情,更好地使用機(jī)器學(xué)習(xí)助力業(yè)務(wù)發(fā)展的呢?
先簡單介紹一下我們的平臺,我們最主要的兩個平臺,一個是推薦廣告平臺,還有一個是通用平臺,包括CV(計(jì)算機(jī)視覺)、NLP(自然語言處理)平臺等等。
推薦平臺,每周會有上萬個模型在上面訓(xùn)練,因?yàn)槲覀冇泻芏喈a(chǎn)品,不同場景都會頻繁訓(xùn)練模型。CV/NLP平臺,模型訓(xùn)練的數(shù)字會更大,每周有大約20萬個模型的訓(xùn)練規(guī)模。而且這兩個平臺上日常還跑著大量的在線服務(wù)。
舉個例子。比如,抖音的推薦系統(tǒng)有很多模型,其中某個模型需要用15個月的樣本來訓(xùn)練,也就是說在15個月的時間里不斷構(gòu)筑訓(xùn)練數(shù)據(jù),這個數(shù)據(jù)量是非常大的。但是在我們的機(jī)器學(xué)習(xí)平臺上,我們只需要5個小時,就可以完成這個模型的訓(xùn)練,核算下來成本只要5000塊人民幣。對于一個算法工程師來講,他早晨做這個模型訓(xùn)練,下午就到線上做AB實(shí)驗(yàn)了,極大提高了產(chǎn)品迭代效率。
機(jī)器學(xué)習(xí)做得好不好,我覺得可以用這個三角形來表示,其中最重要的是算法。算法在效果上做到領(lǐng)先,就能對業(yè)務(wù)產(chǎn)生很大的價值。支撐算法效果的需求,有兩件事,一個是硬件ROI,一個是人力ROI。
硬件ROI指的是單位模型的成本。在市場競爭里,別人花一萬塊錢做一個模型,你如果花一萬塊能做十個同類的模型,這場仗就穩(wěn)了。人力ROI,是說招一個厲害的算法工程師進(jìn)來,他能否發(fā)揮最大潛能,主要看系統(tǒng)能否支持他足夠容易、足夠敏捷地去嘗試新的想法。
如何提高硬件ROI?潮汐、混部,這是我們常用的一些方法。本質(zhì)上一句話,就是如何提高設(shè)備利用率,這也是云原生的一個基本思想。我們把不同任務(wù)混合在一起,互相錯峰,通過智能調(diào)度,把它們的利用率都跑得很高,這樣可以極大地提升資源的利用率,去壓縮每個實(shí)驗(yàn)的成本。
在硬件成本以外,還有很重要的一點(diǎn),就是機(jī)器學(xué)習(xí)的這套基礎(chǔ)設(shè)施是不是足夠易用。開個玩笑:很多做數(shù)學(xué)的人,不喜歡你搞計(jì)算機(jī)科學(xué),尤其做深度學(xué)習(xí),說你們這幫人就在這里“煉丹”,經(jīng)常不能解釋你這個東西為什么好,你為什么需要不斷做實(shí)驗(yàn)?但是我們從實(shí)用的角度來講,必須得不斷做實(shí)驗(yàn),不斷去嘗試,這個領(lǐng)域很多新的發(fā)現(xiàn),都是不斷嘗試做出來的。
如何讓每次嘗試更快、更便宜,這就是核心競爭力。想一勞永逸,一把做出一個非常完美的模型,這是很難實(shí)現(xiàn)的。
火山引擎要做的,就是把平臺的工作做好。大家可以看到,數(shù)據(jù)處理的整個過程、模型訓(xùn)練、評估到上線,再到AB測試,全平臺有統(tǒng)一的集成。算法工程師不需要反反復(fù)復(fù)去溝通各種環(huán)節(jié),串聯(lián)各種業(yè)務(wù),他可以更聚焦在自己的工作上。
再看個例子,這是一個很有意思的特效(抖音AI繪畫),估計(jì)很多朋友都用過。大概是在去年年底,這個特效特別火。大家猜猜,做這個特效對抖音來講投入了多少人力?可能很多人都想不到,算法工程師就投入了一個人,他在平臺上寫了一些調(diào)研的代碼,大概用了一個星期就完成了模型的訓(xùn)練,經(jīng)過一些調(diào)教之后就發(fā)布到線上了。
當(dāng)時產(chǎn)品預(yù)估可能有200QPS的峰值流量,上線我們按照2000QPS來做的,沒想到上線幾個小時就打滿了。我們很快做了大量擴(kuò)容,很短時間內(nèi)容量再擴(kuò)大10倍,到支持20000QPS。
可以看到整個過程,參與的人數(shù)是非常少的,同時擴(kuò)容效率也非常高。很多人說模型訓(xùn)練的開銷大,其實(shí)從長期來看,推理的開銷會顯著大于訓(xùn)練。AI繪畫這個模型,在火山引擎平臺推理的效率大概比原生Pytorch 模型快5倍。上線之后又做了一些針對性的優(yōu)化,還可以更快,大概快10倍,提高了一個數(shù)量級。
有了這樣的平臺支持,工程師就可以快速嘗試各種想法,不管是跟進(jìn)進(jìn)展,還是開拓創(chuàng)新,都可以做得很快。
最后,大家能夠看到,在抖音、今日頭條、懂車帝這樣一些APP上,開屏?xí)@示:火山引擎提供計(jì)算服務(wù)。我們所講的機(jī)器學(xué)習(xí)平臺是內(nèi)外統(tǒng)一的,火山引擎客戶和抖音用的是同樣的平臺。我希望公司內(nèi)部打磨的這些技術(shù)能夠服務(wù)更多的客戶,支持大家做智能化的創(chuàng)新。謝謝大家。
2、電商號平臺僅提供信息存儲服務(wù),如發(fā)現(xiàn)文章、圖片等侵權(quán)行為,侵權(quán)責(zé)任由作者本人承擔(dān)。
3、如對本稿件有異議或投訴,請聯(lián)系:info@dsb.cn