首頁 要聞 中國(guó) 經(jīng)濟(jì) 財(cái)經(jīng) 品牌 點(diǎn)評(píng) 會(huì)展 綜合 | 設(shè)為首頁
中國(guó)品牌要聞網(wǎng)-傳遞資訊的價(jià)值打造品牌的影響
您現(xiàn)在的位置:首頁/科技生活/ 正文
【云棲2023】林偉:大數(shù)據(jù)AI一體化的解讀
來源:
編輯:
時(shí)間:2023-11-08

本文根據(jù)2023云棲大會(huì)演講實(shí)錄整理而成,演講信息如下:

演講人:林偉 | 阿里云研究員,阿里云計(jì)算平臺(tái)事業(yè)部首席架構(gòu)師,阿里云人工智能平臺(tái)PAI和大數(shù)據(jù)開發(fā)治理平臺(tái)DataWorks負(fù)責(zé)人

演講主題:大數(shù)據(jù)AI一體化的解讀

       今年是AI大爆發(fā)的一年,大語言模型的誕生推動(dòng)了席卷整個(gè)行業(yè)的大模型熱潮,許多人認(rèn)為“AI的iPhone時(shí)代”到來了。訓(xùn)練大模型其實(shí)不簡(jiǎn)單,因?yàn)槟P蛥?shù)量的增加意味著需要更好的算力、更多的數(shù)據(jù)去錘煉,并且需要合適的工具讓開發(fā)者快速迭代模型,只有這樣才能更快地提高模型精度。這幾年來阿里云一直在宣傳AI工程化和規(guī)模化,其實(shí)是這輪AI爆發(fā)的主要推手。

       我們看一個(gè)典型的模型開發(fā)過程,包括數(shù)據(jù)預(yù)訓(xùn)練、模型訓(xùn)練到模型部署。我們往往會(huì)非常關(guān)注訓(xùn)練,而忽視了整個(gè)生產(chǎn)流程。但是要訓(xùn)練出好的模型,數(shù)據(jù)越來越重要。包括數(shù)據(jù)采集、數(shù)據(jù)清理、特征提取、數(shù)據(jù)管理,再到訓(xùn)練過程中,需要分發(fā)哪些數(shù)據(jù)參與訓(xùn)練、哪些數(shù)據(jù)用來評(píng)測(cè)模型質(zhì)量。所有數(shù)據(jù)都需要有驗(yàn)證部分,用于驗(yàn)證質(zhì)量,這一步非常關(guān)鍵。低質(zhì)量數(shù)據(jù)對(duì)模型的傷害力是超出想象的。這也是為什么吳達(dá)恩一直宣傳了一個(gè)觀點(diǎn),就是更好的機(jī)器學(xué)習(xí)是80%的數(shù)據(jù)處理+20%的模型。

