鵬城云腦支撐鵬程系列大模型基礎(chǔ)研究
各位專家、各位來賓,大家好!今天我主要是講鵬程大模型和自然語言處理有關(guān)的賦能。
鵬城實驗室是國家為了中國科技長期能夠穩(wěn)定支撐整個國家的發(fā)展,所布局的戰(zhàn)略科技力量當中的一支團隊,主要聚焦寬帶通信和新型網(wǎng)絡(luò)方面,包括高效能云計算服務(wù)。今天我講的基于昇騰基礎(chǔ)軟硬件所做的工作就是屬于高效能云計算服務(wù)中的一塊,主要是通過鵬城云腦來實施這個戰(zhàn)略。
為什么要做這個?道理其實大家很容易懂,現(xiàn)在有了人工智能,因為數(shù)據(jù)增長速度非???,算力又滿足不了要求,應(yīng)用又很急切,我們怎樣把這些東西全都打通?需要有一個非常強的算力平臺作為支撐,能夠處理大規(guī)模的數(shù)據(jù),能夠有好的算法,在這個算力平臺上把想要的解決方案提供出來,所以有這樣一臺大的設(shè)施是非常關(guān)鍵的,這個設(shè)施我們就把它叫做云腦。
我們在建設(shè)鵬城云腦II的期間,真正實現(xiàn)了“深圳速度”的一個神話,為什么呢?了解我們國家科研制度的都知道,你要想做一個大的裝置,或者做一臺比如說大的機器,從開始到論證、報方案、批復,然后科研,然后再開始建設(shè),這一個周期下來,快的是幾年,慢的有的是十幾年。而鵬城云腦II從開始遞交方案到機器建成一共用了九個月,真正體現(xiàn)了“深圳速度”。編制項目建議書是在去年(2020年)3月份,云腦II機器啟動運行是在去年10月15號,大家看左面這個坑是建機房之前,原來是采石場的一個坑,右邊這個照片是機房建好以后的樣子。現(xiàn)在這臺機器非常忙,這個機器的機時的使用率是99%,就是基本上是一點都不閑著,排著隊在等機時,因為我們有太多大模型需要在這個機器上去訓練。
這個機器我們叫E級AI算力,達到1000P,所謂E級是10的18次方,或者換成我們普通說法叫做百億億次,我們知道一億是10的8次方,億億就是10的16次方,后面再加兩個零就是百億億次,應(yīng)該說在AI算力上,是現(xiàn)在最強的一個,當然可能其他一些地方也有比這個算力規(guī)模稍微小一點的機器,現(xiàn)在用華為的系統(tǒng)已經(jīng)建了大概六七個、七八個,或者是100P、300P的機器,大概是這臺機器的1/10,或者是1/3這樣的一個算力。這個算力要把它轉(zhuǎn)起來還是要花點氣力的,因為我們這臺機器是基于華為的Atlas 900 AI集群實現(xiàn)的,一組Atlas 900 AI集群有128個計算節(jié)點,每個節(jié)點內(nèi)包含8顆昇騰910處理器,我們把四組Atlas 900 AI集群連到一起,整個是統(tǒng)一接口、統(tǒng)一形象,完全是一張網(wǎng)、一個機器。為了做這個機器,我們把四組集群上面架了一個全交換的非常快的網(wǎng)絡(luò),為了讓它對數(shù)據(jù)的讀取速度更快,對每一個機器里面的存儲做了加強,對它內(nèi)部的一些運算底層的軟件做了優(yōu)化,這樣就使得這個機器的速度非?????斓绞裁闯潭饶?基本上這臺機器現(xiàn)在在全世界的IO速度是最快的??斓绞裁闯潭饶?在去年的11月份,這臺機器去打榜的時候,比排第二的英特爾的一臺機器快了四倍。如果想做人工智能訓練,想做大模型訓練, IO的速度是決勝的,因為要有大量的數(shù)據(jù)來回的讀進去吐出來,如果IO速度如果不行的話,很多的開銷都被IO給吃掉了。這臺機器因為它IO方面做了特殊的配置,而且網(wǎng)絡(luò)方面也做了特殊配置,所以這個速度,就是通信的開銷,整個占比是比較低的,所以它在整個模型訓練的時候效率就會高。
這臺機器現(xiàn)在至少已經(jīng)訓練出兩個千億級的大模型。前幾天華為已經(jīng)發(fā)布過一個盤古大模型,今天我要跟大家說的是叫鵬程大模型,這是兩個自然語言處理預訓練大模型之一。大家知道GPT3基本上是做自然語言處理,大家非常向往的一個模型,微軟為了訓練一個GPT3在微軟的環(huán)境下,花了1200萬美元訓練出一個GPT3的模型來。我們現(xiàn)在云腦II機器做完以后,已經(jīng)訓練出兩個這樣的模型,一個是鵬城實驗室跟MindSpore團隊等聯(lián)合攻關(guān)訓練出來的,這個模型叫鵬程.盤古,模型參數(shù)為兩千億;另一個是華為云聯(lián)合鵬城實驗室一起聯(lián)合訓練出來的大模型,這個模型叫華為.盤古,這個模型參數(shù)為一千一百億。這兩個模型整個的復雜度都是千億參數(shù),而且專門是針對中文的最大的模型。
鵬程模型還有一個特點是開源的,我們內(nèi)部的人討論說,就算你把兩千億開源了,它離了我們這臺機器還是玩不轉(zhuǎn),要想跑起來就得來我們這個機器上跑。為了支持應(yīng)用怎么辦呢?我們先開出一個百億級的大模型來,那么千億級的,如果有需要,只要是講清楚你要怎么用,在哪里算,我們也可以開。所以原則上支持開源的。
那么有了這個開源,你就可以做很多自然語言處理方面的事。你要想做一個中文的問題回答系統(tǒng),就是問答系統(tǒng),你要想做自然語言的理解,想做一些理解器,或者你想做機器翻譯等等,這個系統(tǒng)都可以做。這個模型可以做云搜索、智能客服、醫(yī)療的一些向?qū)А⒒拥慕逃?、文學創(chuàng)造、自動摘要的生成,甚至做代碼的生成?,F(xiàn)在我們有一個團隊在做一個知識產(chǎn)權(quán)交易聯(lián)邦推薦系統(tǒng),沒有這個模型之前,是用軟件和很多專家的知識,做了一個系統(tǒng),用上鵬程大模型以后,這個系統(tǒng)性能一下子提高了12.2%,所以鵬程大模型的好處是顯而易見的。而且我們希望用這個模型來突破“語言壁壘”,支撐“一帶一路”的國家戰(zhàn)略,也就是說用這個模型我們很容易做機器翻譯,做商業(yè)的這種報關(guān)等等這些文件的交換。以前是商量好用英語或者商量好用什么語言,現(xiàn)在隨便,你這邊用中文,那邊用阿拉伯語,通過這個東西馬上給你互譯過來。大家現(xiàn)在用手機就可以登錄進去,試試這個模型好不好用,你問一些問題,看看它能不能回答出來。
鵬程大模型到底是怎么“煉”出來的呢?它是有四個方面基本的要素:
第一個要素是AI的算力,就是鵬城云腦II;第二個要素是要有高質(zhì)量的中文語料庫,我們有一個專門整理中文語料數(shù)據(jù)集的團隊,把能拿到、能買到的數(shù)據(jù)全都拿來進行清洗,然后把數(shù)據(jù)整理得非常好,送進機器就可以進行訓練;然后要有一個非常好的全自動并行的這樣一個算法,這個算法是由昇騰、MindSpore團隊和鵬城實驗室的工程師無縫合作,把這些全并行的技術(shù)實現(xiàn)了;最后就是通過“產(chǎn)學研”三方合作新型研發(fā)合作機制,結(jié)合華為的產(chǎn)業(yè)優(yōu)勢,北京大學的學術(shù)優(yōu)勢,以及鵬城實驗室的研究優(yōu)勢,形成互補、協(xié)同。
整個鵬城云腦可以作為核心節(jié)點連接全國算力的基礎(chǔ)設(shè)施,我們剛才說的是1000P的這樣一臺機器,現(xiàn)在全國各地有不少基于昇騰軟硬件在做的100P的或者300P的機器,這些可以聯(lián)動起來一起做,有大的問題、難的問題可以到1000P的機器上跑,小一點的模型或者私有化的一些應(yīng)用,可以到100P、300P的機器上跑,這樣大家有些分工,就可以在全國把人工智能分享起來。