“以模型為中心”和“以數(shù)據(jù)為中心”的模型開發(fā)方式演進(jìn)

       這也體現(xiàn)了模型開發(fā)方式的演進(jìn)。過去我們常常說以模型為中心的模型開發(fā),算法工程師花大量的時(shí)間調(diào)模型結(jié)構(gòu),希望通過模型結(jié)構(gòu)來去提高模型泛化能力,解決各類噪聲問題。如果大家看5年前的Paper,會(huì)發(fā)現(xiàn)大量的研究都是圍繞模型結(jié)構(gòu)展開的,當(dāng)時(shí)的數(shù)據(jù)、算力都還不足夠支撐今天這樣的大模型時(shí)代。那時(shí)候的模型訓(xùn)練更多是“有監(jiān)督的學(xué)習(xí)”,用的都是標(biāo)注數(shù)據(jù),這些數(shù)據(jù)是非常昂貴的,這也決定了在訓(xùn)練過程中,數(shù)據(jù)上沒有太多騰挪的空間,我們更多在考慮模型結(jié)構(gòu)的變化。

       今天的大模型訓(xùn)練有非常多的無監(jiān)督的學(xué)習(xí)。模型結(jié)構(gòu)反而是沒有那么多變化的,大家好像趨同的,都采用Transformer結(jié)構(gòu)。這個(gè)時(shí)候我們就慢慢演進(jìn)到了以數(shù)據(jù)為中心的模型開發(fā)范式里面。這個(gè)開發(fā)范式是什么?就是需要用大量數(shù)據(jù)去做無監(jiān)督的訓(xùn)練,通過大的算力、大的數(shù)據(jù)引擎,結(jié)合相對(duì)固定的模型結(jié)構(gòu)去萃取出一些有趣的智能的東西。

       因此,訓(xùn)練使用到的數(shù)據(jù)量會(huì)暴漲,也需要用到各種方法清洗和評(píng)測(cè)數(shù)據(jù)。我們可以看到許多大模型研究的團(tuán)隊(duì)都會(huì)花費(fèi)大量的精力去處理數(shù)據(jù),在各種環(huán)境里面反復(fù)地、多角度地驗(yàn)證數(shù)據(jù)質(zhì)量。通過各種各樣的維度,甚至有時(shí)候還會(huì)把模型產(chǎn)生出來去評(píng)測(cè),通過模型結(jié)果反饋數(shù)據(jù)的質(zhì)量。在這個(gè)過程中,就需要積累非常多的數(shù)據(jù)處理工具,只有這樣才能有效地支撐以數(shù)據(jù)為中心的模型開發(fā)工作對(duì)于數(shù)據(jù)質(zhì)量的要求。這也是大家說到以數(shù)據(jù)為中心的模型開發(fā)的范式的核心的一個(gè)想法。

       正是在這種趨勢(shì)下面,我們一直認(rèn)為大數(shù)據(jù)和AI是一體兩面,需要實(shí)現(xiàn)大數(shù)據(jù)和AI的一體化,這樣才能順應(yīng)當(dāng)下模型開發(fā)范式的演進(jìn)。

       在阿里云,我們一直努力將數(shù)據(jù)和AI兩個(gè)系統(tǒng)緊密地聯(lián)合在一起。我們?cè)谟?jì)算基礎(chǔ)設(shè)施層,提供適應(yīng)各種場(chǎng)景的計(jì)算集群,包括適合大數(shù)據(jù)的以CPU為主的集群,以及適合大模型訓(xùn)練的需要RDMA網(wǎng)絡(luò)的異構(gòu)計(jì)算集群。在此之上,打造了大數(shù)據(jù)和AI一體化平臺(tái),覆蓋模型開發(fā)全過程的能力,包括數(shù)據(jù)采集和集成,再通過大數(shù)據(jù)平臺(tái),做大規(guī)模的離線分析,去驗(yàn)證數(shù)據(jù)質(zhì)量。此外還有流式的計(jì)算能力。數(shù)據(jù)在大數(shù)據(jù)平臺(tái)上處理好之后,就會(huì)被“投喂”到PAI這個(gè)負(fù)責(zé)人工智能開發(fā)的平臺(tái),去做訓(xùn)練和迭代。最后,在模型應(yīng)用孵化上,依賴向量引擎的數(shù)據(jù)庫,例如Hologres等,一起去構(gòu)造場(chǎng)景化的應(yīng)用。

大數(shù)據(jù)AI一體化的應(yīng)用場(chǎng)景

       在正式展開大數(shù)據(jù)AI一體化的技術(shù)點(diǎn)之前,先舉兩個(gè)應(yīng)用的例子。

       第一個(gè)例子是知識(shí)庫檢索增強(qiáng)的大模型問答系統(tǒng)。大家可以看到最近很多做大模型的通行,都會(huì)提到這個(gè)場(chǎng)景,通過一個(gè)大模型,可以獲得特定行業(yè)的垂直知識(shí)庫。這是怎么做到的呢?首先,需要把這個(gè)知識(shí)庫的數(shù)據(jù)進(jìn)行清理后分片,通過大模型把它轉(zhuǎn)成一個(gè)向量,再把這些向量存在一個(gè)數(shù)據(jù)系統(tǒng)里面,這是向量檢索的數(shù)據(jù)系統(tǒng)。當(dāng)有真實(shí)請(qǐng)求過來的時(shí)候,會(huì)先把query對(duì)應(yīng)的向量找出來,轉(zhuǎn)譯成知識(shí),再用這個(gè)知識(shí)去約束大模型,控制大模型“胡說八道”的沖動(dòng),這樣反饋的結(jié)果會(huì)更加準(zhǔn)確。

這個(gè)場(chǎng)景里面用到了很多大模型能力,包括大規(guī)模分布式的批處理,因?yàn)樵趧?chuàng)建embedding的時(shí)候,其實(shí)是一個(gè)非常大的數(shù)據(jù)。同時(shí),也會(huì)用到向量數(shù)據(jù)庫這樣的服務(wù)能力,真實(shí)業(yè)務(wù)場(chǎng)景對(duì)于查詢時(shí)延的敏感度很高,需要非?斓慕o一個(gè)向量。當(dāng)然也用到了大模型訓(xùn)練的能力,就需要一個(gè)很好的AI系統(tǒng)。

       第二個(gè)例子是個(gè)性化推薦系統(tǒng)。在做實(shí)時(shí)推薦的過程中,所有推薦對(duì)象的興趣是動(dòng)態(tài)變化的,往往這樣的系統(tǒng)它的模型是時(shí)時(shí)刻刻更新的,需要根據(jù)最新的行為數(shù)據(jù)來更新模型。我們往往會(huì)把所收集到的日志經(jīng)過實(shí)時(shí)或者離線處理,離線數(shù)據(jù)用來生產(chǎn)一個(gè)比較好的基礎(chǔ)模型,實(shí)時(shí)數(shù)據(jù)也會(huì)去提取這個(gè)特征,經(jīng)過模型訓(xùn)練產(chǎn)生一個(gè)模型的delta,然后再把這個(gè)delta應(yīng)用到線上的系統(tǒng)進(jìn)行每天更新。在這里面我們可以看到有非常多的數(shù)據(jù)系統(tǒng),有實(shí)時(shí)的像流計(jì)算的系統(tǒng)、有AI的系統(tǒng)、有批處理系統(tǒng)。

大數(shù)據(jù)AI一體化的技術(shù)實(shí)現(xiàn)

統(tǒng)一的數(shù)據(jù)和AI工作空間管理

       首先,我們?cè)谀P蜆?gòu)造最外層,把AI和大數(shù)據(jù)的流程串聯(lián)在一起,這也是我們?cè)赑AI產(chǎn)品里構(gòu)建工作空間的最初始的想法,這樣就可以把多種資源統(tǒng)一在一個(gè)開發(fā)平臺(tái)上管理,F(xiàn)在阿里云人工智能平臺(tái)PAI已經(jīng)可以支撐多種計(jì)算資源,包括ECS資源、流計(jì)算平臺(tái),還有PAI靈駿智算用于大模型訓(xùn)練的集群,還有這次云棲已經(jīng)發(fā)布的容器計(jì)算服務(wù)ACS等等。

       僅僅接入這些資源是不夠的,用戶需要的是把接入的資源有機(jī)串聯(lián)到一起。所以我們推出了一個(gè)Flow框架,把這些流程串聯(lián)起來,把模型訓(xùn)練和數(shù)據(jù)處理的各個(gè)步驟連接起來。這里面我們提供了多種構(gòu)建連接的方式,包括靜態(tài)構(gòu)圖、SDK、圖形交互式等,用來去構(gòu)建復(fù)雜的大數(shù)據(jù)和AI交互的流程圖。

Serverless云原生服務(wù)

       如果想進(jìn)一步地去把大數(shù)據(jù)和AI融合好,用戶希望能夠在一份資源里面提供大數(shù)據(jù)和AI的服務(wù)。這時(shí)候就離不開Serverless云原生服務(wù)技術(shù)。我們一直在說云原生,但是云原生其實(shí)是有很多維度的,云原生更多的是資源是共享的,但是這個(gè)資源是什么?其實(shí)也是需要定義的。

       這個(gè)定義也分很多層次。你可以說你是硬件層面的共享,那你共享的是服務(wù)器、虛擬服務(wù)器;你也可以共享更高層次的虛擬資源,比如容器和服務(wù)本身。在不同的層次,共享層次越高,單位計(jì)算成本就會(huì)越低,當(dāng)然技術(shù)的復(fù)雜度也會(huì)越高。這也是為什么做云計(jì)算的團(tuán)隊(duì)一直在提高自己服務(wù)的云原生化,或者是去實(shí)現(xiàn)更高技術(shù)復(fù)雜度的能力,這樣就能以更加經(jīng)濟(jì)實(shí)惠的方式去提供更高層次的計(jì)算資源共享的目的,更加經(jīng)濟(jì)高效地提供大數(shù)據(jù)和AI的服務(wù)。

       也是因?yàn)榇,我們所有的大?shù)據(jù)產(chǎn)品都是在第六個(gè)維度,也就是Share Everything上的一個(gè)產(chǎn)品。但是我們都是架在了第五個(gè)維度,也就是Shared container,就是在容器計(jì)算服務(wù)這一層,這樣我們就可以把大數(shù)據(jù)和AI的系統(tǒng)有機(jī)地連在一個(gè)資源上面。

統(tǒng)一調(diào)度:多負(fù)載、差異化SLO增強(qiáng)的調(diào)度

       為了能夠達(dá)到這樣的能力其實(shí)并不是那么容易的,因?yàn)槿萜饔?jì)算服務(wù)最開始的產(chǎn)生是為了支持微服務(wù)的。微服務(wù)在并行調(diào)度的力度上面,和大數(shù)據(jù)以及AI智算的場(chǎng)景有很大不同。為了能夠讓不同的大數(shù)據(jù)和AI的任務(wù)和服務(wù),能夠跑在一個(gè)資源池上,其實(shí)我們要做大量工作。比如說,大數(shù)據(jù)場(chǎng)景里面有些很多高并發(fā)、短時(shí)長(zhǎng)的任務(wù),需要大大增強(qiáng)K8S本身的吞吐能力,解決它各個(gè)層次上的性能問題,包括延時(shí)和規(guī)模。

       同時(shí)我們有多元化的任務(wù),它不僅僅有在線服務(wù),還有計(jì)算任務(wù),我們要在調(diào)度上增強(qiáng)資源的豐富度和多場(chǎng)景的能力。比如在復(fù)雜的AI場(chǎng)景,需要做網(wǎng)絡(luò)拓?fù)涓兄,因(yàn)锳I大模型訓(xùn)練對(duì)網(wǎng)絡(luò)要求非常高。這時(shí)候我們?cè)趺礃釉谶@層的容器服務(wù)上、計(jì)算服務(wù)上感知這個(gè)拓?fù)浣Y(jié)構(gòu),有效做調(diào)度,我們?cè)趺礃幼尨髷?shù)據(jù)和AI的Workload在上面存儲(chǔ)資源,需要有非常多的負(fù)載感知、QS感知的調(diào)度。

多租安全隔離

       對(duì)云服務(wù)來說,最重要的就是多租安全的隔離。我們需要加強(qiáng)云原生的K8S在這個(gè)方向上的能力,這樣我們才能安心地把大數(shù)據(jù)和AI復(fù)用在一個(gè)資源上。我們?cè)诖鎯?chǔ)層、網(wǎng)絡(luò)層都用了非常多的安全隔離的技術(shù)。這樣才能把大數(shù)據(jù)和AI的多款產(chǎn)品,甚至是用戶自己的在線服務(wù),能夠集成在一個(gè)資源池里面,來給云上提供企業(yè)化的使用。

容器計(jì)算服務(wù)ACS

       這次云棲大會(huì)發(fā)布了容器計(jì)算服務(wù)ACS,PAI也是第一批容器計(jì)算服務(wù)支持的首批產(chǎn)品之一。在容器計(jì)算服務(wù)ACS平臺(tái)上,用戶可以很好地調(diào)配自己在大數(shù)據(jù)和AI的資源配比,然后在統(tǒng)一的資源底座上、在網(wǎng)絡(luò)上、在存儲(chǔ)IO上,就能夠更加自然地聯(lián)在一起。

多級(jí)Quota

       我們都知道大模型的計(jì)算,計(jì)算資源是非常昂貴的。我們還要持續(xù)地加強(qiáng)這個(gè)底座上的一些精細(xì)化的資源管理的能力,所以我們也即將發(fā)布多級(jí)Quota能力,使集群的管理員可以更好地管理資源,平時(shí)讓各個(gè)團(tuán)隊(duì)管理自己的資源,但是到了關(guān)鍵時(shí)刻。比如到了需要沖刺的階段,管理員可以把所有的資源集中起來,然后去訓(xùn)練一些比較大的模型。這是我們的多級(jí)Quota。

自動(dòng)拓?fù)涓兄{(diào)度

       對(duì)于超大模型的模型訓(xùn)練,我們要加強(qiáng)容器服務(wù)的調(diào)度能力。舉一個(gè)例子,我們可以看到在模型訓(xùn)練里面我們常常有一個(gè)步驟叫All-Reduce的環(huán)節(jié),如果不加以調(diào)度的控制,稍微亂一個(gè)順序,去構(gòu)成reduce的ring,就會(huì)發(fā)現(xiàn)會(huì)帶來一些cross的交換機(jī)的流量。最后我們經(jīng)過拓?fù)涓兄恼{(diào)度和非拓?fù)涓兄恼{(diào)度,前后性能提升的增幅能有30-40%,這是非常可觀的。

MaxCompute 4.0 Data+AI

       大模型訓(xùn)練往往需要海量的數(shù)據(jù),就跟我們前面說的我們不僅僅要把數(shù)據(jù)存下來,更多的是我們要進(jìn)行批處理進(jìn)行清洗、反復(fù)評(píng)估數(shù)據(jù)質(zhì)量、并根據(jù)反饋來調(diào)整數(shù)據(jù)。這時(shí)候我們就需要大數(shù)據(jù)平臺(tái),以及湖倉一體的能力在背后支撐。阿里云數(shù)倉產(chǎn)品MaxCompute上推出了MaxFrame的開放的數(shù)據(jù)格式,可以把強(qiáng)大的數(shù)據(jù)管理、數(shù)據(jù)計(jì)算的能力,和AI系統(tǒng)進(jìn)行有機(jī)和開放的連接。此外還有Flink-Paimon,在流計(jì)算的場(chǎng)景里,可以把流計(jì)算和online machine learning結(jié)合起來,把數(shù)據(jù)和訓(xùn)練的這條通路打通。

數(shù)據(jù)集加速 DataSetAcc

       在PAI靈駿集群的AI智算場(chǎng)景里面,不僅僅是高密的機(jī)器學(xué)習(xí)任務(wù),還有數(shù)據(jù)處理的任務(wù),但是高密計(jì)算的資源是非常寶貴的,這個(gè)時(shí)候可以去連接遠(yuǎn)端的大數(shù)倉來解決。但這里又會(huì)出現(xiàn)一個(gè)矛盾,就是遠(yuǎn)端的數(shù)據(jù)I/O不能匹配高密度的計(jì)算。為了解決這個(gè)問題,我們提供了一個(gè)數(shù)據(jù)集加速的DatasetAcc能力,就是利用PAI靈駿集群本地的SD和本地的儲(chǔ)存來做一個(gè)近端的cache,異步地把遠(yuǎn)端數(shù)倉的數(shù)據(jù)拉到近端。這樣就能很好地解決大數(shù)據(jù)和AI智算集群在訓(xùn)練場(chǎng)景上的結(jié)合,提升訓(xùn)練效率。

       正是因?yàn)榫邆淞诉@樣的有效連接大數(shù)據(jù)和AI智算集群的能力,我們才能在大規(guī)模的LLM訓(xùn)練過程中更好地使用大數(shù)據(jù)分析的能力。舉個(gè)例子,我們?cè)谟?xùn)練通義千問的過程中,獲取了大量重復(fù)的文本信息,去重是非常關(guān)鍵的步驟,不然整個(gè)訓(xùn)練數(shù)據(jù)集會(huì)被這些數(shù)據(jù)拉偏,導(dǎo)致有一些過擬合的情況產(chǎn)生。我們利用我們構(gòu)造的FlinkML的library構(gòu)建了一個(gè)高效的文本去重算法,算法的同學(xué)就可以快速地進(jìn)行多次文本去重,提高整個(gè)模型開發(fā)的效率。

       我們前面說的都是大數(shù)據(jù)怎么能夠助力于AI訓(xùn)練的部分,也就是我們經(jīng)常聽到的 Data for AI,但其實(shí)反方向,AI技術(shù)的成長(zhǎng)也能夠幫助數(shù)據(jù)系統(tǒng),去提高它的服務(wù)質(zhì)量和效率,現(xiàn)在的數(shù)據(jù)分析也從BI走向了BI+AI。

DataWorks Copilot

       過去的數(shù)據(jù)分析做的更多的是 business intelligence,如今有更多AI技術(shù)可以去推動(dòng)數(shù)據(jù)分析能力的提升。我們?cè)谶@方面做了一些工作,比如說在數(shù)據(jù)開發(fā)和治理平臺(tái)DataWorks,我們推出了 DatawWorks Copilot,也就是代碼助手。代碼助手可以幫助用戶用自然語言的方式,去找到感興趣的表格,然后再幫助用戶構(gòu)建SQL query,最后再去執(zhí)行query。

       當(dāng)然,真正要做出一個(gè)好用的代碼助手,只用基礎(chǔ)模型是不夠的。DataWorks平臺(tái)基于大量的公開query,然后我們用本身的語言,就是MaxCompute的或者是Flink的語言,作為一個(gè)數(shù)據(jù)集,我們拿基礎(chǔ)模型和這個(gè)數(shù)據(jù)集做了finetune,產(chǎn)生一個(gè)垂類模型,然后再在這個(gè)垂類模型做推理,產(chǎn)生了這個(gè)特定場(chǎng)景里的更有效的代碼輔助工具。通過這種方式,我們能夠提效30%的代碼的開發(fā)。

DataWorks AI 增強(qiáng)分析

       不僅僅是輔助代碼生成,我們今年也發(fā)布了DataWorks數(shù)據(jù)洞察功能。我們可以通過AI的方式、AI的能力,自動(dòng)地根據(jù)已有數(shù)據(jù),提供一些智能的數(shù)據(jù)洞察。通過這種方式,我們可以讓用戶更快速地掌握數(shù)據(jù)的特性,從而加快用戶對(duì)于數(shù)據(jù)的理解和分析能力。

       以上的分享是希望通過剛才說的一些技術(shù)點(diǎn)和案例闡述現(xiàn)在AI和大數(shù)據(jù)的一體化的演進(jìn)過程。我們堅(jiān)信大數(shù)據(jù)和AI是相輔相成的,也希望推動(dòng)數(shù)據(jù)智能更快的落地和實(shí)現(xiàn)。

免責(zé)聲明:本文僅代表作者個(gè)人觀點(diǎn),與本網(wǎng)無關(guān)。其原創(chuàng)性以及文中陳述文字和內(nèi)容未經(jīng)本站證實(shí), 對(duì)本文以及其中全部或者部分內(nèi)容、文字的真實(shí)性、完整性、及時(shí)性本站不作任何保證或承諾, 請(qǐng)讀者僅作參考,并請(qǐng)自行核實(shí)相關(guān)內(nèi)容。當(dāng)事人(單位)如有異議,請(qǐng)參閱《刪帖說明》辦理。
中國(guó)品牌要聞網(wǎng)-傳遞資訊的價(jià)值打造品牌的影響
編輯:綜合整理
2024-09-10
評(píng)論(0)
  • CopyRight@ 2005-2022 中國(guó)品牌要聞網(wǎng)
  • 工商注冊(cè)號(hào) 430122000189097
  • ICP備案許證:渝ICP備2022012785號(hào)