后Transformer時(shí)代,AI將何去何從?(上)|【十萬字】深度研報(bào)
從互聯(lián)網(wǎng)的搜索引擎和個(gè)性化推薦系統(tǒng),到掃地機(jī)器人的Mapping算法和智能音箱的對(duì)話,再到“AI四小龍”的圖像識(shí)別和自動(dòng)駕駛公司,一直到現(xiàn)在的多模態(tài)大模型的生成能力,幾乎每一次的AI的產(chǎn)業(yè)化,都會(huì)帶來商業(yè)革命,從而產(chǎn)生巨大的社會(huì)價(jià)值。
本文的重點(diǎn)將全方位框架性的介紹AI:從哲學(xué)和神經(jīng)科學(xué)的角度映射到AI學(xué)科,從技術(shù)理論講至落地流程,最后覆蓋大模型全產(chǎn)業(yè)鏈。當(dāng)然也包括上述的過去、現(xiàn)在與未來。為同行們提供多元的觀點(diǎn)和投資方向,也為了想理解AI的讀者們進(jìn)行一定的補(bǔ)充,方便深入研究。
本文在大量專家和同行的文獻(xiàn)觀點(diǎn)基礎(chǔ)上,筆者加上一些淺薄的理解生成了這篇文章。真的非常感謝前輩和同行們的知識(shí)分享,如有錯(cuò)誤,請(qǐng)及時(shí)指正,也歡迎激烈的討論。
本文內(nèi)容摘選于Scale Partners勢(shì)乘資本《AI研究》深度報(bào)告。
一、核心判斷及觀點(diǎn)
壓縮即智能-十幾萬字的核心不過100多字
注意力機(jī)制告訴我們要做減法,總結(jié)是最好的減法過程。一個(gè)產(chǎn)業(yè)的結(jié)論:5句話足以。
- 理解神經(jīng)科學(xué)機(jī)制,會(huì)對(duì)AI的發(fā)展起到關(guān)鍵作用!
- 聯(lián)結(jié)主義學(xué)派仍然繼續(xù)要走壓縮智能和物理世界模型等深度仿生路線!
- 大模型的Scaling Law大概率失效下,大模型將降本增效-模型更小,成本更低,大家將會(huì)專注基于目前大模型能力,開發(fā)PMF的產(chǎn)品!
- 國(guó)內(nèi)大模型公司將會(huì)轉(zhuǎn)型做垂直行業(yè)產(chǎn)品的變多,不會(huì)有那么多的人留在牌桌上!
- AI Infra:推理和訓(xùn)練階段的計(jì)算優(yōu)化,合成數(shù)據(jù);大模型層:有持續(xù)穩(wěn)定大流量使用以及良好的盈利潛力,期望能突破互聯(lián)網(wǎng)的生態(tài);應(yīng)用層將大爆發(fā):美術(shù)工具、音樂生成、AI4S、生產(chǎn)控制、學(xué)齡前兒童教育、游戲、智能眼鏡、智能陪伴和具身智能;商業(yè)價(jià)值較高,投資機(jī)會(huì)明顯。
二、AI導(dǎo)論
AI概念
人工智能(Artificial Intelligence,AI)研究目的是通過探索智慧的實(shí)質(zhì)(哲學(xué)知識(shí)論和腦科學(xué)),擴(kuò)展人造智能(計(jì)算機(jī)科學(xué))—— 促使智能主體會(huì)聽(語音識(shí)別、機(jī)器翻譯等)、會(huì)看(圖像識(shí)別、文字識(shí)別等)、會(huì)說(語音合成、人機(jī)對(duì)話等)、會(huì)思考(人機(jī)對(duì)弈、專家系統(tǒng)等)、會(huì)學(xué)習(xí)(知識(shí)表示,機(jī)器學(xué)習(xí)等)、會(huì)行動(dòng)(機(jī)器人、自動(dòng)駕駛汽車等)。
AI學(xué)科的發(fā)展是由哲學(xué)知識(shí)論不斷引導(dǎo)著神經(jīng)科學(xué)和計(jì)算機(jī)科學(xué)融合(兩者互相促進(jìn))的。
一個(gè)經(jīng)典的AI定義是:“ 智能主體可以理解數(shù)據(jù)及從中學(xué)習(xí),并利用知識(shí)實(shí)現(xiàn)特定目標(biāo)和任務(wù)的能力。(A system’s ability to correctly interpret external data, to learn from such data, and to use those learnings to achieve specific goals and tasks through flexible adaptation)”
意識(shí)之外…
辯證上來說,一定會(huì)有人類的感知系統(tǒng)盲區(qū),無法感知就無法意識(shí)到盲事物的存在。而人類萬萬沒想到,這個(gè)盲區(qū)竟先來自于我們的大腦,具體來說是我們的神經(jīng)系統(tǒng)。
神經(jīng)系統(tǒng)把我們的感知死死限制在了對(duì)外界信息的獲取和處理過程中,你可以通過眼、耳、口、鼻、舌、皮膚等外界感受器,獲取大街上的帥哥美女信息,想一想今天晚上吃些什么,然后再刷刷抖音【1】。
我們的意識(shí)絕對(duì)不能主觀控制心跳,控制腸胃的蠕動(dòng),肝臟的運(yùn)行,控制血管的收縮,當(dāng)然,意識(shí)更不能指導(dǎo)每一個(gè)神經(jīng)元的運(yùn)轉(zhuǎn),由于意識(shí)權(quán)限僅僅被限制在神經(jīng)網(wǎng)絡(luò)之中,若不是通過解剖和顯微鏡看到了神經(jīng)元,人類甚至不知道神經(jīng)元本身的存在。
我們以為自己的意識(shí)是身體或者大腦的主人。但我們還在媽媽肚子里的前兩個(gè)月,根本沒有任何的意識(shí)。我們以為的“自我”根本就不存在。但身體,依舊按照DNA編碼的規(guī)則,按部就班的發(fā)育著。
隨著孕齡的增大,聽覺、味覺、觸覺等感知系統(tǒng)的發(fā)育逐漸完善后,大腦才能建立足夠多的神經(jīng)網(wǎng)絡(luò),讓我們產(chǎn)生意識(shí)。
人類科學(xué)家終于認(rèn)識(shí)到–意識(shí)不等于大腦。
我們思考中的意識(shí)世界不過是神經(jīng)元相互協(xié)作的結(jié)果。主動(dòng)的意識(shí)習(xí)慣也可以改造神經(jīng)元回路。(辯證唯物主義:意識(shí)產(chǎn)生于物質(zhì),但意識(shí)可以改造物質(zhì))
神經(jīng)科學(xué)
隨著人們對(duì)神經(jīng)系統(tǒng)的研究深入,科學(xué)家們對(duì)智能的形成逐漸從意識(shí)層面(可認(rèn)知的、膚淺)轉(zhuǎn)向至物理層面(難以認(rèn)知的、源頭)。
圖:意識(shí)和物理上的知識(shí)形成【2】
很多AI創(chuàng)業(yè)者和科學(xué)家特別喜歡說自己的項(xiàng)目才是更像人的運(yùn)動(dòng)、思維和感知模式,來強(qiáng)調(diào)技術(shù)的優(yōu)越性,本篇將注重:
- 人的神經(jīng)系統(tǒng)如何運(yùn)作
- 以及是否需要擬人才能實(shí)現(xiàn)效果
來幫助大家更好的獨(dú)立判斷項(xiàng)目。
1)神經(jīng)科學(xué)的發(fā)展歷史、現(xiàn)狀和展望
注:本篇知識(shí)點(diǎn)和框架大規(guī)模借鑒了認(rèn)知神經(jīng)科學(xué)之父邁克爾·加扎尼加(Michael S. Gazzaniga)編寫的認(rèn)知神經(jīng)科學(xué)教科書第三版,在此基礎(chǔ)上補(bǔ)充了了前沿研究成果。
神經(jīng)科學(xué)概述
神經(jīng)科學(xué)(Neuroscience),又稱神經(jīng)生物學(xué),是對(duì)神經(jīng)系統(tǒng)(包括大腦、脊柱和周圍神經(jīng)系統(tǒng))及其功能和疾病的科學(xué)研究。
神經(jīng)科學(xué)是醫(yī)學(xué)領(lǐng)域,乃至整個(gè)自然科學(xué)界最前沿、最復(fù)雜、最深?yuàn)W的學(xué)科之一。近一百年,腦科學(xué)獲得了近二十項(xiàng)諾貝爾獎(jiǎng)。
“左腦負(fù)責(zé)理性思考,右腦負(fù)責(zé)創(chuàng)造力。”很多人曾經(jīng)、甚至現(xiàn)在依然對(duì)類似這樣的說法信以為真。這是因?yàn)?,很長(zhǎng)時(shí)間以來,對(duì)大腦的研究往往會(huì)把大腦劃分出幾個(gè)區(qū)域,分別研究單個(gè)腦區(qū)的功能。
但現(xiàn)在,許多神經(jīng)科學(xué)家指出,是時(shí)候以新的方式來提升我們對(duì)大腦運(yùn)行原理的認(rèn)識(shí)了:大腦的各種功能,關(guān)鍵不在于某一個(gè)腦區(qū),而是來自于不同區(qū)域之間的交流。
人類對(duì)腦的探索過程
圖:1873年,人類通過染色法第一次觀察到完整的神經(jīng)元
西方的科學(xué)家,經(jīng)歷了哲學(xué)思考、動(dòng)物解剖、人類大腦解剖、腦功能分區(qū)、染色法發(fā)現(xiàn)神經(jīng)元、電生理、神經(jīng)化學(xué)、膜片鉗、核磁共振成像、甚至是AI模擬的范式轉(zhuǎn)變。由思想層面轉(zhuǎn)變至物質(zhì)層面,由整體層面轉(zhuǎn)變至神經(jīng)元微觀層面,由直接觀察到間接機(jī)制的模擬。
總而言之,神經(jīng)科學(xué)發(fā)展是一個(gè)由不斷更新的研究手段(1 直接觀察:解剖、核磁共振影像;2 間接觀察:電壓鉗、膜片鉗、染色示蹤;3 藥理學(xué);4 認(rèn)知精神科學(xué) 5 AI模型復(fù)現(xiàn))為主要驅(qū)動(dòng)和從而發(fā)現(xiàn)的機(jī)制原理為次要驅(qū)動(dòng)的相互影響雙螺旋發(fā)展。
現(xiàn)狀和展望
至今,目前的腦科學(xué)研究,在分子生物層面和認(rèn)知行為層面還是很強(qiáng)的(個(gè)體機(jī)制),薄弱環(huán)節(jié)在于神經(jīng)環(huán)路和系統(tǒng)機(jī)制方面(整體機(jī)制),如何分析各個(gè)神經(jīng)環(huán)路的工作原理,以此來解釋腦的功能或人的行為,進(jìn)而闡明人腦的系統(tǒng)性工作機(jī)制。
圖:個(gè)體機(jī)制–神經(jīng)元的工作機(jī)制
認(rèn)識(shí)神經(jīng)元不難,搞清楚它們之間的排列組合,才是難【3】。
因?yàn)槿祟惖拇竽X估計(jì)已經(jīng)包含860億個(gè)(10^11次方)神經(jīng)元,這些細(xì)胞信號(hào)傳遞到對(duì)方通過多達(dá)100萬億(10^15)突觸連接。
圖:整體機(jī)制–神經(jīng)元的排列組合
就好比,我們現(xiàn)在已經(jīng)初步畫好了咱們大腦圖譜有哪些“中心功能大樓”,也知道了這些大樓本身是由神經(jīng)元為磚瓦砌起來的,但是大樓內(nèi)部的電線管道是怎么鋪的?大樓與大樓之間的交通線路是怎么設(shè)計(jì)的?它們之間的排列組合、優(yōu)先次序、是否有替代線路?我們?nèi)匀恢跎佟?/p>
這些像蜘蛛網(wǎng)一樣密密麻麻排列的“大腦”線路,神經(jīng)科學(xué)家們稱之為“連接組”(connectome)。我們始終相信,研究大腦,就要先從全面繪制大腦的連接地圖開始(大腦的物質(zhì)構(gòu)造)。
階段一:C.elegan,線蟲-302個(gè)神經(jīng)元(重現(xiàn)方法:切片/電鏡/手繪)
于是,我們決定先殺個(gè)小小的生物的大腦來試試水,第一刀,揮向的是C.elegan,線蟲(302個(gè)神經(jīng)元)。
1970年代,劍橋大學(xué)兩位分子生物學(xué)家John White 和 Sidney Brenner決定利用線蟲來研究大腦連接組學(xué),他們將線蟲大腦切成了超薄腦片,通過將相機(jī)架在電鏡下拍攝微觀圖片,然后放大打印出每一個(gè)腦片的電鏡下圖像,再人工用彩色鉛筆一點(diǎn)一點(diǎn)、一圈一圈地標(biāo)記線蟲的大腦結(jié)構(gòu),繪制線蟲腦圖。
終于,十年以后,1986年,這項(xiàng)工作完成了,線蟲–一個(gè)擁有302個(gè)神經(jīng)元的簡(jiǎn)單生物–成為了人類神經(jīng)科學(xué)研究史上第一個(gè),也是迄今為止唯一一個(gè),擁有完整大腦圖譜的生物。
階段2:果蠅的半個(gè)大腦-25,000個(gè)神經(jīng)元(重現(xiàn)方法:切片/電鏡/CV)
我們開始想辦法提高技術(shù),把樣品準(zhǔn)備和電鏡拍攝速度提高、利用計(jì)算機(jī)算法來自動(dòng)識(shí)別電鏡圖像下的神經(jīng)元、以及引入人工智能來處理這大批量的數(shù)據(jù),等等。
我們“教會(huì)”計(jì)算機(jī)如何識(shí)別一個(gè)個(gè)神經(jīng)元細(xì)胞,命令它們將不同神經(jīng)元以不同顏色區(qū)分開來,接著再將這每一個(gè)薄薄的腦片疊加還原成原本的腦組織塊,以重建里面的每一個(gè)神經(jīng)元的完整模樣和真實(shí)連接關(guān)系……
果蠅的大腦有芝麻粒那么大,包含大約十萬個(gè)神經(jīng)元和數(shù)百萬個(gè)突觸連接。
2020年,哈佛大學(xué)研究團(tuán)隊(duì)宣布他們成功繪制出了…半個(gè)果蠅大腦圖譜,下圖是這半個(gè)果蠅大腦圖譜的簡(jiǎn)單展示,包含了約25,000個(gè)神經(jīng)元。
盡管還有半個(gè)果蠅大腦需要畫,但是這半個(gè)果蠅腦譜,已經(jīng)是現(xiàn)如今被報(bào)導(dǎo)出的最大的生物大腦圖譜了。
階段3:一立方毫米的老鼠的大腦-10萬個(gè)神經(jīng)元(重現(xiàn)方法:聚焦離子束顯微鏡&3D-CV)
Janelia團(tuán)隊(duì)則開始使用聚焦離子束顯微鏡,聚焦離子束系統(tǒng)除了具有電子成像功能外,由于離子具有較大的質(zhì)量,經(jīng)過加速聚焦后還可對(duì)材料和器件進(jìn)行蝕刻、沉積、離子注入等加工,因此可以大大縮減樣品和拍攝時(shí)間。
同時(shí),他們找來了谷歌合作,將2D數(shù)據(jù)進(jìn)行注釋標(biāo)記以及3D重建(谷歌地圖技術(shù)),但是有時(shí)候計(jì)算機(jī)會(huì)將兩個(gè)纏結(jié)在一起的神經(jīng)元誤認(rèn)為是一個(gè)神經(jīng)元,這給后期的勘誤工作帶來了很多麻煩。最后還是要靠經(jīng)驗(yàn)豐富的科學(xué)家來進(jìn)行最后的結(jié)果審查。
Allen Brain也是繪制腦圖的主要貢獻(xiàn)者,團(tuán)隊(duì)于2019年曾宣布他們已經(jīng)花了十年時(shí)間繪制出了一立方毫米的小鼠大腦圖,其中包含了10萬個(gè)神經(jīng)元和100萬個(gè)突觸結(jié)構(gòu)。
雖然,一個(gè)小鼠大腦有大約500個(gè)立方毫米這么大,沒關(guān)系,總有一天!
目前,腦功能成像,神經(jīng)刺激,神經(jīng)信號(hào)記錄,腦損傷研究,等等研究方法【4】,大多是相關(guān)性研究,通過研究來證實(shí)某個(gè)神經(jīng)核團(tuán)或環(huán)路與某種腦功能的相關(guān)性,或者進(jìn)一步再描述其簡(jiǎn)單的因果關(guān)系,“AA通過BB調(diào)制CC的活動(dòng)來實(shí)現(xiàn)XX功能”之類。這些研究帶來很多孤立的碎片的研究結(jié)論,每年在頂刊發(fā)表很多高分文章,但對(duì)整個(gè)人腦的工作原理仍然缺乏突破。
總而言之:仍然缺乏有效的觀察研究方法(AI連接主義的模型模擬預(yù)測(cè)為一大方向),重現(xiàn)人類大腦結(jié)構(gòu)和機(jī)制。(目前神經(jīng)學(xué)前沿一大熱點(diǎn)仍然是神經(jīng)元分類)。
神經(jīng)系統(tǒng)機(jī)制
大腦神經(jīng)元的建立過程——從基礎(chǔ)構(gòu)建到復(fù)雜網(wǎng)絡(luò)的形成之旅【5】。
神經(jīng)細(xì)胞神經(jīng)系統(tǒng)的細(xì)胞主要分為兩大類:
一類是主導(dǎo)電化學(xué)信號(hào)傳導(dǎo)的神經(jīng)元細(xì)胞;
二類是像膠水一樣把把神經(jīng)元細(xì)胞聯(lián)結(jié)起來,并輔助神經(jīng)元功能的膠質(zhì)細(xì)胞。
神經(jīng)元具有感受刺激、整合信息和傳導(dǎo)沖動(dòng)的能力。
神經(jīng)元感知環(huán)境的變化后,再將信息傳遞給其他的神經(jīng)元,并指令集體做出反應(yīng)。神經(jīng)元占了神經(jīng)系統(tǒng)約一半,其他大部分由神經(jīng)膠質(zhì)細(xì)胞所構(gòu)成。
據(jù)估計(jì),人腦中約有850-1200億個(gè)神經(jīng)元,神經(jīng)膠質(zhì)細(xì)胞的數(shù)目則更是其10倍之多。
神經(jīng)元細(xì)胞
圖:典型神經(jīng)元2D結(jié)構(gòu)
結(jié)構(gòu)及功能
神經(jīng)元形態(tài)與功能多種多樣,但結(jié)構(gòu)上大致都可分成細(xì)胞體(胞體)和神經(jīng)突(胞突)兩部分。
神經(jīng)突又分樹突(dendrite)和軸突(axon)兩種。軸突往往很長(zhǎng),由細(xì)胞的軸丘分出,其直徑均勻,開始一段稱為始段,離開細(xì)胞體若干距離后始獲得髓鞘,成為神經(jīng)纖維。
圖:典型神經(jīng)元3D結(jié)構(gòu)
1、樹突(dendrite)- 接收器:樹枝狀的纖維從細(xì)胞體向外伸出,分叉且非常多,這些纖維被稱為樹突,主要是收集來自感覺器官的直接刺激或來自相鄰神經(jīng)元的活動(dòng)信息,并把傳入信息傳遞給神經(jīng)元的中心部分。這些突觸具有一定的權(quán)重,它們決定了信號(hào)傳遞的強(qiáng)度和效率。權(quán)重的大小反映了神經(jīng)元之間的連接強(qiáng)度,從而影響信息傳遞的效率和方式【6】。
2、胞體(soma) – 處理器:神經(jīng)元的中心部分,含有細(xì)胞的染色體,能夠迅速評(píng)估同時(shí)接收到的數(shù)百上千條信息。其中有些信息可能是興奮性的(“放電”),有些是抑制性的(“不要放電”),胞體的喚起程度取決于所有傳入信息的匯總。
3、軸突(axon) – 發(fā)射器:從胞體上伸出,上有髓鞘(軸突覆蓋物),傳遞被喚起的神經(jīng)元自己的信息(興奮大于抑制),有時(shí)很長(zhǎng),有的人連接脊與腳趾的軸突可以長(zhǎng)達(dá)一米多。軸突有時(shí)會(huì)非常短,大腦里中間神經(jīng)元之間的軸突可能只有不到1厘米長(zhǎng)。
圖:神經(jīng)元連接部分-軸突末端和樹突前段
神經(jīng)元的軸突會(huì)與另一個(gè)神經(jīng)元的樹突通過形成突觸結(jié)構(gòu)建立聯(lián)系,在突觸結(jié)構(gòu)中,一些神級(jí)遞質(zhì)(化學(xué))會(huì)通過上一個(gè)細(xì)胞的軸突上的突觸前膜,向下一個(gè)細(xì)胞的樹突上的突觸后面?zhèn)鬟f,以實(shí)現(xiàn)細(xì)胞間的信號(hào)傳遞。神經(jīng)元軸突還可通過發(fā)生動(dòng)作電位(電信號(hào))進(jìn)行電信號(hào)傳遞。
功能
神經(jīng)細(xì)胞可以大致分為運(yùn)動(dòng)神經(jīng)細(xì)胞、感覺神經(jīng)細(xì)胞和中間神經(jīng)細(xì)胞三大類【7】。
感覺神經(jīng)細(xì)胞(Sensory neurons)的細(xì)胞體位于背根神經(jīng)節(jié)(細(xì)胞體簇就在脊髓外),而它們的外圍延伸遍及全身。具體來說,感覺神經(jīng)元通過特定的外部和內(nèi)部受體被感覺輸入激活。
- 外部感受器對(duì)身體外部的刺激做出反應(yīng)包括嗅覺感受器、味覺感受器、光感受器、耳蝸毛感受器、溫度感受器和機(jī)械感受器。內(nèi)部受體對(duì)身體內(nèi)部的變化作出反應(yīng)。例如,它們可以檢測(cè)血液化學(xué)性質(zhì)的變化或通過引起疼痛感來對(duì)潛在的破壞性刺激做出反應(yīng)。
- 感覺神經(jīng)細(xì)胞利用其感受器,將特定類型的刺激轉(zhuǎn)換為動(dòng)作電位或階梯性電位,并將信號(hào)傳遞回中樞神經(jīng)系統(tǒng)。
運(yùn)動(dòng)神經(jīng)細(xì)胞(Motor neurons)是一種位于大腦運(yùn)動(dòng)皮層、腦干或脊髓的神經(jīng)細(xì)胞,其軸突(傳出神經(jīng)纖維)可延伸至脊髓內(nèi)部或脊髓外部。
中間神經(jīng)細(xì)胞(Interneurons)的細(xì)胞體皆位于中樞神經(jīng)系統(tǒng),連接神經(jīng)系統(tǒng)的多個(gè)區(qū)域。中間神經(jīng)元是神經(jīng)回路的中心節(jié)點(diǎn),允許感覺神經(jīng)元、運(yùn)動(dòng)神經(jīng)元和中樞神經(jīng)系統(tǒng)之間進(jìn)行通信。此類別包含最多種類的神經(jīng)元,它們參與處理許多不同類型的信息,例如反射、學(xué)習(xí)和決策。
——此類神經(jīng)元的數(shù)量龐大,約占神經(jīng)元總數(shù)的99%。
分工與合作:三種神經(jīng)細(xì)胞構(gòu)成了一個(gè)大環(huán)路,如下圖。感覺神經(jīng)細(xì)胞通過感受器感受到刺激(火的炙烤),并將刺激信號(hào)傳遞到中樞神經(jīng)系統(tǒng)的中間神經(jīng)細(xì)胞。中間神經(jīng)細(xì)胞通過相互聯(lián)絡(luò),做出決定(移開手指),并將指令傳遞給運(yùn)動(dòng)神經(jīng)細(xì)胞。而后,運(yùn)動(dòng)神經(jīng)細(xì)胞負(fù)責(zé)將指令信號(hào)傳遞到效應(yīng)器,使肌肉動(dòng)作(移開手指)。
釋放不同的突觸遞質(zhì)來區(qū)分神經(jīng)元
突觸神經(jīng)突觸是允許神經(jīng)通信的神經(jīng)元之間的連接點(diǎn)。
大腦中絕大多數(shù)的神經(jīng)元大致可分為興奮性神經(jīng)元(excitatory)或抑制性(inhibitory)神經(jīng)元。興奮性神經(jīng)元占80-90%,它們釋放興奮性神經(jīng)遞質(zhì)并使得下游神經(jīng)元更興奮,相當(dāng)于大腦中的”油門“;抑制性神經(jīng)元占10-20%, 它們釋放抑制性神經(jīng)遞質(zhì)使得下游神經(jīng)元更不興奮,相當(dāng)于大腦中的”剎車“,避免過于興奮,比如痛覺麻痹等。
前者主要傳遞興奮性神經(jīng)遞質(zhì),如谷氨酸(Glutamate)、腎上腺素(Epinephrine);而后者主要傳遞抑制性遞質(zhì),如γ-氨基丁酸(GABA)和血清素(5-HT)【8】。
神經(jīng)遞質(zhì)目前在人體中發(fā)現(xiàn)100多種(100多種信息維度),然而,大腦中絕大多數(shù)的神經(jīng)元還是單純的興奮性或抑制性,再加上同時(shí)釋放多種神經(jīng)遞質(zhì)的意義和機(jī)制仍不清楚,相關(guān)問題還處于神經(jīng)科學(xué)研究的早期階段。
具體工作原理
一個(gè)典型的神經(jīng)元能夠通過樹突和胞體一次接收上千條信息【9】。當(dāng)胞體被充分喚起時(shí),它自己的信息便會(huì)被傳遞給軸突,軸突通過動(dòng)作電位將信息傳遞到突觸小體。這個(gè)含有神經(jīng)遞質(zhì)的小泡破裂,將神經(jīng)遞質(zhì)釋放到突觸間隙中。形狀合適的神經(jīng)遞質(zhì)分子來到突觸后膜時(shí),會(huì)停留在受體上并刺激接收細(xì)胞。多余的神經(jīng)遞質(zhì)通過再攝取過程被回收到“發(fā)送”神經(jīng)元中。
PS1:動(dòng)作電位(action potential):當(dāng)細(xì)胞體的喚起達(dá)到臨界水平時(shí),觸發(fā)軸突中的電脈沖,軸突內(nèi)外電荷發(fā)生逆轉(zhuǎn),導(dǎo)致電信號(hào)沿軸突傳遞,我們稱之為神經(jīng)元“放電”or“點(diǎn)火”。
PS2:全或無原則(all-or-none principle):動(dòng)作電位沒有中間狀態(tài),要么放電,要么不放電。
PS3:靜息電位(resting potential):在正常的靜止?fàn)顟B(tài)時(shí),細(xì)胞中的離子使軸突帶有少量的負(fù)電荷,此時(shí)狀態(tài)即為靜息電位。
特殊情況:同步放電即有些神經(jīng)元(極少數(shù))不使用神經(jīng)遞質(zhì)在突觸間傳遞信息,放棄了化學(xué)信息傳遞,通過電聯(lián)系進(jìn)行直接通信。電突觸不如化學(xué)突觸常見,主要存在于中樞神經(jīng)系統(tǒng)中。電突觸中的突觸間隙要小得多,這使得神經(jīng)元可以直接通過間隙連接傳遞離子電流。出于這個(gè)原因,電突觸比化學(xué)突觸工作得更快,并允許脈沖在神經(jīng)元內(nèi)沿任一方向傳播。然而,因?yàn)樗鼈儾皇褂蒙窠?jīng)遞質(zhì),所以電突觸比化學(xué)突觸更不易改變。
生物化學(xué)抽象到AI數(shù)學(xué)模型–M-P神經(jīng)元模型(深度學(xué)習(xí)的起點(diǎn)理論)
如上圖所示,神經(jīng)元1的軸突傳遞了4個(gè)信號(hào)給神經(jīng)元2,分別是輸入1、輸入2、輸入3和輸入4。而神經(jīng)元2的輸出信號(hào)(輸出1和輸出2)分別是神經(jīng)元3的輸入信號(hào)(輸入1和輸入2)。
如果輸入信號(hào)之和(由各正電離子受刺激流入胞體,電壓變高)超過神經(jīng)元固有的邊界值(電壓閾值),細(xì)胞體就會(huì)做出反應(yīng),向與軸突連接的其他神經(jīng)元傳遞信號(hào),這稱為點(diǎn)火【10】。
點(diǎn)火的輸出信號(hào)是可以由”0″ 或 “1”表示的數(shù)字信息表示–全或無原則(all-or-none principle):
無輸出信號(hào),
有輸出信號(hào),
1943年, [McCulloch and Pitts, 1943] 將神經(jīng)元的工作過程抽象為上圖所示的簡(jiǎn)單模型,這就是一直沿用至今的 “M-P神經(jīng)元模型” 。
電信號(hào)的強(qiáng)弱用數(shù)字大小表示,突觸的權(quán)重使用乘積,胞體接受的動(dòng)作電位可以用點(diǎn)火函數(shù)表示,胞體的激活可以用階躍函數(shù)比較表示。
在這個(gè)模型中,神經(jīng)元接收到來自 m 個(gè)其他神經(jīng)元傳遞過來的輸入信號(hào),這些輸入信號(hào)通過帶權(quán)重(weights)的連接進(jìn)行傳遞,神經(jīng)元接收到的總輸入值將與神經(jīng)元的閾值進(jìn)行比較,然后通過”激活函數(shù)” (activation function) 處理以產(chǎn)生神經(jīng)元的輸出。神經(jīng)元在信號(hào)之和超過閾值時(shí)點(diǎn)火,不超過閾值時(shí)不點(diǎn)火。
所以點(diǎn)火的函數(shù)可以表示為:
其中,
稱為激活函數(shù)。理想中的激活函數(shù)是下圖所示的階躍函數(shù),它將輸入值映射為輸出值 “0” 或 “1” ,
顯然,
- “1” 對(duì)應(yīng)于神經(jīng)元興奮(點(diǎn)火成功)
- “0” 對(duì)應(yīng)于神經(jīng)元抑制(點(diǎn)火不成功)
神經(jīng)膠質(zhì)細(xì)胞
神經(jīng)膠質(zhì)細(xì)胞,10-50倍與神經(jīng)元數(shù)量,作用:隔離,支持,營(yíng)養(yǎng)
這里不一一詳細(xì)解釋了,大家有興趣可以自行查閱其功能。
神經(jīng)回路
神經(jīng)元從來不單獨(dú)行動(dòng),總是與其他細(xì)胞一起合作,神經(jīng)元與神經(jīng)元結(jié)成一張神經(jīng)網(wǎng)絡(luò),以神經(jīng)反射的形式工作。
神經(jīng)回路的結(jié)構(gòu)
我們可以把把神經(jīng)元比喻為字母,大腦比喻為整篇文章,而微環(huán)路就是字母組成的單詞,神經(jīng)環(huán)路則是單詞組成的句子。不同腦區(qū)使用的不同單詞就是環(huán)路模體(circuit motifs),而環(huán)路模體又進(jìn)一步組成了復(fù)雜的神經(jīng)環(huán)路架構(gòu)【11】。
環(huán)路架構(gòu)大體分為連續(xù)地形圖、離散并行處理、維度擴(kuò)展、循環(huán)回路、偏倚輸入-分離輸出的環(huán)路結(jié)構(gòu);通過神經(jīng)的不同布線連接,達(dá)到計(jì)算和節(jié)能的目的。
神經(jīng)環(huán)路架構(gòu)案例
哺乳動(dòng)物視覺系統(tǒng),其中信號(hào)始于光感受器→ 雙極細(xì)胞 → 視網(wǎng)膜神經(jīng)節(jié)細(xì)胞 → 外側(cè)膝狀核 (LGN) 中繼神經(jīng)元 → 第 4 層初級(jí)視覺皮層 (V1) 神經(jīng)元 → V1 神經(jīng)元其他層 → 較高皮層區(qū)域的神經(jīng)元。沿著這些前饋通路,視覺信息從簡(jiǎn)單的光強(qiáng)度轉(zhuǎn)化為對(duì)比度、邊緣、物體和運(yùn)動(dòng)。
回路進(jìn)化
神經(jīng)系統(tǒng)的逐漸復(fù)雜化需要神經(jīng)元數(shù)量、神經(jīng)元類型及其連接和大腦區(qū)域的擴(kuò)展。所有這些過程都必須由 DNA 的變化引起。進(jìn)化創(chuàng)新的一個(gè)關(guān)鍵機(jī)制是基因的復(fù)制和發(fā)散。
大腦區(qū)域進(jìn)化的復(fù)制和發(fā)散原則上應(yīng)該使神經(jīng)元回路模塊化:復(fù)制單元內(nèi)的豐富連接和單元之間的稀疏連接。反過來,神經(jīng)元回路的模塊化特性可能會(huì)加速進(jìn)化,因?yàn)椴煌哪K可以相互獨(dú)立地進(jìn)化。
為目前為止,負(fù)責(zé)AI大模型進(jìn)化的,只是人工的版本更新。
計(jì)算機(jī)環(huán)路是自上而下設(shè)計(jì)的產(chǎn)物,而復(fù)雜的神經(jīng)元環(huán)路已經(jīng)進(jìn)化了數(shù)億年。神經(jīng)元回路在發(fā)育過程中使用進(jìn)化選擇的遺傳指令自組裝,并通過經(jīng)驗(yàn)進(jìn)行微調(diào)。因此,現(xiàn)有的神經(jīng)環(huán)路結(jié)構(gòu)很可能是在演化過程中很容易進(jìn)化和組裝的那些選擇。
神經(jīng)組織
人類大腦的功能機(jī)制主要有7大類功能:1 感覺和知覺 2 注意與意識(shí) 3 語言 4 學(xué)習(xí)與記憶 5 運(yùn)動(dòng)控制 6 情緒 7 認(rèn)知控制
1 感覺和知覺
五種基本的感覺系統(tǒng),聽覺、嗅覺、味覺、軀體感覺以及視覺,使我們可以解釋周圍的環(huán)境。每一種感覺包含了獨(dú)特的通路和加工,以將外部刺激轉(zhuǎn)化為可以被大腦解釋的神經(jīng)信號(hào)。
這五種感覺也不是孤立工作的,而是一致行動(dòng)以構(gòu)建一個(gè)對(duì)世界的豐富的解釋。正是這一整合成為許多人類認(rèn)知的基礎(chǔ),并且使我們?cè)谝粋€(gè)多感覺的世界中生存并興旺發(fā)展【12】。
從信號(hào)的角度來看,人們通過耳朵接受聲波,鼻子和舌頭接受遠(yuǎn)近分子化學(xué)信號(hào),皮膚接受機(jī)械波、溫度波,視覺接受光波后,各個(gè)感覺神經(jīng)再通過電信號(hào)、化學(xué)信號(hào)以及機(jī)械波的形式傳遞。
神經(jīng)如何傳遞和加工處理至人類可意識(shí)的過程大抵相同,下面將主要講述視覺神經(jīng)工作原理。
像大多數(shù)其他哺乳動(dòng)物一樣,人類是視覺生物:絕大多數(shù)人要依賴眼睛來辨別我們看到的是什么,往哪里看,來引導(dǎo)我們動(dòng)作。這些過程當(dāng)然是雙向互動(dòng)的。要完成諸如抓住一個(gè)扔出物的技巧性動(dòng)作,我們必須確認(rèn)物體大小、形狀和空間運(yùn)動(dòng)軌跡,這樣我們才能預(yù)先準(zhǔn)備好把我們的手放到哪里。
從初級(jí)到更高級(jí)的視覺皮層,視覺信息逐級(jí)傳遞。人腦理解的內(nèi)容越來越復(fù)雜化、抽象化,由”模式”變成具體的“物”,再到物的特性和物與物之間的關(guān)系。在逐級(jí)傳到過程中,人們也注意到,其在皮層的傳到可以大體分成兩個(gè)通路,腹側(cè)通路(Ventral Pathway/Stream)和背側(cè)通路(DorsalPathway/Stream)。
這兩個(gè)通路,也分別代表著視覺神經(jīng)的兩大功能:what-物體識(shí)別和where-空間感
物體識(shí)別
對(duì)于物體識(shí)別而言,視覺系統(tǒng)中的ventral stream(V1 -> V4 -> IT)通路是至關(guān)重要的。在這一視覺信息處理通路中,信息被越來越抽象成高級(jí)的語義信息。比如V1視覺皮層表征“bar”,V4視覺皮層則表征texture, IT則存在著對(duì)物體類別(臉,動(dòng)物)的直接表征【13】。
視覺識(shí)別是典型的Encoder-Decoder的RNN(循環(huán)網(wǎng)絡(luò))架構(gòu)
總而言之:大腦對(duì)外部信息處理就是不斷表征化的過程(并且是往返循環(huán)),表征簡(jiǎn)單理解為人類可認(rèn)知到的集成的符號(hào) – 能把某些實(shí)體或某類信息表達(dá)清楚的形式化系統(tǒng)。
神經(jīng)元系統(tǒng)對(duì)于信息的處理是層級(jí)遞進(jìn)的,簡(jiǎn)單來說每一個(gè)皮層(不同的表征處理單元)處理逐級(jí)規(guī)律復(fù)雜,V1視覺皮層前,輸入信息為像素點(diǎn),V1視覺皮層將之處理為Bar-線,隨后再由V2-V4視覺皮層處理為-面,3維;再由后續(xù)的視覺皮層加工為顏色、光影等更綜合的表征,直至IT皮層-形成我們對(duì)圖像的整體感知,并區(qū)分物體。
知覺分類只解決了部分識(shí)別問題。要使關(guān)鍵信息發(fā)揮作用,必須把現(xiàn)有加工內(nèi)容與我們貯存的有關(guān)視覺物體的知識(shí)相聯(lián)系。語義分類(學(xué)習(xí)和記憶的表達(dá)表征–語言)使我們看到知覺對(duì)象間的相似性,并辦認(rèn)出物體的獨(dú)特特征。
看到這里,大家對(duì)視覺神經(jīng)元的表征化的工程,感到一絲熟悉,對(duì)!以CV計(jì)算機(jī)視覺技術(shù)為主的公司所采取的基礎(chǔ)模型-CNN卷積神經(jīng)網(wǎng)絡(luò)-Convolutional Neural Networks,其設(shè)計(jì)靈感就來自于層級(jí)遞進(jìn)的視覺神經(jīng)物體識(shí)別通路表征化過程–1960年代對(duì)貓的視覺皮層的研究。
有意思的是,2014年,James Dicarlo首次嘗試使用CNN來直接預(yù)測(cè)IT神經(jīng)元的活動(dòng)。他們將同一張圖片展示給猴子以及CNN模型,在利用線性回歸直接根據(jù)CNN對(duì)圖片的表征去預(yù)測(cè)在猴子IT腦區(qū)記錄到的電信號(hào)。他們驚人的發(fā)現(xiàn),僅通過簡(jiǎn)單的線性方法就可以從CNN的表征預(yù)測(cè)出IT的腦區(qū)活動(dòng),這說明兩者表征的信息是十分相似的。
利用數(shù)學(xué)模擬的AI模型去預(yù)測(cè)腦區(qū)電信號(hào),當(dāng)實(shí)驗(yàn)結(jié)果趨同時(shí),也意味著神經(jīng)元架構(gòu)和數(shù)學(xué)模型基本相同,這種新的研究范式正在反向助力神經(jīng)科學(xué)的探索(比如當(dāng)下最火的AI預(yù)測(cè)蛋白)!
空間感(定位和導(dǎo)航)
通過空間通路,人可以很好的理解所觀察到的物體在空間維度內(nèi)和人的關(guān)系,從而得以判斷和操作該物體。
太陽的東升西落,城市的東西南北,過馬路要左右看……在人們的日常生活中,大腦的空間感知作用扮演著重要角色。無論是尋找方向、定位目標(biāo)還是記憶場(chǎng)景,都需要大腦對(duì)空間信息的處理和記憶。
很遺憾的是,人類對(duì)此空間通路機(jī)制的研究,非常淺薄,對(duì)腹側(cè)通路(物體識(shí)別功能)的神經(jīng)通路的數(shù)學(xué)量化復(fù)現(xiàn)相當(dāng)成功。
目前主流研究仍在通過小白鼠、猴子等哺乳動(dòng)物實(shí)驗(yàn),繼續(xù)尋找空間感所涉及的神經(jīng)單元及細(xì)分作用(仍未找齊,目前僅發(fā)現(xiàn)世界中心編碼和自我中心神經(jīng)元),各個(gè)單元如何相互作用以及如何集成編碼,我們?nèi)晕刺街宄?。空間感神經(jīng)元與海馬體(記憶)緊密聯(lián)系。
幸運(yùn)的是,科學(xué)界對(duì)神經(jīng)科學(xué)空間感熱情高,對(duì)此腦區(qū)的研究產(chǎn)出高。
- 自我中心細(xì)胞(前后左右-自己移動(dòng)坐標(biāo)系)主要負(fù)責(zé)以個(gè)體自身為參考點(diǎn)的空間信息處理。這意味著它們編碼的是相對(duì)于觀察者位置的物體或環(huán)境特征,如身體周圍的邊界或地標(biāo)。當(dāng)我們移動(dòng)時(shí),這些細(xì)胞會(huì)根據(jù)我們的視角變化來調(diào)整它們的活動(dòng)模式,幫助我們感知方向和距離的變化。
- 世界中心神經(jīng)元(東西南北-固定坐標(biāo)系坐標(biāo)系)則關(guān)注于環(huán)境中的絕對(duì)位置信息,它們編碼的是不依賴于觀察者位置的環(huán)境布局,比如一個(gè)房間的固定角落或地圖上的絕對(duì)坐標(biāo)。這些神經(jīng)元幫助我們理解環(huán)境的全局結(jié)構(gòu),即使我們的位置改變,它們提供的信息依然保持穩(wěn)定。
- 經(jīng)典力學(xué):一個(gè)物體簡(jiǎn)單移動(dòng)需要至少兩個(gè)坐標(biāo)系:自己的坐標(biāo)系和固定坐標(biāo)系,如果要操作物體,則還需要物體的坐標(biāo)系(如上圖),才能清晰的表達(dá)各個(gè)位置關(guān)系,而運(yùn)動(dòng)控制算法就是在各個(gè)坐標(biāo)系中求最優(yōu)解。
世界中心的編碼方式是建立在自我中心編碼的計(jì)算和轉(zhuǎn)換上的。換言之,相比起處理 ‘前后左右’的位置信息,大腦在處理‘東西南北’的位置信息要經(jīng)過更為復(fù)雜的編碼過程。
2 注意和意識(shí)
這部分我主要講述注意,意識(shí)部分在上面已經(jīng)有所提及。
想象你在參加一個(gè)雞尾酒會(huì),身邊有人低語,有人高談闊論,偶有玻璃碰杯聲音,遠(yuǎn)處還有樂隊(duì)在演奏。在這么嘈雜的環(huán)境中,你依舊能夠聽到身邊的朋友在說什么。這不僅僅是因?yàn)槟銈冸x得近,更重要的是,你將注意力集中在了她身上。注意力讓你「選擇」把有效的認(rèn)知資源都用于在一堆嘈雜的信息中,尋找、分析她的聲音【14】。
這就是著名的「雞尾酒會(huì)效應(yīng)」。
注意力是一個(gè)用來分配有限的信息處理能力的選擇機(jī)制。感知系統(tǒng)在做信息加法,那么注意力就是在做減法。
“少則得,多則惑,是以圣人抱一為天下式”-道德經(jīng)
隨著進(jìn)化的腳步,生命體本身由簡(jiǎn)至繁,而人類歷史發(fā)展到今天,我們的生存環(huán)境和所需要學(xué)習(xí)、掌握的工作任務(wù)和過去的叢林生活復(fù)雜到不知多少。為了應(yīng)對(duì)這個(gè)變化,大腦會(huì)如何進(jìn)化呢?是發(fā)展成一個(gè)同時(shí)處理龐大的信息并且容量超大的大腦,還是發(fā)展成雖然容量不大,但可以迅速地分析信息,并配有一個(gè)高效率信息選擇和投注機(jī)制,將所有計(jì)算能力都放在重要的任務(wù)上的大腦呢?很明顯的,后者更有優(yōu)勢(shì),而且大自然也為我們選擇了這個(gè)目標(biāo)。這個(gè)「高效率信息選擇和投注機(jī)制」就是我們說的「注意力」(attention)。
注意力是指,選擇性地專注在某些感受到的信息上,這些信息可能是客觀或主觀的,同時(shí)忽視同一時(shí)刻收到的其他信息。這一個(gè)認(rèn)知過程。
機(jī)制:注意力通過信號(hào)控制(關(guān)注的信息興奮,不關(guān)注的信息抑制),鎖定相關(guān)腦區(qū)的工作狀態(tài),同時(shí)加強(qiáng)相關(guān)腦區(qū)的連通性,削弱其他聯(lián)通性,讓我們的大腦臨時(shí)性、軟性的改變結(jié)構(gòu),變得“任務(wù)特異化”。
這種認(rèn)知資源和認(rèn)知資源協(xié)同狀態(tài)的預(yù)鎖定,就像對(duì)大腦這臺(tái)計(jì)算機(jī)的“虛擬化”,預(yù)先寫好資源請(qǐng)求參數(shù),并預(yù)裝了所需要的程序執(zhí)行和依賴環(huán)境。
一切源于2017年谷歌Brain團(tuán)隊(duì)那篇鼎鼎大名的文章“Attention Is All You Need”(注意力就是你所需要的一切),就是這篇文章提出了以自注意力為核心的Transformer網(wǎng)絡(luò)結(jié)構(gòu)。
在自注意力機(jī)制下,輸出的內(nèi)容加權(quán)平均了輸入,既考慮了輸入的全面性,也考慮了輸入的個(gè)別單詞的相關(guān)性,從而更有針對(duì)性的理解句子中的含義并輸出理解。
3 學(xué)習(xí)和記憶
學(xué)習(xí) (learning)是獲取新信息的過程,其結(jié)果便是記憶(memory)。也就是說,在學(xué)習(xí)了某樣?xùn)|西后,記憶便形成了,這種學(xué)習(xí)也許會(huì)發(fā)生在信息的單次呈現(xiàn)后,也許是在信息的重復(fù)呈現(xiàn)后。記憶必須是能夠在一段時(shí)期內(nèi)維持的【12】。
學(xué)習(xí)與記憶可以假設(shè)為三個(gè)主要的階段,不斷循環(huán):
編碼(encoding)是對(duì)輸入信息的處理與儲(chǔ)存它分為兩個(gè)階段:獲取與鞏固。
- 獲?。╝cquisition)是對(duì)感覺通路和感覺分析階段的輸入信息進(jìn)行登記,外部信號(hào)轉(zhuǎn)換為內(nèi)部可處理信號(hào)-電和化學(xué)信號(hào),例如計(jì)算機(jī)轉(zhuǎn)化為0和1(二進(jìn)制);
- 鞏固 (consolidation)是生成一個(gè)隨時(shí)間的推移而增強(qiáng)的表征,進(jìn)行特征提取和推理。
- 學(xué)習(xí)是大腦獲得經(jīng)驗(yàn)的過程,即中樞神經(jīng)系統(tǒng)收集感覺器官和記憶的神經(jīng)電位的過程-神經(jīng)元形成連接(突觸的可塑性),并保持興奮與協(xié)調(diào),直至形成記憶(神經(jīng)元的連接),一般分為兩種,簡(jiǎn)單學(xué)習(xí)與復(fù)雜學(xué)習(xí)。
存儲(chǔ)(storage)是獲取和鞏固的結(jié)果,代表了信息的長(zhǎng)久記錄。
記憶則是對(duì)學(xué)習(xí)過程的儲(chǔ)存,即中樞神經(jīng)系統(tǒng)儲(chǔ)存感覺器官的神經(jīng)電位,一般也分為兩種,短時(shí)記憶和長(zhǎng)時(shí)記憶。
短時(shí)記憶是中樞神經(jīng)系統(tǒng)對(duì)于刺激的瞬間記憶,是對(duì)剛剛發(fā)生事情的片刻記憶,這樣的記憶往往只能維持幾秒鐘或幾分鐘。而當(dāng)片刻記憶的刺激,重復(fù)作用于中樞神經(jīng)系統(tǒng)時(shí),便會(huì)形成對(duì)事情的長(zhǎng)時(shí)記憶。
提取 (retrieval)是通過利用所儲(chǔ)存的信息創(chuàng)建意識(shí)表征或執(zhí)行習(xí)得的行為,如自動(dòng)化動(dòng)作。對(duì)學(xué)習(xí)機(jī)制的再次刺激,直至形成長(zhǎng)期記憶。
有意思的是,人類的記憶向來不太準(zhǔn)確,大家可以試著回想一下上周的事情,能不能像計(jì)算機(jī)的視頻一樣每一幀都能高清的回想起來?
4 語言
語言有兩種形式:1 表達(dá) 2 語言推理(最重要)。
語言可以是某個(gè)語言上命名好的東西,也可以只是一種”表征”(representation)【15】。我們可以在不說話的情況下,直接使用這個(gè)“表征“進(jìn)行思考、推理等等。所以常常有思維比口頭表達(dá)更快的體驗(yàn),而且如果口頭說的比較快的話,經(jīng)常會(huì)說錯(cuò)而不自知。也就是說,語言可以是更廣義的概念。而這種推理和邏輯思考能力,我們稱為Verbal Reasoning!
這里可以看出,“語言”(廣義的)跟思考具有非常直接的關(guān)系。有了語言,我們能在大腦中思考的時(shí)候?qū)κ挛镄纬伞氨碚鳌薄鹘y(tǒng)上,我們認(rèn)為,為了方便思考,特別是在談話和閱讀中思考,我們會(huì)首先將口頭語言中的對(duì)象物轉(zhuǎn)化為大腦中的“表征”,這是一種”語言過程” ,然后使用這些“表征“進(jìn)行演繹和推理,這是一種非語言過程,最后將結(jié)果轉(zhuǎn)換為口頭語言對(duì)象(表達(dá))。
在整個(gè)過程中,從語言對(duì)象到大腦內(nèi)在表征,以及從大腦內(nèi)在表征到語言對(duì)象的兩部轉(zhuǎn)換自然是跟語言直接相關(guān)的。對(duì)應(yīng)的,還有圖像推理(Visual Reasoning),也就是直接使用視覺或者圖像表征進(jìn)行空間構(gòu)建或者關(guān)系推理的過程,典型地比如玩俄羅斯方塊。
既然有圖像推理,那么,語言介質(zhì)(廣義的)就并非思考的必要條件,但是為最主要條件。
狹義上來說,人類就是用語言來進(jìn)行高級(jí)思考的,輸入的信息??形成表征??根據(jù)表征的特征,尋找匹配的語言形容??內(nèi)在表征以語言的形式演繹推理??表達(dá);
語言與思想的關(guān)系被認(rèn)為是相互依存的。一方面,語言提供框架來組織和表達(dá)思想;另一方面,思想的邊界可能受限于語言的表達(dá)能力。語言的使用不僅反映思想,也可能塑造思想,如母語對(duì)思維模式的影響。
5 運(yùn)動(dòng)控制
運(yùn)動(dòng)功能分為運(yùn)動(dòng)計(jì)劃(同步感覺和運(yùn)動(dòng)信息后進(jìn)行位置和軌跡預(yù)測(cè)空間編碼)、運(yùn)動(dòng)準(zhǔn)備(小腦-專門表征動(dòng)作的時(shí)間特性的結(jié)構(gòu),控制節(jié)奏;基底神經(jīng)節(jié)轉(zhuǎn)化信息為動(dòng)作信息)以及和運(yùn)動(dòng)執(zhí)行(調(diào)動(dòng)分布式專門運(yùn)動(dòng)神經(jīng)系統(tǒng))。
運(yùn)動(dòng)控制依賴于廣布的解剖結(jié)構(gòu),這些廣布的運(yùn)動(dòng)結(jié)構(gòu)以層級(jí)式的方式進(jìn)行運(yùn)作:最高層計(jì)劃最好以動(dòng)作如何實(shí)現(xiàn)目的來描述,底層的運(yùn)動(dòng)層級(jí)致力于將目標(biāo)轉(zhuǎn)化為運(yùn)動(dòng)。最底層是實(shí)現(xiàn)一個(gè)特定動(dòng)作的具體指令,最高層是動(dòng)作目的的抽象表征。
然而運(yùn)動(dòng)計(jì)劃和學(xué)習(xí)是同時(shí)發(fā)生在各個(gè)層級(jí)上的。學(xué)習(xí)發(fā)生在所有的層級(jí)。運(yùn)動(dòng)控制上解耦,運(yùn)動(dòng)學(xué)習(xí)上強(qiáng)耦合!
我們對(duì)機(jī)器人的控制理論仍然是數(shù)字自動(dòng)化控制(預(yù)定和固定流程控制-PID等),關(guān)于對(duì)控制的神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)(適應(yīng)開放場(chǎng)景,魯棒性高,泛化性強(qiáng))才剛剛開始,具體看具身技術(shù)部分。
6 情緒
情緒的作用在動(dòng)物中激勵(lì)目標(biāo)的實(shí)現(xiàn)和躲避危險(xiǎn)的功能。
情緒識(shí)別不僅僅是單一神經(jīng)元或區(qū)域的工作,而是涉及廣泛的大腦網(wǎng)絡(luò)。例如,視覺皮層首先處理情緒刺激的視覺信息,然后傳遞到包括杏仁核在內(nèi)的邊緣系統(tǒng),進(jìn)一步的處理涉及前額葉和其他高級(jí)認(rèn)知區(qū)域,以綜合信息并做出情緒反應(yīng)。
由意大利理工學(xué)院科學(xué)家弗朗切斯科·帕帕萊奧領(lǐng)導(dǎo)的研究團(tuán)隊(duì),發(fā)現(xiàn)了使人類能夠識(shí)別他人情緒的大腦網(wǎng)絡(luò)。識(shí)別他人表情并作出適當(dāng)回應(yīng),是人類和動(dòng)物的基本技能,這能使同伴間的互動(dòng)更有效,從而提高生存概率。但對(duì)這一能力背后的大腦機(jī)制,人們?nèi)灾跎佟?6】。
使用熒光顯微鏡拍攝的神經(jīng)元圖像。圖片來源:意大利理工學(xué)院
7 認(rèn)知控制
認(rèn)知控制 (cognitive control) 是指?jìng)€(gè)體在特定的情境中,自上而下的靈活地調(diào)動(dòng)認(rèn)知資源來調(diào)整想法和行為的一種目標(biāo)導(dǎo)向的心理過程;認(rèn)知控制包括計(jì)劃、控制和管理信息加工流的心理能力–調(diào)度資源和監(jiān)控反饋保證目標(biāo)導(dǎo)向行為的成功。
目前研究熱點(diǎn)是認(rèn)知控制的一般性/特異性機(jī)制。所謂一般性(大腦的泛化性),是指不同任務(wù)之間共享相同的加工機(jī)制 ;相反地,特異性(任務(wù)的專用性)是指不同的任務(wù)各有特異性的加工機(jī)制。
當(dāng)兩個(gè)任務(wù)之間的差別大到可以歸為兩類時(shí),他們之間就產(chǎn)生了邊界 (boundary)。因此,認(rèn)知控制的一般性 / 特異性很可能不是非此即彼的。
這提示我們,大腦在進(jìn)行信息加工時(shí)有一定的泛化能力,并不局限于具體的任務(wù)。但是這種泛化能力不是無限的,如果任務(wù)之間的差異達(dá)到了一定的程度,大腦會(huì)形成不同的功能模塊來分別進(jìn)行加工,這樣能夠保證在面對(duì)外界刺激時(shí)有最為高效的反應(yīng)。從進(jìn)化的角度來看,這種高效加工對(duì)人類適應(yīng)環(huán)境也是極為有利的。
對(duì)認(rèn)知控制的資源調(diào)度和監(jiān)控反饋機(jī)制的研究可以讓大模型(泛化)在應(yīng)用(專用)時(shí),進(jìn)行特異化工程(形成洞悉),有效解決專用性不足的問題(通用大模型如何變成垂直大模型)。
8 大腦進(jìn)化
1.智能史的第一次突破:兩側(cè)對(duì)稱動(dòng)物都有個(gè)腦子來趨利避害、整合信息、持續(xù)學(xué)習(xí)和情感慣性,發(fā)源于線蟲–一切都是為了活下去【17】。
2. 智能史的第二次突破:脊椎動(dòng)物的硬質(zhì)骨骼催生了更大的身體、能夠容納更大的腦,大腦開始可以簡(jiǎn)單的強(qiáng)化學(xué)習(xí)(有明確的目標(biāo),但都是現(xiàn)實(shí)環(huán)境的目標(biāo))和好奇心(僅僅探索了未知區(qū)域滿足好奇心、也應(yīng)該得到強(qiáng)化鼓勵(lì));
強(qiáng)化學(xué)習(xí)-以“試錯(cuò)”的方式進(jìn)行探索學(xué)習(xí),通過與環(huán)境進(jìn)行交互獲得的獎(jiǎng)賞(多巴胺是人強(qiáng)化學(xué)習(xí)的獎(jiǎng)賞)指導(dǎo)行為,目標(biāo)是為了最多的獎(jiǎng)勵(lì);AI代表 -「時(shí)序差分學(xué)習(xí)(temporal difference learning)」,是現(xiàn)在強(qiáng)化學(xué)習(xí)的基本原理,包括AlphaGo也是這么做的。
3.智能史的第三次突破:依托于無監(jiān)督學(xué)習(xí)、把同樣的腦回路排隊(duì)復(fù)制–神經(jīng)元數(shù)量大爆炸(人類大腦中新皮層已經(jīng)占整個(gè)腦容量的70%),新皮層創(chuàng)造出“在想象力中用強(qiáng)化學(xué)習(xí)模型思考”;哺乳動(dòng)物的“新皮層”做模擬學(xué)習(xí),是從自己的想象中學(xué)習(xí)(GPT-4 的階段)。
人類新皮層玩的是無監(jiān)督學(xué)習(xí)–無人指導(dǎo)的學(xué)習(xí)。大自然中的動(dòng)物不可能搞監(jiān)督學(xué)習(xí),因?yàn)闆]有老師告訴它每一個(gè)東西是什么。你得自己摸索。而新皮層摸索的方法,恰恰就如同現(xiàn)在訓(xùn)練GPT一樣,先讀取一半信息,再自己「生成」下一半信息,然后把生成的信息跟訓(xùn)練素材比較。對(duì)了就加強(qiáng),錯(cuò)了就改進(jìn)。
對(duì)大腦來說,「生成」就是「模擬」,就是「想象」。
用模型思考:替代性試錯(cuò)-建模、反事實(shí)學(xué)習(xí)-辯證思考得到因果關(guān)系、情節(jié)記憶-具體事件的記憶。
純粹的強(qiáng)化學(xué)習(xí)是只用直覺。有猶豫的,就是基于模型的強(qiáng)化學(xué)習(xí)(獎(jiǎng)勵(lì)是想象出來的,不是實(shí)際的)?,F(xiàn)在幾乎所有自動(dòng)駕駛AI都是純粹的強(qiáng)化學(xué)習(xí),根據(jù)直覺直接行動(dòng),沒有猶豫。但是應(yīng)該有猶豫才好。
- 丹尼爾·卡尼曼說的系統(tǒng)1,也就是快思考,其實(shí)就是強(qiáng)化學(xué)習(xí)帶來的本能反應(yīng),由基底神經(jīng)節(jié)自動(dòng)選擇;卡尼曼所說的系統(tǒng)2,慢思考,其實(shí)就是前額葉皮層感覺到了沖突,先暫停自動(dòng)反應(yīng),發(fā)起模擬再做選擇,也就是基于模型的強(qiáng)化學(xué)習(xí)。
- 爬行動(dòng)物全都是系統(tǒng)1思維。我們?nèi)粘4蟛糠謺r(shí)候也都是系統(tǒng)1思維。這很好,這使得我們做開車、走路、吃飯喝水這些日常動(dòng)作都不需要思考,我們很輕松。只在矛盾時(shí)刻,我們才需要調(diào)用昂貴的新皮層算力去進(jìn)行模擬。
OpenAI GPT4-草莓大模型(自我強(qiáng)化學(xué)習(xí)-RL新范式)已經(jīng)發(fā)布:
你需要對(duì)一個(gè)問題建立多個(gè)智能體(agents),讓每個(gè)智能體各自生成答案。選擇最合適的一個(gè),再輸出。這兩步加起來就是系統(tǒng)2思維。
而現(xiàn)今的大語言模型基本上只是系統(tǒng)1思維,純直覺輸出。但我們可以想見,跨越到系統(tǒng)2在技術(shù)上一點(diǎn)都不難,難的只是算力而已 —— 畢竟一切都是新皮層。
4. 有了心智理論,靈長(zhǎng)類動(dòng)物可以通過模仿另一個(gè)人做事來學(xué)習(xí),也就是從他人的行動(dòng)中學(xué)習(xí)(模仿學(xué)習(xí))和群體生活(政治博弈-對(duì)抗學(xué)習(xí))讓大腦變得越來越大。
- 隨著爬上食物鏈的頂端,我們獲得了「空閑時(shí)間」。別的動(dòng)物全天都得要么覓食、要么求偶、要么休息,而我們卻有時(shí)間做點(diǎn)別的事情。
- 最早的哺乳動(dòng)物的大腦只有0.5克,而到一千萬年前,靈長(zhǎng)類的大腦已經(jīng)達(dá)到了350克,為什么我們需要這么大的大腦呢?現(xiàn)在科學(xué)家的共識(shí)是,為了搞政治。
- 與天奮斗、與地奮斗都不需要那么大的大腦,只有與人奮斗最費(fèi)腦。看來還是與人奮斗其樂無窮。
- 最重要的理論貢獻(xiàn)來自那個(gè)著名的「鄧巴數(shù)」的提出者,羅賓·鄧巴(Robin Dunbar)他發(fā)現(xiàn)靈長(zhǎng)類動(dòng)物的大腦新皮層的大小,和它所在群體的大小是成正比的關(guān)系。
- 群居的麻煩是容易內(nèi)耗。食物可能還好說,如果吃草的話誰都能吃到,但是交配對(duì)象就只有這么多,屬于絕對(duì)的零和博弈,勢(shì)必引起爭(zhēng)斗。
- 要玩政治,靈長(zhǎng)類的大腦有個(gè)硬件基礎(chǔ)。我們的大腦不只是比早期哺乳動(dòng)物大,而且新皮層多了兩個(gè)新的腦區(qū):顆粒狀前額葉皮層(gPFC)和靈長(zhǎng)類感覺皮層(PSC)。
- 我們前面講的哺乳動(dòng)物的前額葉皮層說的是無顆粒狀前額葉皮層(aPFC),現(xiàn)在這個(gè)gPFC是靈長(zhǎng)類特有的,它跟PSC配合,讓我們獲得了一項(xiàng)新能力。這個(gè)能力也是新皮層的拿手好戲 —— 模擬和預(yù)測(cè) —— 只是這一次是把自身放入情境之中模擬。
- 換句話說,gPFC能夠讓我們以第三人稱的視角看自己,能跳出自我觀察自我。
- 這種能把自己當(dāng)做“他者”–換位思考,從高處旁觀的能力,就是心理學(xué)家和哲學(xué)家說的「元認(rèn)知(metacognition)」。
5.智能史的第五次突破:語言,語言讓大腦和大腦聯(lián)網(wǎng)。以前的我們是單獨(dú)的個(gè)體,現(xiàn)在我們是網(wǎng)絡(luò)中的一個(gè)個(gè)節(jié)點(diǎn);有了語言,智人則能夠從他人的想象中學(xué)習(xí)、知識(shí)開始爆炸性積累。(群體的智慧?。?/p>
- 語言帶給我們的不只是一項(xiàng)個(gè)人能力,更是一項(xiàng)積累知識(shí)和建設(shè)文明的能力:語言能讓說話的人把自己內(nèi)心想象的場(chǎng)景和動(dòng)作,傳遞給聽話的人。這個(gè)功能大大提高了交流的效率。
- 到了這一步,知識(shí)已經(jīng)不只是存在于人腦之中,更是存在于人腦之間,成了某種近乎獨(dú)立的存在。人腦只是知識(shí)的載體而已,知識(shí)本身好像有了生命力。
我們的祖先們,不斷持續(xù)的優(yōu)化和補(bǔ)充神經(jīng)回路機(jī)制,神經(jīng)元的數(shù)量飆升,同時(shí)配對(duì)上好的學(xué)習(xí)范式,最終要形成精簡(jiǎn)的功能(皮層or腦區(qū) and 針對(duì)性功能的特異回路),才能實(shí)現(xiàn)真正的智能!
實(shí)現(xiàn)真正的涌現(xiàn)能力!
AI的涌現(xiàn)能力是指隨著模型規(guī)模變大,模型突然在某一刻擁有了以前沒有的能力-大型語言模型在未直接訓(xùn)練過的任務(wù)上表現(xiàn)出驚人性能的能力。
神經(jīng)網(wǎng)絡(luò)不是黑箱!只是因?yàn)槲覀兩形戳私庖约坝?jì)算量過大。
神經(jīng)學(xué)對(duì)AI的影響大討論-鳥飛派和偽鳥派
當(dāng)人們最初想要制造飛行器的時(shí)候,是希望模仿鳥的飛行方式,制造出像鳥一樣飛行的機(jī)器。后來人們發(fā)現(xiàn),這樣的制造方法并不可行,可能不僅實(shí)現(xiàn)難度大,而且還不穩(wěn)定,blablabla…(非專業(yè)人士,只是猜測(cè))于是萊特兄弟想出了另一種制造飛行器的方式,相比于模仿鳥類的飛行方式,這種飛行器的工作方式更簡(jiǎn)單,更安全,更…【18】
這群試圖完全模仿鳥類飛行方式來制造飛行器的人,在后世被稱為“鳥飛派”,萊特兄弟制造出的飛機(jī)則告訴我們,鳥飛派不一定是最有效的工程方法。而他們?cè)斐龅摹皞硒B”,才是更可取的飛行器制造方案。
同樣,人工智能發(fā)展的初期也有一波“鳥飛派”學(xué)者,他們認(rèn)為只有完全用機(jī)器實(shí)現(xiàn)大腦的結(jié)構(gòu),才能制造出一臺(tái)和人類擁有相似功能的機(jī)器大腦。然而這并非是現(xiàn)實(shí)的,無論是放在人工智能發(fā)展的初期還是放在工業(yè)技術(shù)更加發(fā)達(dá)的現(xiàn)代。
原因包括:a人腦擁有上千億個(gè)神經(jīng)元,神經(jīng)元之間還有數(shù)量更多的連接。要實(shí)現(xiàn)這些連接絕不是一件容易的事情。b這些神經(jīng)元之間是怎樣連接,以實(shí)現(xiàn)復(fù)雜的功能的,目前神經(jīng)科學(xué)家們所知甚少。
2022年的一個(gè)周末,twitter上的神經(jīng)科學(xué)圈發(fā)酵了一起不大不小的爭(zhēng)論,引得領(lǐng)域內(nèi)好幾個(gè)著名學(xué)者,包括Yann Lecun的參與。最初爭(zhēng)論的是神經(jīng)科學(xué)是否推動(dòng)了人工智能,后來就更多變成了未來的人工智能是否需要神經(jīng)科學(xué)。中國(guó)在類腦智能領(lǐng)域的投入也在增加,“該不該類腦”以及“如何類腦”這樣的問題都值得在廣泛范圍內(nèi)討論–詳見饒毅事件?!?9】
爭(zhēng)論的起點(diǎn)10月15號(hào)時(shí)候,神經(jīng)科學(xué)領(lǐng)域和人工智能領(lǐng)域一群大佬,如Terry Sejnowski, Yoshua Bengio, Yann LeCun,Eero Simoncelli, James DiCarlo, Alex Pouget 以及今天爭(zhēng)論的主角Konrad Kording, 在arXiv上發(fā)表了一篇白皮書文章文章的觀點(diǎn)非常簡(jiǎn)單,摘要只有兩句話:
Neuroscience has long been an important driver of progress in artificial intelligence (AI). We propose that to accelerate progress in AI, we must invest in fundamental research in NeuroAI.
概括起來就是:神經(jīng)科學(xué)+人工智能非常有前途,政府請(qǐng)打錢。
沒想到兩天后,可能是周末比較清閑,來自DeepMind的David Pfau對(duì)著Kording的這篇tweet開噴了:神經(jīng)科學(xué)從來都沒推動(dòng)過人工智能,你們白皮書中還說continue to drive AI progress你們真的認(rèn)為發(fā)明Transformers / ADAM的人看過一篇神經(jīng)科學(xué)論文嗎?你們就假裝在為人工智能做貢獻(xiàn)吧。要點(diǎn)臉吧 “it’s embarrasing”(原文)
這樣的回復(fù)立馬就炸雷了,引起了后面很多人的“參戰(zhàn)”。這里簡(jiǎn)單提一下這位Pfau,他其實(shí)是正兒八經(jīng)的神經(jīng)科學(xué)博士,畢業(yè)于哥倫比亞大學(xué)的神經(jīng)生物學(xué)專業(yè),附屬于Center for Theoretical Neuroscience (CTN)。并且在CTN里邊有Larry Abbott和Ken Miller等計(jì)算神經(jīng)科學(xué)大佬,畢業(yè)生中走出了很多在人工智能領(lǐng)域的佼佼者,如David Sussillo,Pfau對(duì)于這神經(jīng)科學(xué)和人工智能兩個(gè)領(lǐng)域都不陌生。
Pfau的評(píng)論一出,上文我們所提到的David Sussillo就出來說話了過去幾年,我在Google Brain跟Transformer的主要貢獻(xiàn)人交往很多。我雖然不能冒昧地推定到底是什么啟發(fā)了他發(fā)明transformer,但是他對(duì)神經(jīng)科學(xué)是發(fā)自內(nèi)心的感興趣,問了很多神經(jīng)科學(xué)的問題。
Yann Lecun大佬出馬,直接就一句”You are wrong”甩到Pfau老兄臉上了:你錯(cuò)了 。神經(jīng)科學(xué)極大并且直接啟發(fā)了我和Hinton,另外神經(jīng)網(wǎng)絡(luò)通過調(diào)節(jié)突觸權(quán)重來實(shí)現(xiàn)學(xué)習(xí)這一整套想法確定無疑來自神經(jīng)科學(xué)。
- 1 在應(yīng)對(duì)不同的任務(wù),人的神經(jīng)元機(jī)制反而不如計(jì)算機(jī)文檔(人的記憶不準(zhǔn)確,但計(jì)算機(jī)存儲(chǔ)準(zhǔn)確等),兩者需要結(jié)合,不必完全模擬人腦,實(shí)際看效果;
- 2 了解神經(jīng)基礎(chǔ)機(jī)制會(huì)給當(dāng)前的AI帶來底層創(chuàng)新(深度學(xué)習(xí)-神經(jīng)元機(jī)制,CNN-貓視覺皮質(zhì)層,transfomer-注意力機(jī)制等等!)。
- 目前神經(jīng)科學(xué)還處于初級(jí)階段,作為最熱門的學(xué)科之一,已經(jīng)是最好的時(shí)代。
筆者認(rèn)為如今神經(jīng)學(xué)的研究會(huì)在兩大方面極大的推動(dòng)AI的發(fā)展:
- 1 (人腦進(jìn)化的現(xiàn)成結(jié)果)對(duì)現(xiàn)有人腦神經(jīng)系統(tǒng)機(jī)制的突破研究:特別是理解某一功能的神經(jīng)環(huán)路;直接在計(jì)算機(jī)上復(fù)刻實(shí)現(xiàn)。
- 2 神經(jīng)系統(tǒng)改善進(jìn)化機(jī)制:神經(jīng)系統(tǒng)如何優(yōu)化和調(diào)整神經(jīng)回路機(jī)制;賦予計(jì)算機(jī)自我智能進(jìn)化的能力。
總結(jié)
AI模型預(yù)測(cè)作為新的研究方法也在助推神經(jīng)科學(xué)的發(fā)展,在探索完神經(jīng)學(xué)原理后,又幫助ai發(fā)展,兩者螺旋上升。還有大量神經(jīng)元原理未被量化,技術(shù)天花板尚未顯現(xiàn)!
三、AI技術(shù)流派原理與發(fā)展
(1) 總體流派類別原理和歷史
在人工智能的發(fā)展過程中,不同時(shí)代、學(xué)科背景的人對(duì)于智慧的理解及其實(shí)現(xiàn)方法有著不同的思想主張,并由此衍生了不同的學(xué)派,影響較大的學(xué)派及其代表方法如下:
學(xué)派之間的范式方法早已融合貫通,以神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)的聯(lián)結(jié)主義是目前主要貢獻(xiàn)學(xué)派,學(xué)派之爭(zhēng)都在想深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)的聯(lián)結(jié)主義收斂。
其中,符號(hào)主義及聯(lián)結(jié)主義為主要的兩大派系【20】:
“符號(hào)主義”(Symbolicism),又稱邏輯主義、計(jì)算機(jī)學(xué)派,認(rèn)為認(rèn)知就是通過對(duì)有意義的表示符號(hào)進(jìn)行推導(dǎo)計(jì)算,并將學(xué)習(xí)視為逆向演繹,主張用顯式的公理和邏輯體系搭建人工智能系統(tǒng)(已有知識(shí)的數(shù)學(xué)復(fù)刻)。如用決策樹模型輸入業(yè)務(wù)特征預(yù)測(cè)天氣:
“聯(lián)結(jié)主義”(Connectionism),又叫仿生學(xué)派,篤信大腦的逆向工程,主張是利用數(shù)學(xué)模型來研究人類認(rèn)知的方法,用神經(jīng)元的連接機(jī)制實(shí)現(xiàn)人工智能。如用神經(jīng)網(wǎng)絡(luò)模型輸入雷達(dá)圖像數(shù)據(jù)預(yù)測(cè)天氣:
從始至此,人工智能(AI)便在充滿未知的道路探索,曲折起伏,我們可將這段發(fā)展歷程大致劃分為5個(gè)階段期(筆者羅列了關(guān)鍵的事件):
起步發(fā)展期:1943年—20世紀(jì)60年代
人工智能概念的提出后,發(fā)展出了符號(hào)主義、聯(lián)結(jié)主義(神經(jīng)網(wǎng)絡(luò)),相繼取得了一批令人矚目的研究成果,如機(jī)器定理證明、跳棋程序、人機(jī)對(duì)話等,掀起人工智能發(fā)展的第一個(gè)高潮。
1943年,美國(guó)神經(jīng)科學(xué)家麥卡洛克(Warren McCulloch)和邏輯學(xué)家皮茨(Water Pitts)提出神經(jīng)元的數(shù)學(xué)模型,這是現(xiàn)代人工智能學(xué)科的奠基石之一。
1950年,艾倫·麥席森·圖靈(Alan Mathison Turing)提出“圖靈測(cè)試”(測(cè)試機(jī)器是否能表現(xiàn)出與人無法區(qū)分的智能),讓機(jī)器產(chǎn)生智能這一想法開始進(jìn)入人們的視野。
圖靈在一篇論文中開門見山問道:
“I propose to consider the question, ‘Can machines think?’”
“我提議思考這樣一個(gè)問題:‘機(jī)器可以思考嗎’”
以此拉開AI的序幕,激發(fā)當(dāng)時(shí)剛剛興起的計(jì)算機(jī)科學(xué)領(lǐng)域?qū)I的思考。
1956年,達(dá)特茅斯學(xué)院人工智能夏季研討會(huì)上正式使用了人工智能(artificial intelligence,AI)這一術(shù)語。這是人類歷史上第一次人工智能研討,標(biāo)志著人工智能學(xué)科的誕生。
1957年,弗蘭克·羅森布拉特(Frank Rosenblatt)在一臺(tái)IBM-704計(jì)算機(jī)上模擬實(shí)現(xiàn)了一種他發(fā)明的叫做“感知機(jī)”(Perceptron)的神經(jīng)網(wǎng)絡(luò)模型。
1969年,“符號(hào)主義”代表人物馬文·明斯基(Marvin Minsky)的著作《感知器》提出對(duì)XOR線性不可分的問題:?jiǎn)螌痈兄鳠o法劃分XOR原數(shù)據(jù),解決這問題需要引入更高維非線性網(wǎng)絡(luò)(MLP, 至少需要兩層),但多層網(wǎng)絡(luò)并無有效的訓(xùn)練算法。這些論點(diǎn)給神經(jīng)網(wǎng)絡(luò)研究以沉重的打擊,神經(jīng)網(wǎng)絡(luò)的研究走向長(zhǎng)達(dá)10年的低潮時(shí)期。
反思發(fā)展期:20世紀(jì)70年代
人工智能發(fā)展初期的突破性進(jìn)展大大提升了人們對(duì)人工智能的期望,人們開始嘗試更具挑戰(zhàn)性的任務(wù),然而計(jì)算力及理論等的匱乏使得不切實(shí)際目標(biāo)的落空,人工智能的發(fā)展走入低谷。
1974年,哈佛大學(xué)沃伯斯(Paul Werbos)博士論文里,首次提出了通過誤差的反向傳播(BP)來訓(xùn)練人工神經(jīng)網(wǎng)絡(luò),但在該時(shí)期未引起重視。
1975年,馬文·明斯基(Marvin Minsky)在論文《知識(shí)表示的框架》(A Framework for Representing Knowledge)中提出用于人工智能中的知識(shí)表示學(xué)習(xí)框架理論。
1979年,漢斯·貝利納(Hans Berliner)打造的計(jì)算機(jī)程序戰(zhàn)勝雙陸棋世界冠軍成為標(biāo)志性事件。(隨后,基于行為的機(jī)器人學(xué)在羅德尼·布魯克斯和薩頓等人的推動(dòng)下快速發(fā)展,成為人工智能一個(gè)重要的發(fā)展分支。格瑞·特索羅等人打造的自我學(xué)習(xí)雙陸棋程序又為后來的強(qiáng)化學(xué)習(xí)的發(fā)展奠定了基礎(chǔ)。)
應(yīng)用發(fā)展期:20世紀(jì)80年代
人工智能走入應(yīng)用發(fā)展的新高潮。專家系統(tǒng)模擬人類專家的知識(shí)和經(jīng)驗(yàn)解決特定領(lǐng)域的問題,實(shí)現(xiàn)了人工智能從理論研究走向?qū)嶋H應(yīng)用、從一般推理策略探討轉(zhuǎn)向運(yùn)用專門知識(shí)的重大突破。而機(jī)器學(xué)習(xí)(特別是神經(jīng)網(wǎng)絡(luò))探索不同的學(xué)習(xí)策略和各種學(xué)習(xí)方法,在大量的實(shí)際應(yīng)用中也開始慢慢復(fù)蘇。
1980年,在美國(guó)的卡內(nèi)基梅隆大學(xué)(CMU)召開了第一屆機(jī)器學(xué)習(xí)國(guó)際研討會(huì),標(biāo)志著機(jī)器學(xué)習(xí)研究已在全世界興起。
1982年,約翰·霍普菲爾德(John Hopfield) 發(fā)明了霍普菲爾德網(wǎng)絡(luò),這是最早的RNN的雛形?;羝辗茽柕律窠?jīng)網(wǎng)絡(luò)模型是一種單層反饋神經(jīng)網(wǎng)絡(luò)(神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)主要可分為前饋神經(jīng)網(wǎng)絡(luò)、反饋神經(jīng)網(wǎng)絡(luò)及圖網(wǎng)絡(luò)),從輸出到輸入有反饋連接。它的出現(xiàn)振奮了神經(jīng)網(wǎng)絡(luò)領(lǐng)域,在人工智能之機(jī)器學(xué)習(xí)、聯(lián)想記憶、模式識(shí)別、優(yōu)化計(jì)算、VLSI和光學(xué)設(shè)備的并行實(shí)現(xiàn)等方面有著廣泛應(yīng)用。
1983年,Terrence Sejnowski, Hinton等人發(fā)明了玻爾茲曼機(jī)(Boltzmann Machines),也稱為隨機(jī)霍普菲爾德網(wǎng)絡(luò),它本質(zhì)是一種無監(jiān)督模型,用于對(duì)輸入數(shù)據(jù)進(jìn)行重構(gòu)以提取數(shù)據(jù)特征做預(yù)測(cè)分析。
1985年,朱迪亞·珀?duì)柼岢鲐惾~斯網(wǎng)絡(luò)(Bayesian network),他以倡導(dǎo)人工智能的概率方法和發(fā)展貝葉斯網(wǎng)絡(luò)而聞名,還因發(fā)展了一種基于結(jié)構(gòu)模型的因果和反事實(shí)推理理論而受到贊譽(yù)。
個(gè)性推薦算法簡(jiǎn)介:用戶c看過物品a,c,d,用戶b看過物品b,與用戶c的喜好不重合,用戶a看過物品a,c,由此可以推測(cè)用戶a與用戶c相似,可以推薦物品d給用戶a;當(dāng)然后續(xù)技術(shù)添加了組標(biāo)簽等新算法,使得推薦算法更加精確,推薦算法成為了新一代互聯(lián)網(wǎng)的核心護(hù)城河!任何互聯(lián)網(wǎng)平臺(tái)都離不開推薦算法,抖音,小紅書等推薦機(jī)制吸引了大量的注意力,便由此通過廣告變現(xiàn),成為新一代互聯(lián)網(wǎng)龍頭。
1986年,辛頓(Geoffrey Hinton)等人先后提出了多層感知器(MLP)與反向傳播(BP)訓(xùn)練相結(jié)合的理念(該方法在當(dāng)時(shí)計(jì)算力上還是有很多挑戰(zhàn),基本上都是和鏈?zhǔn)角髮?dǎo)的梯度算法相關(guān)的),這也解決了單層感知器不能做非線性分類的問題,開啟了神經(jīng)網(wǎng)絡(luò)新一輪的高潮。
1989年,LeCun (CNN之父) 結(jié)合反向傳播算法與權(quán)值共享的卷積神經(jīng)層發(fā)明了卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN),并首次將卷積神經(jīng)網(wǎng)絡(luò)成功應(yīng)用到美國(guó)郵局的手寫字符識(shí)別系統(tǒng)中。
卷積神經(jīng)網(wǎng)絡(luò)通常由輸入層、卷積層、池化(Pooling)層和全連接層組成。卷積層負(fù)責(zé)提取圖像中的局部特征,池化層用來大幅降低參數(shù)量級(jí)(降維),全連接層類似傳統(tǒng)神經(jīng)網(wǎng)絡(luò)的部分,用來輸出想要的結(jié)果。
平穩(wěn)發(fā)展期:20世紀(jì)90年代—2010年
由于互聯(lián)網(wǎng)技術(shù)的迅速發(fā)展,加速了人工智能的創(chuàng)新研究,促使人工智能技術(shù)進(jìn)一步走向?qū)嵱没?,人工智能相關(guān)的各個(gè)領(lǐng)域都取得長(zhǎng)足進(jìn)步。
在2000年代初,由于專家系統(tǒng)的項(xiàng)目都需要編碼太多的顯式規(guī)則,這降低了效率并增加了成本,人工智能研究的重心從基于知識(shí)系統(tǒng)轉(zhuǎn)向了機(jī)器學(xué)習(xí)方向。
1997年國(guó)際商業(yè)機(jī)器公司(簡(jiǎn)稱IBM)深藍(lán)超級(jí)計(jì)算機(jī)戰(zhàn)勝了國(guó)際象棋世界冠軍卡斯帕羅夫。深藍(lán)是基于暴力窮舉實(shí)現(xiàn)國(guó)際象棋領(lǐng)域的智能,通過生成所有可能的走法,然后執(zhí)行盡可能深的搜索,并不斷對(duì)局面進(jìn)行評(píng)估,嘗試找出最佳走法。
1997年,Sepp Hochreiter 和 Jürgen Schmidhuber提出了長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)(LSTM)。
LSTM是一種復(fù)雜結(jié)構(gòu)的循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN),結(jié)構(gòu)上引入了遺忘門、輸入門及輸出門:輸入門決定當(dāng)前時(shí)刻網(wǎng)絡(luò)的輸入數(shù)據(jù)有多少需要保存到單元狀態(tài),遺忘門決定上一時(shí)刻的單元狀態(tài)有多少需要保留到當(dāng)前時(shí)刻,輸出門控制當(dāng)前單元狀態(tài)有多少需要輸出到當(dāng)前的輸出值。這樣的結(jié)構(gòu)設(shè)計(jì)可以解決長(zhǎng)序列訓(xùn)練過程中的梯度消失問題。
2003年,Google公布了3篇大數(shù)據(jù)奠基性論文,為大數(shù)據(jù)存儲(chǔ)及分布式處理的核心問題提供了思路:非結(jié)構(gòu)化文件分布式存儲(chǔ)(GFS)、分布式計(jì)算(MapReduce)及結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)(BigTable),并奠定了現(xiàn)代大數(shù)據(jù)技術(shù)的理論基礎(chǔ)。
2006年,杰弗里·辛頓以及他的學(xué)生魯斯蘭·薩拉赫丁諾夫正式提出了深度學(xué)習(xí)的概念(Deeping Learning),開啟了深度學(xué)習(xí)在學(xué)術(shù)界和工業(yè)界的浪潮。2006年也被稱為深度學(xué)習(xí)元年,杰弗里·辛頓也因此被稱為深度學(xué)習(xí)之父。
深度學(xué)習(xí)的概念源于人工神經(jīng)網(wǎng)絡(luò)的研究,它的本質(zhì)是使用多個(gè)隱藏層網(wǎng)絡(luò)結(jié)構(gòu),通過大量的向量計(jì)算,學(xué)習(xí)數(shù)據(jù)內(nèi)在信息的高階表示。
- 隱藏層(Hidden Layer)是人工神經(jīng)網(wǎng)絡(luò)中的中間層,位于輸入層和輸出層之間。它的作用是對(duì)輸入數(shù)據(jù)進(jìn)行特征提取和變換,為最終的輸出層提供高層次特征。隱藏層這個(gè)術(shù)語之所以稱為“隱藏”,是因?yàn)槠漭敵鰧?duì)外界不可見,只在網(wǎng)絡(luò)內(nèi)部流通。
- 隱藏層的主要任務(wù)是通過線性變換和激活函數(shù)來捕捉數(shù)據(jù)中的復(fù)雜模式和特征。
- 多層隱藏層:通過多層隱藏層的堆疊,網(wǎng)絡(luò)可以逐漸提取出數(shù)據(jù)中越來越抽象的特征,這也是深度學(xué)習(xí)的核心思想。
深度學(xué)習(xí)算法簡(jiǎn)述
深度神經(jīng)網(wǎng)絡(luò)的開發(fā)與工作模式抽象為以下幾個(gè)步驟:
1.確定模型輸入輸出
首先需要確認(rèn)神經(jīng)網(wǎng)絡(luò)模型的輸入樣本學(xué)習(xí)數(shù)據(jù)(Sample)、輸出標(biāo)簽(Label)。如圖中所示,給 AI 模型輸入圖片,輸出是圖片所對(duì)應(yīng)的類別(馬冬梅、馬小梅等)。用戶需要提前準(zhǔn)備好模型的輸入輸出數(shù)據(jù),進(jìn)而展開后續(xù)的模型訓(xùn)練【21】。
一般來說,輸入和輸出的數(shù)據(jù)將分為80%的模型訓(xùn)練數(shù)據(jù)- training data,20%的模型用來測(cè)試模型-test data,來計(jì)算loss function。
2.設(shè)計(jì)與開發(fā)模型
開發(fā)者通過 AI 開發(fā)框架提供的 API 開發(fā)了圖中的模型結(jié)構(gòu),線段代表權(quán)重,圓圈代表輸入數(shù)據(jù)發(fā)生計(jì)算操作。其中 wn 代表權(quán)重,也就是可以被學(xué)習(xí)和不斷更新的數(shù)值。權(quán)重w和偏置b就被稱為神經(jīng)網(wǎng)絡(luò)的參數(shù),其約等于連接的個(gè)數(shù)-就是圖像里的線條個(gè)數(shù)。
3.訓(xùn)練(Training)過程
訓(xùn)練的本質(zhì)上是通過網(wǎng)絡(luò)中的連接逐層向后傳播總誤差,計(jì)算每個(gè)層中每個(gè)權(quán)重和偏差對(duì)總誤差的貢獻(xiàn)(梯度 δw),然后使用求解梯度的優(yōu)化算法(如梯度下降算法)進(jìn)行優(yōu)化權(quán)重和偏差,并最終最小化神經(jīng)網(wǎng)絡(luò)的總誤差。如圖中上半部分所示,訓(xùn)練過程就是根據(jù)用戶給定的帶有標(biāo)簽(如圖中的馬冬梅、馬小梅等輸出標(biāo)簽)的數(shù)據(jù)集,不斷通過優(yōu)化算法進(jìn)行學(xué),通過下面步驟學(xué)習(xí)出給定數(shù)據(jù)集下最優(yōu)的模型權(quán)重 wn 的取值。
3.1 前向傳播(Forward Propagation):由輸入到輸出完成 AI 模型中各層矩陣計(jì)算(例如卷積層,池化層等),每一層都在提取更高維度的目標(biāo)特征(點(diǎn)-線-面),產(chǎn)生輸出并完成損失函數(shù) LOSS 計(jì)算。
- 損失函數(shù)就是模型的預(yù)測(cè)值和實(shí)際值的總差
- 深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)計(jì)算80%都是簡(jiǎn)單的加減乘除四則運(yùn)算,20%才是復(fù)雜的微積分運(yùn)算-梯度更新等
3.2 反向傳播(Back Propagation):由輸出到輸入反向完成 AI 模型中各層的權(quán)重和輸出對(duì)損失函數(shù)的梯度求解。
x 軸和 y 軸分別代表兩個(gè)權(quán)值,z 軸代表在給定兩個(gè)特定權(quán)值的情況下?lián)p失函數(shù)的值。我們的目標(biāo)就是找到損失最小的特定權(quán)值,這個(gè)點(diǎn)被稱作損失函數(shù)的最小值點(diǎn)。
圖:初始的損失函數(shù)
3.3 梯度更新(Weight Update):對(duì)模型權(quán)重通過梯度下降法完成模型權(quán)重針對(duì)梯度和指定學(xué)習(xí)率更新。
- 初始化權(quán)值的時(shí)候,我們處于損失函數(shù)圖形中的最高點(diǎn)。首先要做的就是查看 x-y 平面中所有可能的方向,看看哪個(gè)方向是損失函數(shù)的值下降最陡峭的方向。這個(gè)就是我們必須移動(dòng)的方向,它恰恰與梯度的方向相反。梯度是高維導(dǎo)數(shù)的另一種說法,它給出了最陡峭的上升方向【22】。
- 在曲面的任何一點(diǎn),我們都能夠定義一個(gè)與其相切的平面。在更高維度,我們總能夠定義一個(gè)超平面,但在這里我們還是堅(jiān)持使用 3 維空間。然后,在這個(gè)平面上有無限個(gè)方向。其中,準(zhǔn)確來說只有一個(gè)使函數(shù)上升最快的方向,這個(gè)方向由梯度給出,與之相反的方向就是下降最快的方向。這就是算法名稱的來源,我們沿著梯度的方向進(jìn)行下降,所以就叫做梯度下降。
- 現(xiàn)在,既然已經(jīng)有了前進(jìn)方向,我們必須決定需要采取步子的大小,而控制下降步幅大小的參數(shù)即學(xué)習(xí)率。為了保證降到最小值,我們必須謹(jǐn)慎地選擇學(xué)習(xí)率。
- 如果移動(dòng)得太快,我們可能越過最小值,沿著「山谷」的山脊蹦蹦跳跳,永遠(yuǎn)都不可能到達(dá)最小值。如果移動(dòng)太慢,訓(xùn)練可能花費(fèi)太長(zhǎng)的時(shí)間,根本就不可行,此外太慢的學(xué)習(xí)率也容易讓算法陷入極小值。
- 一旦有了梯度和學(xué)習(xí)率,我們就開始行動(dòng),然后在最終到達(dá)的任何位置重新計(jì)算梯度,然后重復(fù)這個(gè)過程。
- 梯度的方向告訴我們哪個(gè)方向上升的最快,它的幅值則表示最陡峭的上升/下降有多陡。所以,在最小值的地方,曲面輪廓幾乎是平坦的,我們期望得到幾乎為零的梯度。事實(shí)上,最小值點(diǎn)的梯度就是 0。
- 在實(shí)踐中,我們可能永遠(yuǎn)無法精確地達(dá)到最小值,但是我們能夠在最小值附近的平坦區(qū)域震蕩。當(dāng)我們?cè)谶@個(gè)區(qū)域震蕩時(shí),損失值幾乎是我們能夠達(dá)到的最小值,并且不會(huì)有很大的變化,因?yàn)槲覀兪窃谡鎸?shí)的最小值附近跳動(dòng)。通常,當(dāng)損失值在預(yù)定的數(shù)字內(nèi)沒有提升的時(shí)候我們會(huì)停止迭代,例如 10 次或者 20 次迭代。當(dāng)這種情況發(fā)生時(shí),我們就說訓(xùn)練已經(jīng)收斂了,或者說收斂已經(jīng)實(shí)現(xiàn)了。
- 調(diào)整學(xué)習(xí)率是算法工程師的重要工作之一,也稱之為調(diào)參工程。
圖:實(shí)際的梯度更新后的損失函數(shù)
- 不斷重復(fù)以上步驟 3.1 ~ 3.2,直到達(dá)到 AI 模型收斂或達(dá)到終止條件(例如指定達(dá)到一定迭代(Step)次數(shù)然后停止執(zhí)行)。
- 如圖所示,當(dāng)完成了模型訓(xùn)練,意味著在給定的數(shù)據(jù)集上,模型已經(jīng)達(dá)到最佳或者滿足需求的預(yù)測(cè)效果。在如果開發(fā)者對(duì)模型預(yù)測(cè)效果滿意,就可以進(jìn)入模型部署進(jìn)行推理和使用模型。一句話而言,我們訓(xùn)練 AI 模型的過程,就是通過不斷的迭代計(jì)算,使用梯度下降的優(yōu)化算法,使得損失函數(shù)越來越小。損失函數(shù)越小就表示算法達(dá)到數(shù)學(xué)意義上的最優(yōu)。
4.推理(Inference)過程
推理只需要執(zhí)行訓(xùn)練過程中的前向傳播過程即可,推理的原理是基于訓(xùn)練好的 AI 模型,通過輸入待預(yù)測(cè)的數(shù)據(jù),經(jīng)過前向傳播過程,即通過 AI 模型定義的激活函數(shù)和非線性函數(shù)處理數(shù)據(jù),得到最終的預(yù)測(cè)結(jié)果。
如圖中下半部分所示,由輸入到輸出完成 AI 模型中各層的矩陣計(jì)算(例如卷積層,池化層等),產(chǎn)生輸出。本例中輸入是“馬冬梅”的圖片,輸出的結(jié)果為向量,向量中的各個(gè)維度編碼了圖像的類別可能性,其中“馬冬梅”的類別概率最大,判定為“馬冬梅”,后續(xù)應(yīng)用可以根據(jù)輸出類別信息,通過程序轉(zhuǎn)換為人可讀的信息。
蓬勃發(fā)展期:2011年至今
隨著大數(shù)據(jù)、云計(jì)算、互聯(lián)網(wǎng)、物聯(lián)網(wǎng)等信息技術(shù)的發(fā)展,泛在感知數(shù)據(jù)和圖形處理器等計(jì)算平臺(tái)推動(dòng)以深度神經(jīng)網(wǎng)絡(luò)為代表的人工智能技術(shù)飛速發(fā)展,大幅跨越了科學(xué)與應(yīng)用之間的技術(shù)鴻溝,諸如圖像分類、語音識(shí)別、知識(shí)問答、人機(jī)對(duì)弈、無人駕駛等人工智能技術(shù)實(shí)現(xiàn)了重大的技術(shù)突破,迎來爆發(fā)式增長(zhǎng)的新高潮。
2012年,Hinton和他的學(xué)生Alex Krizhevsky設(shè)計(jì)的AlexNet神經(jīng)網(wǎng)絡(luò)模型在ImageNet競(jìng)賽大獲全勝,這是史上第一次有模型在 ImageNet 數(shù)據(jù)集表現(xiàn)如此出色,并引爆了神經(jīng)網(wǎng)絡(luò)的研究熱情。
AlexNet是一個(gè)經(jīng)典的CNN模型,在數(shù)據(jù)、算法及算力層面均有較大改進(jìn),創(chuàng)新地應(yīng)用了Data Augmentation、ReLU、Dropout和LRN等方法,并使用GPU加速網(wǎng)絡(luò)訓(xùn)練。GPU在深度學(xué)習(xí)網(wǎng)絡(luò)的作用開始遠(yuǎn)遠(yuǎn)大于CPU。
2012年,谷歌正式發(fā)布谷歌知識(shí)圖譜Google Knowledge Graph),它是Google的一個(gè)從多種信息來源匯集的知識(shí)庫(kù),通過Knowledge Graph來在普通的字串搜索上疊一層相互之間的關(guān)系,協(xié)助使用者更快找到所需的資料的同時(shí),也可以知識(shí)為基礎(chǔ)的搜索更近一步,以提高Google搜索的質(zhì)量。
2015年,為紀(jì)念人工智能概念提出60周年,深度學(xué)習(xí)三巨頭LeCun、Bengio和Hinton(他們于2018年共同獲得了圖靈獎(jiǎng))推出了深度學(xué)習(xí)的聯(lián)合綜述《Deep learning》。
《Deep learning》文中指出深度學(xué)習(xí)就是一種特征學(xué)習(xí)方法,把原始數(shù)據(jù)通過一些簡(jiǎn)單的但是非線性的模型轉(zhuǎn)變成為更高層次及抽象的表達(dá),能夠強(qiáng)化輸入數(shù)據(jù)的區(qū)分能力。通過足夠多的轉(zhuǎn)換的組合,非常復(fù)雜的函數(shù)也可以被學(xué)習(xí)。
2015年,Microsoft Research的Kaiming He等人提出的殘差網(wǎng)絡(luò)(ResNet)在ImageNet大規(guī)模視覺識(shí)別競(jìng)賽中獲得了圖像分類和物體識(shí)別的優(yōu)勝。
殘差網(wǎng)絡(luò)的主要貢獻(xiàn)是發(fā)現(xiàn)了網(wǎng)絡(luò)不恒等變換導(dǎo)致的“退化現(xiàn)象(Degradation)”,并針對(duì)退化現(xiàn)象引入了 “快捷連接(Shortcut connection)”,緩解了在深度神經(jīng)網(wǎng)絡(luò)中增加深度帶來的梯度消失問題。
2015年,谷歌開源TensorFlow框架。它是一個(gè)基于數(shù)據(jù)流編程(dataflow programming)的符號(hào)數(shù)學(xué)系統(tǒng),被廣泛應(yīng)用于各類機(jī)器學(xué)習(xí)(machine learning)算法的編程實(shí)現(xiàn),其前身是谷歌的神經(jīng)網(wǎng)絡(luò)算法庫(kù)DistBelief。
2015年,馬斯克等人共同創(chuàng)建OpenAI。它是一個(gè)非營(yíng)利的研究組織,使命是確保通用人工智能 (即一種高度自主且在大多數(shù)具有經(jīng)濟(jì)價(jià)值的工作上超越人類的系統(tǒng))將為全人類帶來福祉。其發(fā)布熱門產(chǎn)品的如:OpenAI Gym,GPT等。
2016年,AlphaGo與圍棋世界冠軍、職業(yè)九段棋手李世石進(jìn)行圍棋人機(jī)大戰(zhàn),以4比1的總比分獲勝。
2018年,Google提出論文《Pre-training of Deep Bidirectional Transformers for Language Understanding》并發(fā)布Bert(Bidirectional Encoder Representation from Transformers)模型,成功在 11 項(xiàng) NLP 任務(wù)中取得 state of the art 的結(jié)果。
BERT是一個(gè)預(yù)訓(xùn)練的語言表征模型,可在海量的語料上用無監(jiān)督學(xué)習(xí)方法學(xué)習(xí)單詞的動(dòng)態(tài)特征表示。它基于Transformer注意力機(jī)制的模型,對(duì)比RNN可以更加高效、能捕捉更長(zhǎng)距離的依賴信息,且不再像以往一樣采用傳統(tǒng)的單向語言模型或者把兩個(gè)單向語言模型進(jìn)行淺層拼接的方法進(jìn)行預(yù)訓(xùn)練,而是采用新的masked language model(MLM),以致能生成深度的雙向語言表征。
2020年,OpenAI開發(fā)的文字生成 (text generation) 人工智能GPT-3,它具有1,750億個(gè)參數(shù)的自然語言深度學(xué)習(xí)模型,比以前的版本GPT-2高100倍,該模型經(jīng)過了將近0.5萬億個(gè)單詞的預(yù)訓(xùn)練,可以在多個(gè)NLP任務(wù)(答題、翻譯、寫文章)基準(zhǔn)上達(dá)到最先進(jìn)的性能。
2020年,谷歌旗下DeepMind的AlphaFold2人工智能系統(tǒng)有力地解決了蛋白質(zhì)結(jié)構(gòu)預(yù)測(cè)的里程碑式問題。它在國(guó)際蛋白質(zhì)結(jié)構(gòu)預(yù)測(cè)競(jìng)賽(CASP)上擊敗了其余的參會(huì)選手,精確預(yù)測(cè)了蛋白質(zhì)的三維結(jié)構(gòu),準(zhǔn)確性可與冷凍電子顯微鏡(cryo-EM)、核磁共振或 X 射線晶體學(xué)等實(shí)驗(yàn)技術(shù)相媲美。
2021年,OpenAI提出兩個(gè)連接文本與圖像的神經(jīng)網(wǎng)絡(luò):DALL·E 和 CLIP。DALL·E 可以基于文本直接生成圖像,CLIP 則能夠完成圖像與文本類別的匹配。
2021年,AlphaFold 2 能很好地預(yù)判蛋白質(zhì)與分子結(jié)合的概率,為我們展示了人工智能驅(qū)動(dòng)自然學(xué)科研究的無限潛力;
2022年,ChatGPT推出,AI爆炸進(jìn)行時(shí)!
總結(jié)來說,AI技術(shù)學(xué)派的發(fā)展,隨著人類對(duì)自己的智慧的研究深入-當(dāng)然也有客觀物理?xiàng)l件的滿足(算力和數(shù)據(jù)),從意識(shí)層面(現(xiàn)成的知識(shí)復(fù)制)到物質(zhì)層面(神經(jīng)網(wǎng)絡(luò)的機(jī)制),所產(chǎn)生的智能從機(jī)械重復(fù)性工作到創(chuàng)意生成實(shí)現(xiàn)了跨越,符號(hào)主義范式向聯(lián)結(jié)主義范式遷移,少層次神經(jīng)網(wǎng)絡(luò)到多層次深度學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò)。
(2)AI理論
在實(shí)踐中,我們根據(jù)任務(wù),優(yōu)先確認(rèn)學(xué)習(xí)范式和算法,搭建ai模型,在小規(guī)模應(yīng)用中收斂學(xué)習(xí)范式和ai模型至可以被大規(guī)模訓(xùn)練的最佳狀態(tài)–loss fuction表現(xiàn)優(yōu)異。
學(xué)習(xí)范式
機(jī)器學(xué)習(xí)的范式包含三種主流范式:
監(jiān)督學(xué)習(xí)(Supervised Learning)
監(jiān)督學(xué)習(xí)模型主要是根據(jù)人類已標(biāo)注數(shù)據(jù)對(duì)模型的輸入和輸出學(xué)習(xí)到一種映射關(guān)系,以此對(duì)測(cè)試數(shù)據(jù)集中的樣本進(jìn)行預(yù)測(cè)。包含兩類任務(wù):分類和回歸。許多數(shù)據(jù)標(biāo)注公司業(yè)務(wù)依賴于此學(xué)習(xí)范式的模型公司。
模仿學(xué)習(xí)(Imitation Learning)
模仿學(xué)習(xí)是指從示教者提供的范例中學(xué)習(xí),把狀態(tài)作為特征(feature)【23】,動(dòng)作作為標(biāo)記(label)進(jìn)行分類(對(duì)于離散動(dòng)作)或回歸(對(duì)于連續(xù)動(dòng)作)的學(xué)習(xí)從而得到最優(yōu)策略模型。模型的訓(xùn)練目標(biāo)是使模型生成的狀態(tài)-動(dòng)作軌跡分布和輸入的軌跡分布相匹配。本質(zhì)上是一種對(duì)齊手段,不是真正的理解世界。
在簡(jiǎn)單自動(dòng)駕駛?cè)蝿?wù)中(如下圖),狀態(tài)就是指汽車攝像頭所觀測(cè)到的畫面,動(dòng)作即轉(zhuǎn)向角度。根據(jù)人類提供的狀態(tài)動(dòng)作對(duì)來習(xí)得駕駛策略。這個(gè)任務(wù)也叫做行為克隆(Behavior Cloning),即作為監(jiān)督學(xué)習(xí)的模仿學(xué)習(xí)。
缺點(diǎn):由于沒有自我探索能力,性能不可能超過人類遙控機(jī)器人所能達(dá)到的性能。而很多任務(wù)實(shí)際上是通過遙控/示教難以實(shí)現(xiàn)的,比如人形機(jī)器人的奔跑跳躍等動(dòng)態(tài)平衡問題,以及與動(dòng)態(tài)物體的交互。
無監(jiān)督學(xué)習(xí)(Unsupervised Learning)
相比于監(jiān)督學(xué)習(xí),無監(jiān)督學(xué)習(xí)僅依賴于無標(biāo)簽的數(shù)據(jù)訓(xùn)練模型來學(xué)習(xí)數(shù)據(jù)表征。自監(jiān)督學(xué)習(xí)是無監(jiān)督學(xué)習(xí)的一種。
自監(jiān)督學(xué)習(xí)(Self-Supervised Learning)
自監(jiān)督學(xué)習(xí)主要是利用「輔助任務(wù)(pretext)–自動(dòng)標(biāo)注、自動(dòng)訓(xùn)練「從大規(guī)模的無監(jiān)督數(shù)據(jù)中挖掘」自身的監(jiān)督信息」來提高學(xué)習(xí)表征的質(zhì)量,通過這種構(gòu)造監(jiān)督信息對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,從而可以學(xué)習(xí)到對(duì)下游任務(wù)具有價(jià)值的表征。
最常見的通過隨機(jī)刪去訓(xùn)練集句子中的單詞來構(gòu)造輔助任務(wù)訓(xùn)練集和標(biāo)簽,來訓(xùn)練網(wǎng)絡(luò)預(yù)測(cè)被刪去的單詞,以提升模型對(duì)于語序特征的提取能力(BERT)。
強(qiáng)化學(xué)習(xí)(Reinforcement Learning)
基于環(huán)境的反饋而行動(dòng),通過不斷與環(huán)境的交互、試錯(cuò),最終完成特定目的或者使得整體行動(dòng)收益最大化。強(qiáng)化學(xué)習(xí)不需要訓(xùn)練數(shù)據(jù)的label,但是它需要每一步行動(dòng)環(huán)說給的反饋,是獎(jiǎng)勵(lì)還是懲別!反饋可以量化,基于反饋不斷調(diào)整訓(xùn)練對(duì)象的行為【24】。
強(qiáng)化學(xué)習(xí)是智能體(Agent)以“試錯(cuò)”的方式進(jìn)行學(xué)習(xí),通過與環(huán)境進(jìn)行交互獲得的獎(jiǎng)賞指導(dǎo)行為,目標(biāo)是使智能體獲得最大的獎(jiǎng)賞。
強(qiáng)化學(xué)習(xí)主要是指導(dǎo)訓(xùn)練對(duì)象每一步如何決策,采用什么樣的行動(dòng)可以完成特定的目的或者使收益最大化。
比如AlphaGo下圍棋,AlphaGo就是強(qiáng)化學(xué)習(xí)的訓(xùn)練對(duì)象,AlphaGo走的每一步不存在對(duì)錯(cuò)之分,但是存在“好壞”之分。當(dāng)前這個(gè)棋面下,下的“好”,這是一步好棋。下的“壞”,這是一步臭棋。強(qiáng)化學(xué)習(xí)的訓(xùn)練基礎(chǔ)在于AlphaGo的每一步行動(dòng)環(huán)境都能給予明確的反饋,是“好”是“壞”?“好”“壞”具體是多少,可以量化。強(qiáng)化學(xué)習(xí)在AlphaGo這個(gè)場(chǎng)景中最終訓(xùn)練目的就是讓棋子占領(lǐng)棋面上更多的區(qū)域,贏得最后的勝利。
EE(Explore & Exploit)探索和利用的權(quán)衡 trade-off
但實(shí)際我們?cè)谶M(jìn)行強(qiáng)化學(xué)習(xí)訓(xùn)練過程中,會(huì)遇到一個(gè)“EE”問題。這里的Double E不是“Electronic Engineering”,而是“Explore & Exploit”,“探索&利用”。
所以在強(qiáng)化學(xué)習(xí)訓(xùn)練的時(shí)候,一開始會(huì)讓Agent更偏向于探索Explore,并不是哪一個(gè)Action帶來的Value最大就執(zhí)行該Action,選擇Action時(shí)具有一定的隨機(jī)性,目的是為了覆蓋更多的Action,嘗試每一種可能性。等訓(xùn)練很多輪以后各種State下的各種Action基本嘗試完以后,我們這時(shí)候會(huì)大幅降低探索的比例,盡量讓Agent更偏向于利用Exploit,哪一個(gè)Action返回的Value最大,就選擇哪一個(gè)Action。
Explore&Exploit是一個(gè)在機(jī)器學(xué)習(xí)領(lǐng)域經(jīng)常遇到的問題,并不僅僅只是強(qiáng)化學(xué)習(xí)中會(huì)遇到,在推薦系統(tǒng)中也會(huì)遇到,比如用戶對(duì)某個(gè)商品 or 內(nèi)容感興趣,系統(tǒng)是否應(yīng)該一直為用戶推送,是不是也要適當(dāng)搭配隨機(jī)一些其他商品 or 內(nèi)容。
該學(xué)習(xí)范式容易陷入局部最優(yōu):部分場(chǎng)景中Agent采取的行動(dòng)可能是當(dāng)前局部最優(yōu),而不是全局最優(yōu)。網(wǎng)上經(jīng)常有人截圖爆出打游戲碰到了王者榮耀AI,明明此時(shí)推塔或者推水晶是最合理的行為,但是AI卻去打小兵,因?yàn)锳I采取的是一個(gè)局部最優(yōu)的行為。再合理的Reward函數(shù)設(shè)置都可能陷入局部最優(yōu)中。
能力成長(zhǎng)滯后:比如沒有遇到的問題–長(zhǎng)尾問題,長(zhǎng)時(shí)間重復(fù)學(xué)習(xí)后,才能學(xué)會(huì),沒有Zero-Shot的能力。
AI模型算法
下面對(duì)典型的基本 AI 模型結(jié)構(gòu)進(jìn)行類型歸納【25】:
卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)
以卷積層(Convolution Layer)為主,池化層(Pooling Layer),全連接層(Fully Connected Layer)等算子(Operator)的組合形成的 AI 網(wǎng)絡(luò)模型,并在計(jì)算機(jī)視覺領(lǐng)域取得明顯效果和廣泛應(yīng)用的模型結(jié)構(gòu)。
循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)
以循環(huán)神經(jīng)網(wǎng)絡(luò)、長(zhǎng)短時(shí)記憶(LSTM)等基本單元組合形成的適合時(shí)序數(shù)據(jù)預(yù)測(cè)(例如,自然語言處理、語音識(shí)別、監(jiān)控時(shí)序數(shù)據(jù)等)的模型結(jié)構(gòu)。
圖神經(jīng)網(wǎng)絡(luò)(Graph Neural Network,GNN)
使用神經(jīng)網(wǎng)絡(luò)來學(xué)習(xí)圖結(jié)構(gòu)數(shù)據(jù),提取和發(fā)掘圖結(jié)構(gòu)數(shù)據(jù)中的特征和模式,滿足聚類、分類、預(yù)測(cè)、分割、生成等圖學(xué)習(xí)任務(wù)需求的算法總稱。目的是為了盡可能多的提取 “圖” 中潛在的表征信息。
生成對(duì)抗網(wǎng)絡(luò)(Generative Adversarial Network,GAN)
該架構(gòu)訓(xùn)練兩個(gè)神經(jīng)網(wǎng)絡(luò)相互競(jìng)爭(zhēng),從而從給定的訓(xùn)練數(shù)據(jù)集生成更真實(shí)的新數(shù)據(jù)。例如,可以從現(xiàn)有圖像數(shù)據(jù)庫(kù)生成新圖像,也可以從歌曲數(shù)據(jù)庫(kù)生成原創(chuàng)音樂。GAN 之所以被稱為對(duì)抗網(wǎng)絡(luò),是因?yàn)樵摷軜?gòu)訓(xùn)練兩個(gè)不同的網(wǎng)絡(luò)并使其相互對(duì)抗。
擴(kuò)散概率模型(Diffusion Probabilistic Models)
擴(kuò)散概率模型是一類潛變量模型,是用變分估計(jì)訓(xùn)練的馬爾可夫鏈。目標(biāo)是通過對(duì)數(shù)據(jù)點(diǎn)在潛空間中的擴(kuò)散方式進(jìn)行建模,來學(xué)習(xí)數(shù)據(jù)集的潛結(jié)構(gòu)。如計(jì)算機(jī)視覺中,意味著通過學(xué)習(xí)逆擴(kuò)散過程訓(xùn)練神經(jīng)網(wǎng)絡(luò),使其能對(duì)疊加了高斯噪聲的圖像進(jìn)行去噪。
混合結(jié)構(gòu)網(wǎng)絡(luò)(Model Ensemble)
組合卷積神經(jīng)網(wǎng)絡(luò)和循環(huán)神經(jīng)網(wǎng)絡(luò),進(jìn)而解決如光學(xué)字符識(shí)別(OCR)等復(fù)雜應(yīng)用場(chǎng)景的預(yù)測(cè)任務(wù)。
基礎(chǔ)模型的典型算子已經(jīng)被 AI 開發(fā)框架和底層 AI 硬件做了較多優(yōu)化,但是 AI 模型已經(jīng)不單純只在算子層面產(chǎn)生變化,其從網(wǎng)絡(luò)結(jié)構(gòu),搜索空間等方向演化出如下的新的趨勢(shì):
更大的模型:以 Transformer 為基本結(jié)構(gòu)的代表性預(yù)訓(xùn)練神經(jīng)語言模型(Neural Language Model),例如,BERT、GPT-3、LLAMA 等,在自然語言處理和計(jì)算機(jī)視覺等場(chǎng)景應(yīng)用越來越廣泛。其不斷增加的層數(shù)和參數(shù)量,該模型對(duì)底層系統(tǒng)內(nèi)存管理,分布式訓(xùn)練和硬件設(shè)計(jì)提出了很大的挑戰(zhàn)。
更靈活的結(jié)構(gòu):圖神經(jīng)網(wǎng)絡(luò)模型、深度搜索樹網(wǎng)模型等算法不斷抽象多樣且靈活的數(shù)據(jù)結(jié)構(gòu)(例如圖 Graph,樹 Tree 等),應(yīng)對(duì)更為復(fù)雜的建模需求。進(jìn)而衍生了新的算子(例如圖卷積等)與計(jì)算框架(例如圖神經(jīng)網(wǎng)絡(luò)框架等)。
更稀疏的模型結(jié)構(gòu):以多專家模型(Mixture of Experts,MoE)和 Pathways 模型結(jié)構(gòu)為代表的模型融合結(jié)構(gòu),讓運(yùn)行時(shí)的 AI 系統(tǒng)執(zhí)行模型更加動(dòng)態(tài)(Dynamic)和稀疏(Sparse),提升模型的訓(xùn)練效率減少訓(xùn)練代價(jià),支持更多的任務(wù)。給系統(tǒng)設(shè)計(jì)靜態(tài)分析帶來了不小的挑戰(zhàn),同時(shí)驅(qū)動(dòng)運(yùn)用即時(shí)編譯(Just In Time Compiling)和運(yùn)行時(shí)(Runtime)更加高效的調(diào)度與優(yōu)化。
更大規(guī)模的搜索空間:用戶定義更大規(guī)模的超參數(shù)與模型結(jié)構(gòu)搜索空間,通過超參數(shù)搜索優(yōu)化(HPO)與神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)搜索(NAS)自動(dòng)化找到最優(yōu)的模型結(jié)構(gòu)。自動(dòng)化機(jī)器學(xué)習(xí)(AutoML)為代表的訓(xùn)練方式,衍生出多作業(yè)執(zhí)行與多作業(yè)(Multi-Jobs)編排優(yōu)化的系統(tǒng)需求。
更多樣的訓(xùn)練方式:擴(kuò)散模型(Diffusion Model)和深度強(qiáng)化學(xué)習(xí)(Deep Reinforcement Learning)為代表的算法有比傳統(tǒng)訓(xùn)練方式更為復(fù)雜的過程。其衍生出訓(xùn)練,推理,數(shù)據(jù)處理混合部署與協(xié)同優(yōu)化的系統(tǒng)需求。
當(dāng)然還有軟硬結(jié)合的算法:具身智能算法和自動(dòng)駕駛算法。
接下來,筆者會(huì)重點(diǎn)闡述以trasfomer架構(gòu)為主的算法演變及原理。
Transfomer模型算法
深度學(xué)習(xí)算法都是:通過學(xué)習(xí)輸入的概率分布,形成神經(jīng)網(wǎng)絡(luò)潛空間的知識(shí)庫(kù)-包羅萬象的概率分布,然后引導(dǎo)輸出的概率分布與現(xiàn)實(shí)的需求對(duì)齊。
一句話:通過概率分布找到事物的各種關(guān)系
RNN的梯度消失和爆炸
深度學(xué)習(xí)RNN模型在自然語言領(lǐng)域的大規(guī)模探索和商業(yè)化后,人們逐漸發(fā)現(xiàn)其致命弱點(diǎn),導(dǎo)致其學(xué)習(xí)能力受限–梯度爆炸和消失問題。
比較簡(jiǎn)單的深層網(wǎng)絡(luò)如下【26】:
圖中是一個(gè)四層的全連接網(wǎng)絡(luò),假設(shè)每一層網(wǎng)絡(luò)激活后的輸出為?
其中i為第i層, x代表第i層的輸入,也就是第i?1層的輸出,f是激活函數(shù),那么,得出?
簡(jiǎn)單記為?
BP算法基于梯度下降策略,以目標(biāo)的負(fù)梯度方向?qū)?shù)進(jìn)行調(diào)整,參數(shù)的更新為?
給定學(xué)習(xí)率α,得出?
如果要更新第二隱藏層的權(quán)值信息,根據(jù)鏈?zhǔn)角髮?dǎo)法則,更新梯度信息:?
很容易看出來??
所以說, 就是對(duì)激活函數(shù)進(jìn)行求導(dǎo),如果此部分大于1,那么層數(shù)增多的時(shí)候,最終的求出的梯度更新將以指數(shù)形式增加,即發(fā)生梯度爆炸,如果此部分小于1,那么隨著層數(shù)增多,求出的梯度更新信息將會(huì)以指數(shù)形式衰減,即發(fā)生了梯度消失。
總而言之,隨著層數(shù)增多,鏈?zhǔn)角髮?dǎo)的微積分算法導(dǎo)致的梯度更新求解失控。
如果說從數(shù)學(xué)上看不夠直觀的話,下面幾個(gè)圖可以很直觀的說明深層網(wǎng)絡(luò)的梯度問題。
注:下圖中的隱層標(biāo)號(hào)和第一張全連接圖隱層標(biāo)號(hào)剛好相反。
已經(jīng)可以發(fā)現(xiàn)隱藏層2的權(quán)值更新速度要比隱藏層1更新的速度慢,第四隱藏層比第一隱藏層的更新速度慢了兩個(gè)數(shù)量級(jí)。
從深層網(wǎng)絡(luò)角度來講,不同的層學(xué)習(xí)的速度差異很大,表現(xiàn)為網(wǎng)絡(luò)中靠近輸出的層學(xué)習(xí)的情況很好,靠近輸入的層學(xué)習(xí)的很慢,有時(shí)甚至訓(xùn)練了很久,前幾層的權(quán)值和剛開始隨機(jī)初始化的值差不多。
梯度消失、爆炸,導(dǎo)致了RNN的學(xué)習(xí)能力受限,從而無法解決長(zhǎng)時(shí)依賴問題,當(dāng)預(yù)測(cè)點(diǎn)與依賴的相關(guān)信息距離比較遠(yuǎn)的時(shí)候,就難以學(xué)到該相關(guān)信息。例如在句子”我是一名中國(guó)人,…(省略數(shù)十字),我會(huì)說中文”,如果我們要預(yù)測(cè)未尾的“中文”兩個(gè)字,我們需要上文的“中國(guó)人”,或者“中國(guó)”。
其根本原因在于反向傳播訓(xùn)練法則,本質(zhì)在于方法問題,而且對(duì)于人來說,在大腦的思考機(jī)制里是沒有反向傳播的。
同時(shí)在RNN當(dāng)中,tokens是一個(gè)一個(gè)被喂給模型的。比如在a3的位置,模型要等a1和a2的信息都處理完成后,才可以生成a3。無法并行計(jì)算導(dǎo)致只能接納有限的上下文。
Transfomer
為了更好地捕捉長(zhǎng)距離信息,研究者們想要尋找到一種更強(qiáng)的語言模型方法,由此提出了以 transformer結(jié)構(gòu)為基礎(chǔ)的預(yù)訓(xùn)練語言模型。
一切源于2017年谷歌Brain團(tuán)隊(duì)那篇鼎鼎大名的文章“Attention Is All You Need”(注意力就是你所需要的一切),就是這篇文章提出了Transformer網(wǎng)絡(luò)結(jié)構(gòu)。
首先,Transformer引入的自注意力機(jī)制能夠有效捕捉序列信息中長(zhǎng)距離依賴關(guān)系,相比于以往的RNNs,它在處理長(zhǎng)序列時(shí)的表現(xiàn)更好。
而自注意力機(jī)制的另一個(gè)特點(diǎn)是允許模型并行計(jì)算,無需RNN一樣t步驟的計(jì)算必須依賴t-1步驟的結(jié)果,因此Transformer結(jié)構(gòu)讓模型的計(jì)算效率更高,加速訓(xùn)練和推理速度。
Transformer最開始應(yīng)用于NLP領(lǐng)域的機(jī)器翻譯任務(wù),但是它的通用性很好,除了NLP領(lǐng)域的其他任務(wù),經(jīng)過變體,還可以用于視覺領(lǐng)域,如ViT(Vision Transformer)。
我們把模型拆成了各個(gè)零件進(jìn)行學(xué)習(xí),最后把這些零件組裝成一個(gè)標(biāo)準(zhǔn)的Transformer。
最初,Transformer 模型是為機(jī)器翻譯而設(shè)計(jì)的。它是一個(gè)編碼器-解碼器結(jié)構(gòu),其中編碼器將原始語言的句子作為輸入并生成基于注意力的表征。而解碼器關(guān)注編碼信息并以自回歸方式生成翻譯的句子,就像 RNN 一樣。
1 輸入:Embedding(嵌入)– 降維至數(shù)字
“Embedding”直譯是嵌入式、嵌入層。作用就是將文字降維至數(shù)字,讓計(jì)算機(jī)可計(jì)算。
嵌入之前,我們首先tokenize是指將文本分割成稱為“tokens”的有意義的片段的過程–可以理解為把句子里的主語、謂語等有意義的單詞切割開,每個(gè)token單獨(dú)輸入給嵌入層。
簡(jiǎn)單來說,我們常見的地圖就是對(duì)于現(xiàn)實(shí)地理的Embedding,現(xiàn)實(shí)的地理地形的信息其實(shí)遠(yuǎn)遠(yuǎn)超過三維,但是地圖通過顏色和等高線等來最大化表現(xiàn)現(xiàn)實(shí)的地理信息。通過它,我們?cè)诂F(xiàn)實(shí)世界里的文字、圖片、語言、視頻就能轉(zhuǎn)化為計(jì)算機(jī)能識(shí)別、能使用的語言,且轉(zhuǎn)化的過程中信息不丟失。
圖:直觀的幾何表達(dá)壓縮為:三維圖像變壓縮成3張二維的圖像
假設(shè),我們中文,一共只有10個(gè)字,那么我們用0-9就可以表示完【27】。比如,這十個(gè)字就是“小普喜歡星海灣的朋友”,其分別對(duì)應(yīng)“0-9”,如下:
那么,其實(shí)我們只用一個(gè)列表就能表示所有的對(duì)話。例如:
但是中文單詞有幾十萬的,都需要特殊編碼,可以經(jīng)過one-hot編碼把上面變成,保持其唯一特殊性:
即:把每一個(gè)字都對(duì)應(yīng)成一個(gè)十個(gè)(樣本總數(shù)/字總數(shù))元素的數(shù)組/列表,其中每一個(gè)字都用唯一對(duì)應(yīng)的數(shù)組/列表對(duì)應(yīng),數(shù)組/列表的唯一性用1表示。
稀疏矩陣做矩陣計(jì)算的時(shí)候,只需要把1對(duì)應(yīng)位置的數(shù)相乘求和就行。何況這個(gè)列表還是一行,如果是100行、1000行或1000列呢?所以,one-hot編碼的優(yōu)勢(shì)就體現(xiàn)出來了,計(jì)算方便快捷、表達(dá)能力強(qiáng)。
然而,缺點(diǎn)也隨著來了。比如:中文大大小小簡(jiǎn)體繁體常用不常用有十幾萬,然后一篇文章100W字,表示成100W X 10W的矩陣???這是它最明顯的缺點(diǎn):過于稀疏時(shí),過度占用資源。比如:其實(shí)我們這篇文章,雖然100W字,但是其實(shí)我們整合起來,有99W字是重復(fù)的,只有1W字是完全不重復(fù)的。那我們用100W X 10W的豈不是白白浪費(fèi)了99W X 10W的矩陣存儲(chǔ)空間。那怎么辦???這時(shí),Embedding層就出現(xiàn)了!
假設(shè):我們有一個(gè)2 x 6的矩陣,然后乘上一個(gè)6 x 3的矩陣后,變成了一個(gè)2 x 3的矩陣。
這個(gè)過程,我們把一個(gè)A中的12個(gè)元素的矩陣變成C中6個(gè)元素的矩陣,直觀上,大小是不是縮小了一半,Embedding層,在某種程度上,就是用來降維的,降維的原理就是矩陣乘法。
假如我們有一個(gè)100W X10W的矩陣,用它乘上一個(gè)10W X 20的矩陣,我們可以把它降到100W X 20,瞬間量級(jí)降了10W/20=5000倍。
它就是作為這個(gè)橋梁的存在,讓我們手頭的東西可伸可縮,變成我們希望的樣子。
2 輸入:Positional Encoding (位置編碼)
我們的輸入除了嵌入層的降維數(shù)字信息外,還需要對(duì)每一個(gè)文字打上數(shù)字編碼,知道每一個(gè)文字的上下文順序【28】。
在self-attention模型中,輸入是一整排的tokens,對(duì)于人來說,我們很容易知道tokens的位置信息,比如:
(1)絕對(duì)位置信息。a1是第一個(gè)token,a2是第二個(gè)token……
(2)相對(duì)位置信息。a2在a1的后面一位,a4在a2的后面兩位……
(3)不同位置間的距離。a1和a3差兩個(gè)位置,a1和a4差三個(gè)位置….
但是這些對(duì)于self-attention來說,是無法分辯的信息,因?yàn)閟elf-attention的運(yùn)算是無向的。因?yàn)?,我們要想辦法,把tokens的位置信息,喂給模型。
編碼有三大要求:1 絕對(duì)位置信息有界限(否則距離大小無限)2 連續(xù) 3 不同位置的相對(duì)距離可以被轉(zhuǎn)換計(jì)算
3 Self-attention(自注意力機(jī)制)– 注意力機(jī)制下的權(quán)重計(jì)算
假設(shè)以下句子是我們要翻譯的輸入句子:
“動(dòng)物沒有過馬路,因?yàn)樗哿恕薄?9】
這句話中的“它”指的是什么?它是指街道還是動(dòng)物?這對(duì)人類來說是一個(gè)簡(jiǎn)單的問題,但對(duì)算法來說卻不那么簡(jiǎn)單, 當(dāng)模型處理單詞“它”時(shí),自注意力允許它將“它”與“動(dòng)物”聯(lián)系起來。
當(dāng)模型處理每個(gè)單詞(輸入序列中的每個(gè)位置)時(shí),自注意力允許它查看輸入序列中的其他位置以尋找有助于更好地編碼該單詞的線索。
自注意力機(jī)制就是要通過權(quán)重矩陣來自發(fā)地找到詞與詞之間的關(guān)系
(1)計(jì)算框架
Self-Attention的意思是,我們給Attention的輸入都來自同一個(gè)序列,其計(jì)算方式如下【30】:
這張圖所表示的大致運(yùn)算過程是:對(duì)于每個(gè)token,先產(chǎn)生三個(gè)向量Query,Key,Value:
- Query向量類比于詢問。某個(gè)token問:“其余的token都和我有多大程度的相關(guān)呀?”
- Key向量類比于索引。某個(gè)token說:“我把每個(gè)詢問內(nèi)容的回答都?jí)嚎s了下裝在我的key里” 。
- Value向量類比于回答。某個(gè)token說:“我把我自身涵蓋的信息又抽取了一層裝在我的value里” 。
以圖中的token a2為例:它產(chǎn)生一個(gè)Query,每個(gè)Query都去和別的token的Key做“某種方式”的計(jì)算,得到的結(jié)果我們稱為attention score。則一共得到四個(gè)attention score。
將這四個(gè)score分別乘上每個(gè)token的Value,我們會(huì)得到四個(gè)抽取信息完畢的向量。將這四個(gè)向量相加,就是最終a2過attention模型后所產(chǎn)生的結(jié)果b2。
(2)Query,Key和Value 的計(jì)算方式 — 計(jì)算權(quán)重矩陣
下圖描述了產(chǎn)生Query(Q),Key(K)和Value(V)的過程:
實(shí)際上,要理解QKV,重點(diǎn)是理解 Wq、Wk、Wv這三個(gè)矩陣。為什么會(huì)有這三個(gè)矩陣?前面文章中,只說明了Q、K、V,而省略了Wq、Wk、Wv。但是,要理解 attention 中的QKV,首先要理解這三個(gè)矩陣。
簡(jiǎn)單來說,這是三個(gè)權(quán)重矩陣。那么,它們是怎么來的?自然,是在模型訓(xùn)練過程中得到的。如果只關(guān)注模型運(yùn)行時(shí)的Q、K、V,就不容易理解它們的作用。要結(jié)合模型的訓(xùn)練過程和運(yùn)行過程來理解QKV【31】。
假設(shè)有一個(gè)問答數(shù)據(jù)庫(kù),包含有很多問答,比如:
假設(shè)有一個(gè)新問題:今天會(huì)下雨嗎?
此時(shí):Q = 今天會(huì)下雨嗎?那么這個(gè)問題的輸出V,應(yīng)該是什么?
通過問題Q,如果要從問答數(shù)據(jù)庫(kù)中查找最接近問題的答案,當(dāng)然是找相似了。
首先,從所有 K 中尋找最接近 Q 的 K,也就是說要計(jì)算 Q 和 [多個(gè)K] 的相似性,只有找到最接近 Q 的 K,才能找到最接近 K 的 V。
Q和K的相似性,實(shí)際上在訓(xùn)練的過程中,就是訓(xùn)練數(shù)據(jù)K1、K2之間的相似性。在得到了輸入序列之間的相關(guān)性權(quán)重之后,對(duì)V做一個(gè)加權(quán)處理,從而就找到了最接近 K 的那個(gè) V。
Q 和 K 的相似性,K 和 V 的相關(guān)性,都是在訓(xùn)練過程中得到的,包含在模型權(quán)重矩陣之中。
通過訓(xùn)練過程,得到了 Wq、Wk、Wv 權(quán)重矩陣。
這樣,在模型運(yùn)行過程中,當(dāng)輸入一組新的 word 序列時(shí),通過這些權(quán)重矩陣對(duì)輸入進(jìn)行相似性、相關(guān)性計(jì)算,最后就得到了最接近 V(訓(xùn)練得到的) 的一個(gè)輸出序列。
(3)計(jì)算attention score — 算出關(guān)系
總結(jié)一下,到目前為止,對(duì)于某條輸入序列X,我們有【32】:
現(xiàn)在,我們做兩件事:
- 利用Q和K,計(jì)算出attention score矩陣。
- 利用V和attention score矩陣,計(jì)算出Attention層最終的輸出結(jié)果矩陣。
記最終的輸出結(jié)果為 Attention(Q,K,V),則有:
(4)輸出 — 使用關(guān)系,加權(quán)輸出
在softmax之后,attention score矩陣的每一行表示一個(gè)token,每一列表示該token和對(duì)應(yīng)位置token的α值,因?yàn)檫M(jìn)行了softmax,每一行的α值相加等于1。
之所以進(jìn)行scaling out(大規(guī)模的預(yù)訓(xùn)練),是為了使得在softmax的過程中,掌握更多更準(zhǔn)確的關(guān)系,梯度下降得更加穩(wěn)定,避免因?yàn)樘荻冗^小而造成模型參數(shù)更新的停滯。
4 ResNet(殘差網(wǎng)絡(luò))和 Batch Norm & Layer Norm(批量標(biāo)準(zhǔn)化/層標(biāo)準(zhǔn)化)
用于穩(wěn)定和加速訓(xùn)練。自注意力機(jī)制層上方還包括一個(gè) Add & Norm 層,Add 表示殘差連接 (Residual Connection) 用于防止網(wǎng)絡(luò)退化(這也是RNN的頑疾),而Norm 表示 Layer Normalization,用于對(duì)每一層的激活值進(jìn)行歸一化,也就是將每一層神經(jīng)元的輸入都轉(zhuǎn)成均值方差都一樣的,這樣可以加快收斂。
5 Feed Forward Network (前饋網(wǎng)絡(luò))
用于進(jìn)一步處理和變換特征表示。Transformer還使用了Feed Forward前饋網(wǎng)絡(luò),它由兩個(gè)線性變換和一個(gè)非線性激活函數(shù)(通常是ReLU)組成。輸入的詞向量經(jīng)過一個(gè)線性變換,將其映射到一個(gè)更高維度的空間。然后,通過ReLU進(jìn)行非線性變換。最后,再經(jīng)過一個(gè)線性變換,將其映射回原始的詞向量維度。通過多層前饋網(wǎng)絡(luò)的堆疊,模型可以學(xué)習(xí)到更復(fù)雜的特征表示,從而更好地捕捉輸入序列中的語義信息。
6 標(biāo)準(zhǔn)的Transfomer的組裝 — Encoder – Decoder結(jié)構(gòu)
上述的5大算法框架組成了基本的編碼器和解碼器。
- Encoder的主要任務(wù)是將輸入序列(通常是文本)轉(zhuǎn)換為一組特征表示(也稱為編碼)。這些特征表示包含了輸入序列的語義信息,供Decoder在生成輸出序列時(shí)參考。多層的編碼層堆疊在一起,每一層都處理并增強(qiáng)特征表示,用來提取、凝練(降維)特征,GPT已知是6層。
- Decoder的任務(wù)是生成輸出序列,通常是根據(jù)Encoder的輸出特征表示和前面的已生成的輸出序列生成下一個(gè)單詞或符號(hào)。相比于Encoder,解碼器多了掩碼多頭自注意力機(jī)制(Masked Multi-Head Self-Attention Mechanism):用于處理已經(jīng)生成的輸出序列,通過掩碼確保解碼器在每個(gè)位置只關(guān)注之前的位置,避免泄露未來的信息。
- 線性層和Softmax:Decoder的最終輸出通過一個(gè)線性層變換為詞匯表大小的向量,并通過Softmax函數(shù)轉(zhuǎn)換為概率分布,用于選擇下一個(gè)單詞。
其實(shí)了解了Encoder-Decoder架構(gòu)的訓(xùn)練思路和過程后,就可以發(fā)現(xiàn)這種架構(gòu)存在的幾個(gè)最大的缺點(diǎn)【33】:
- 數(shù)據(jù)預(yù)處理:Encoder-Decoder模型通常對(duì)于輸入和輸出之間的精確對(duì)齊要求非常嚴(yán)格,這也就意味著需要復(fù)雜的數(shù)據(jù)預(yù)處理過程。而且對(duì)于不同類型的輸入和輸出數(shù)據(jù),可能需要用到不同的預(yù)處理方法,比如機(jī)器翻譯中的雙語對(duì)齊;比如圖像字幕識(shí)別任務(wù)中的圖像預(yù)處理和文本預(yù)處理等等。
- 輸入數(shù)據(jù)難以獲取:Encoder-Decoder架構(gòu)通常高度依賴于輸入和輸出之間的關(guān)系,這就要求收集到的輸入和輸出數(shù)據(jù)具備精確的映射關(guān)系,增大了數(shù)據(jù)收集的難度,大大減少了符合要求的數(shù)據(jù)量。
- 訓(xùn)練時(shí)間更長(zhǎng):由于結(jié)構(gòu)的復(fù)雜性,Encoder-Decoder模型可能需要很長(zhǎng)的訓(xùn)練時(shí)間。尤其是處理長(zhǎng)序列時(shí),為了理解和編碼整個(gè)序列的上下文,為了計(jì)算序列中每個(gè)元素與其他所有元素間的關(guān)系,為了儲(chǔ)存更多的數(shù)據(jù)點(diǎn)和中間計(jì)算結(jié)果,僅在Encoder階段,就需要消耗大量的時(shí)間和內(nèi)存,增加訓(xùn)練難度。
- 模型應(yīng)用受限:僅對(duì)特定類型的任務(wù)表現(xiàn)良好,比如谷歌翻譯不能用于進(jìn)行語音識(shí)別,每涉及到一種新的功能,便需要重新訓(xùn)練一個(gè)模型,耗時(shí)耗力,很不靈活。
Encoder-Decoder架構(gòu)通常用于處理一些需要在輸入和輸出間建立精確映射的任務(wù),比如機(jī)器翻譯、文本摘要等。在這些任務(wù)中,理解輸入的精確內(nèi)容并據(jù)此生成特定的輸出是非常重要的。而基于這種架構(gòu)訓(xùn)練出來的模型,一般只能應(yīng)用于某種特定的任務(wù),比如一個(gè)專為機(jī)器翻譯訓(xùn)練的Encoder-Decoder模型可能不適合直接用于文本摘要或其他類型的任務(wù)。
而去年如雨后春筍般冒出來的各種大模型,一個(gè)重要的主打功能便是:多模態(tài)。
也就是說,對(duì)于大模型的要求是,既能文字聊天,又能語音聊天;既能生成文本,又能畫出美圖;
既能根據(jù)文字出音,又能根據(jù)文字做視頻。
這樣”既要又要”的高難度需求,顯然Encoder-Decoder架構(gòu)不再適用,Decoder-only架構(gòu)也就應(yīng)運(yùn)而出。
7 其他大模型的框架演變 — Encoder-Only & Decoder-Only結(jié)構(gòu)
下面這張圖是一個(gè)大模型的一個(gè)分布樹,縱軸代表大模型的發(fā)布年份和大模型輸入token數(shù),這個(gè)圖很有代表性,每一個(gè)分支代表不同的模型架構(gòu),今天以圖中根系標(biāo)注的三大類展開:Encoder-only、Encoder-Decoder、Decoder-only。
Encoder-only
Encoder-only是以Bert為代表的模型及其衍生優(yōu)化版本為主。
一句話總結(jié),BERT核心原理:使用多層嵌套的Transformer的編碼器來處理輸入序列,使用雙向語言模型預(yù)訓(xùn)練策略進(jìn)行掩碼預(yù)測(cè)。
Bert開始的時(shí)候只是希望能夠用這個(gè)框架能夠?qū)W習(xí)語言的語法規(guī)則,針對(duì)主要是文本分類、問答等任務(wù),所以只需要使用Transformer的編碼器能夠?qū)崿F(xiàn)文本的語義理解就可以了,不需要生成序列。
搞清楚了Bert原理,那為什么說BERT屬于Encoder-only模型?很簡(jiǎn)單,因?yàn)樗皇褂昧薚ransformer模型中的編碼器部分,而沒有使用解碼器。
在Transformer模型中,編碼器負(fù)責(zé)將輸入序列轉(zhuǎn)換為上下文感知的表示,而解碼器則負(fù)責(zé)生成輸出序列。BERT使用了編碼器。
只使用編碼器最主要的原因:BERT的預(yù)訓(xùn)練目標(biāo)是通過掩蓋部分輸入來預(yù)測(cè)其他部分,或者預(yù)測(cè)兩個(gè)句子之間的關(guān)系–已有內(nèi)容的預(yù)測(cè),不是新的輸出,這些任務(wù)并不涉及到生成輸出序列,因此不需要解碼器。
Encoder-only架構(gòu)的LLMs更擅長(zhǎng)對(duì)文本內(nèi)容進(jìn)行分析、分類,包括情感分析,命名實(shí)體識(shí)別。
Decoder-Only
現(xiàn)在最熱門就是這個(gè)架構(gòu)了,解碼器結(jié)構(gòu),當(dāng)家的應(yīng)該也是目前整個(gè)大模型領(lǐng)域的領(lǐng)頭羊:GPT。
Decoder主要是是為了預(yù)測(cè)下一個(gè)輸出的內(nèi)容/token是什么,并把之前輸出的內(nèi)容/token作為上下文學(xué)習(xí)。實(shí)際上,decoder-only模型在分析分類上也和encoder only的LLM一樣有效。
各種實(shí)驗(yàn)表明decoder-only模型更好,Google Brain 和 HuggingFace聯(lián)合發(fā)表的 What Language Model Architecture and Pretraining Objective Work Best for Zero-Shot Generalization? 曾經(jīng)在5B的參數(shù)量級(jí)下對(duì)比了兩者性能。
從技術(shù)上講,Decoder Only的LLM始于GPT,可能最初僅僅是為了簡(jiǎn)化結(jié)構(gòu)追求規(guī)模。后來發(fā)現(xiàn)Transformer的Attention層存在低秩問題,會(huì)失去表達(dá)能力,而Decoder Only結(jié)構(gòu)保留的Skip Connection和MLP能很好的對(duì)抗Attention層的低秩,效果要優(yōu)于Encoder Only。這種理論上的優(yōu)勢(shì)成為后來LLM普遍采用Decoder Only的一個(gè)重要原因。
論文最主要的一個(gè)結(jié)論是decoder-only模型在沒有任何tuning數(shù)據(jù)的情況下、zero-shot表現(xiàn)最好,而encoder-decoder則需要在一定量的標(biāo)注數(shù)據(jù)上做multitask finetuning才能激發(fā)最佳性能。而且encoder-only在大參數(shù)下還有一定的涌現(xiàn)能力。
通過體驗(yàn)多模態(tài)LLM的聊天功能、圖片生成、語音對(duì)話等,就可以發(fā)現(xiàn)Decoder-only架構(gòu)的靈活性。不僅如此,Decoder-only可以讓模型構(gòu)建和訓(xùn)練的各個(gè)步驟都顯得更加便捷:
- 靈活的輸入格式:由于Decoder-only模型本質(zhì)上是根據(jù)給定的文本串生成輸出,因此它們可以接受各種格式的輸入。包括問題和回答、提示和續(xù)寫、以及代碼和其執(zhí)行結(jié)果等。也就是說,無需特意對(duì)輸入數(shù)據(jù)集進(jìn)行”清洗”。
- 無需特定的任務(wù)架構(gòu):與Encoder-Decoder架構(gòu)不同,Decoder-only模型不需要為不同類型的任務(wù)構(gòu)建特定的encoder部分。也就是說,同一個(gè)模型可以在沒有或僅需要少量修改的情況下,處理多種任務(wù)。
- 簡(jiǎn)化的預(yù)訓(xùn)練和微調(diào)過程:在預(yù)訓(xùn)練和微調(diào)階段,沒有繁瑣的encoder過程,Decoder-only模型可以更加容易的進(jìn)入訓(xùn)練過程。此外,由于訓(xùn)練過程主要關(guān)注如何基于給定的上下文生成文本,因此既不需要用戶提供復(fù)雜的輸入輸出編碼關(guān)系,也不需要專門處理這些復(fù)雜的映射。
- 易于擴(kuò)展性:由于結(jié)構(gòu)的簡(jiǎn)單和統(tǒng)一,Decoder-only模型通常更容易擴(kuò)展到更大的模型尺寸,有助于提升模型的性能和適應(yīng)性。這也就是去年涌現(xiàn)出的眾多LLM,參數(shù)數(shù)量能夠不斷攀上新高的主要原因之一。
總而言之,在成本、泛化性、可擴(kuò)展scale out上,decoder-only模型更優(yōu)越,更容易做大模型。
但挑戰(zhàn)也依然存在:
- 大模型的可解釋性較為薄弱。由于大模型采用了深度神經(jīng)網(wǎng)絡(luò)架構(gòu),模型參數(shù)往往過億級(jí)別,因此數(shù)據(jù)在模型中的處理過程難以追蹤,也很難獲得對(duì)模型推理結(jié)果的有效解釋。
- 更大的模型帶來了更高的訓(xùn)練成本,包括高科技人才的智力支出、大數(shù)據(jù)和大算力所需的經(jīng)濟(jì)成本,此外,還有不可忽視的環(huán)境影響。
- 越來越大的模型所帶來的效用提升正在縮小。人們發(fā)現(xiàn),當(dāng)模型參數(shù)規(guī)模增長(zhǎng) 10 倍時(shí),得到的性能提升往往不到 10 個(gè)百分點(diǎn)。
- 大模型帶來了倫理方面的風(fēng)險(xiǎn)。由于大模型的訓(xùn)練需要的數(shù)據(jù)極為龐大,因此靠人工進(jìn)行收集和檢查并不現(xiàn)實(shí),一般都采用機(jī)器自動(dòng)進(jìn)行訓(xùn)練數(shù)據(jù)的收集,導(dǎo)致訓(xùn)練集中可能存在粗俗、暴力、色情等內(nèi)容。
8 Scaling Law 縮放定律
Scaling Laws簡(jiǎn)單介紹就是:隨著模型大小、數(shù)據(jù)集大小和用于訓(xùn)練的計(jì)算浮點(diǎn)數(shù)的增加,模型的性能會(huì)提高。并且為了獲得最佳性能,所有三個(gè)因素必須同時(shí)放大。當(dāng)不受其他兩個(gè)因素的制約時(shí),模型性能與每個(gè)單獨(dú)的因素都有冪律關(guān)系(短板效應(yīng))。
大模型的Scaling Law是OpenAI在2020年提出的概念【34】,具體如下:
對(duì)于Decoder-only的模型,計(jì)算量C(Flops), 模型參數(shù)量N, 數(shù)據(jù)大小D(token數(shù)),三者滿足:
C≈6ND
模型的最終性能主要與計(jì)算量C,模型參數(shù)量N和數(shù)據(jù)大小D三者相關(guān),而與模型的具體結(jié)構(gòu)(層數(shù)/深度/寬度)基本無關(guān)【35】。
LLM的訓(xùn)練、微調(diào)和落地過程-以GPT為例
GPT的三個(gè)英文字母分別代表Generative(生成式),Pre-trained(預(yù)訓(xùn)練),Transformer。
本質(zhì)上來說,大模型訓(xùn)練就是對(duì)互聯(lián)網(wǎng)數(shù)據(jù)進(jìn)行有損壓縮,需要一個(gè)巨大的GPU集群來完成。
以700億參數(shù)的Llama 2為例,就需要6000塊GPU,然后花上12天從大概10T的互聯(lián)網(wǎng)數(shù)據(jù)中得到一個(gè)大約140GB的“壓縮文件”,整個(gè)過程耗費(fèi)大約200萬美元。
GPT的原理—文字接龍游戲
GPT真正在做的事就是“文字接龍”。簡(jiǎn)單來說就是預(yù)測(cè)輸入的下一個(gè)字概率【36】。
但并不是直接選擇概率最大的文字作為輸出,而是在輸出時(shí)候還要擲骰子,也就是說答案具有隨機(jī)性 也就是為什么每次你問大模型的時(shí)候,一樣的問題會(huì)得到不一樣的輸出。
這跟我們以往做預(yù)測(cè)的時(shí)候,感覺很不一樣, 以往我們都是輸出概率最大作為結(jié)果,所以為什么要擲骰子呢?
因?yàn)橛泻芏嘞嚓P(guān)研究證明,每次輸出最大概率不一定是最好的,類似地文章《The Curious Case of Neural Text Degeneration》中有論證過, 同時(shí)這也符合我們?nèi)祟愄卣? 同一個(gè)問題,可能問同一個(gè)人多次, 答案的輸出并不是一模一樣。
ChatGPT的答案為什么不一定是對(duì)的?
如果我們理解了ChatGPT的原理之后,其實(shí)ChatGPT就是在關(guān)心文字接龍順不順暢, 而不會(huì)關(guān)心內(nèi)容的真實(shí)性。
GPT為什么可以實(shí)現(xiàn)上下文關(guān)聯(lián)?
其實(shí)還是文字接龍的游戲,在每次回答問題的時(shí)候,GPT不僅考慮當(dāng)前的輸入, 也會(huì)將歷史的對(duì)話作為輸入。
OpenAI的創(chuàng)始人之一,大神Andrej Karpthy剛在微軟Build 2023開發(fā)者大會(huì)上做了專題演講:State of GPT(GPT的現(xiàn)狀)。首次披露了GPT的訓(xùn)練過程【37】。
粗略地說,我們有四個(gè)主要階段:預(yù)訓(xùn)練、有監(jiān)督微調(diào)、獎(jiǎng)勵(lì)建模、強(qiáng)化學(xué)習(xí),依次類推。
可以粗淺的的理解為自學(xué)、人類教導(dǎo)、找到好老師、老師引導(dǎo)四個(gè)的過程。
現(xiàn)在在每個(gè)階段我們都有一個(gè)數(shù)據(jù)集來支持。我們有一個(gè)算法,我們?cè)诓煌A段的目的,將成為訓(xùn)練神經(jīng)網(wǎng)絡(luò)的目標(biāo)。然后我們有一個(gè)結(jié)果模型,然后在上圖底部有一些注釋。
Pretraining 預(yù)訓(xùn)練–自學(xué)階段
我們要開始的第一個(gè)階段是預(yù)訓(xùn)練階段。
實(shí)際上預(yù)訓(xùn)練消耗的時(shí)間占據(jù)了整個(gè)訓(xùn)練pipeline的99%。
因此,這個(gè)階段就是我們?cè)诔?jí)計(jì)算機(jī)中使用數(shù)千個(gè) GPU 以及數(shù)月的訓(xùn)練來處理互聯(lián)網(wǎng)規(guī)模數(shù)據(jù)集的地方。
其他三個(gè)階段是微調(diào)階段,更多地遵循少量 GPU 和數(shù)小時(shí)或數(shù)天的路線。
那么讓我們來看看實(shí)現(xiàn)基礎(chǔ)模型的預(yù)訓(xùn)練階段。
首先,我們要收集大量數(shù)據(jù)。這是我們稱之為數(shù)據(jù)混合的示例,該示例來自 Meta 發(fā)布的這篇論文,他們發(fā)布了這個(gè) Llama 基礎(chǔ)模型。
由上圖可以看出,大約1個(gè)T的數(shù)據(jù),作為L(zhǎng)lama基礎(chǔ)模型的訓(xùn)練集。最多的為網(wǎng)絡(luò)爬蟲數(shù)據(jù),然后是谷歌的C4數(shù)據(jù)集、數(shù)集、論文、github等等語料。
那么數(shù)據(jù)有了,如何把這些數(shù)據(jù)轉(zhuǎn)化成機(jī)器能夠看懂的語言?
所以在我們實(shí)際訓(xùn)練這些數(shù)據(jù)之前,我們需要再經(jīng)過一個(gè)預(yù)處理步驟,即tokenization。
T
okenization是文本片段與整數(shù)之間的一種無損轉(zhuǎn)換,這個(gè)階段有許多算法。通常您可以使用諸如字節(jié)編碼之類的東西,將所有的文本轉(zhuǎn)化為一個(gè)很長(zhǎng)的整數(shù)列表。
下面我用LLama為例,是Meta的一個(gè)相當(dāng)新的模型。
你可以看到,LLama的參數(shù)數(shù)量大概是650億?,F(xiàn)在,盡管與GPT3的1750億個(gè)參數(shù)相比,Llama 只有65個(gè)B參數(shù),但 LLama 是一個(gè)明顯更強(qiáng)大的模型,直觀地說,這是因?yàn)樵撃P偷挠?xùn)練時(shí)間明顯更長(zhǎng),訓(xùn)練了1.4 萬億標(biāo)記而不是3000億標(biāo)記。所以你不應(yīng)該僅僅通過模型包含的參數(shù)數(shù)量來判斷模型的能力。
這里我展示了一些粗略的超參數(shù)表,這些超參數(shù)通常用于指定Transformer神經(jīng)網(wǎng)絡(luò)。比如頭的數(shù)量,尺寸大小,層數(shù)等等。在底部,我展示了一些訓(xùn)練超參數(shù)。例如,為了訓(xùn)練 65 B 模型,Meta 使用了 2,000 個(gè) GPU,大約訓(xùn)練了 21 天,大約花費(fèi)了數(shù)百萬美元。這是您在預(yù)訓(xùn)練階段應(yīng)該記住的粗略數(shù)量級(jí)?,F(xiàn)在,當(dāng)我們實(shí)際進(jìn)行預(yù)訓(xùn)練時(shí),會(huì)發(fā)生什么?一般來說,我們將獲取標(biāo)記并將它們放入數(shù)據(jù)批次中。
我們將tokenization后的數(shù)組輸入Transformer,不可能全部一次性輸入,需要用batch思想分批導(dǎo)入。
在此批量大小是B,T是最大上下文長(zhǎng)度。
在我的這個(gè)圖里,長(zhǎng)度T只有10,實(shí)際工作里這可能是 2000、4000 等等。這些是非常長(zhǎng)的行。
批量化后,我們就需要開始訓(xùn)練了。
我們只關(guān)注一個(gè)特定的單元格,但同樣的事情會(huì)發(fā)生在這個(gè)圖中的每個(gè)單元格上。
讓我們看看綠色單元格。綠色單元會(huì)查看它之前的所有標(biāo)記,所有標(biāo)記都是黃色的,我們將把整個(gè)上下文輸入到 Transformer 神經(jīng)網(wǎng)絡(luò)中,Transformer 將嘗試預(yù)測(cè)序列中的下一個(gè)標(biāo)記,在本例中為紅色。
現(xiàn)在,在這個(gè)特定的例子中,對(duì)于這個(gè)特定的單元格,513 將是下一個(gè)標(biāo)記,因此我們可以將其用作監(jiān)督源來更新Transformer的權(quán)重。將同樣的做法應(yīng)用于并行中的每個(gè)單元格,并且不斷交換批次,并且試圖讓Transformer對(duì)序列中接下來出現(xiàn)的標(biāo)記做出正確的預(yù)測(cè)。
由上圖可以看到,預(yù)訓(xùn)練的目標(biāo)其實(shí)很簡(jiǎn)單。
就是去預(yù)測(cè)下一個(gè)詞,根據(jù)softmax概率分布,取出相應(yīng)的詞作為輸出。
這實(shí)際上來自紐約時(shí)報(bào),他們?cè)谏勘葋喩嫌?xùn)練了一個(gè)小的 GPT,這是莎士比亞的一小段,他們?cè)谏厦嬗?xùn)練了一個(gè) GPT。
一開始,在初始化時(shí),GPT 以完全隨機(jī)的權(quán)重開始,因此也將獲得完全隨機(jī)的輸出。但是,隨著時(shí)間的推移,當(dāng)訓(xùn)練 GPT 的時(shí)間越來越長(zhǎng)時(shí),我們會(huì)從模型中獲得越來越連貫和一致的樣本。
當(dāng)然,你從中抽樣的方式是預(yù)測(cè)接下來會(huì)發(fā)生什么,你從那個(gè)分布中抽樣,然后不斷將其反饋到過程中,基本上就是對(duì)大序列進(jìn)行抽樣。到最后,你會(huì)看到 Transformer 已經(jīng)學(xué)會(huì)了單詞,以及在哪里放置空格,在哪里放置逗號(hào)等等。
隨著時(shí)間的推移,模型正在做出越來越一致的預(yù)測(cè)。
然后以下這些,是在進(jìn)行模型預(yù)訓(xùn)練時(shí)會(huì)查看的圖類型。
實(shí)際上,我們?cè)谟?xùn)練時(shí)查看隨時(shí)間變化的損失函數(shù),低損失意味著我們的Transformer正在預(yù)測(cè)正確 – 為序列中正確的下一個(gè)整數(shù)提供更高的概率。
訓(xùn)練一個(gè)月后,我們將如何處理這個(gè)模型?
我們注意到的第一件事,在這個(gè)領(lǐng)域,這些模型基本上在語言建模過程中學(xué)習(xí)了非常強(qiáng)大的通用表示,并且可以非常有效地微調(diào)它們以用于您可能感興趣的任何下游任務(wù)。
Supervised Finetuning (STF)有監(jiān)督微調(diào) –人類教導(dǎo)
這時(shí)候在語言模型自學(xué)之后,需要引入人類監(jiān)督訓(xùn)練。這個(gè)階段不需要很多標(biāo)注好資料去訓(xùn)練,畢竟成本太大。
你寫了一篇關(guān)于壟斷一詞的相關(guān)性的簡(jiǎn)短介紹,或者類似的東西,然后承包商也寫下了一個(gè)理想的回應(yīng)。當(dāng)他們寫下這些回復(fù)時(shí),他們遵循大量的標(biāo)簽文檔,并且要求他們生成提供幫助、真實(shí)且無害的回答。
通過這種人類監(jiān)督訓(xùn)練,我們就可以得到一個(gè)簡(jiǎn)易版的GPT模型。
Reward Modeling 獎(jiǎng)勵(lì)建模 — 好老師模型
現(xiàn)在,我們可以從這里繼續(xù)流程,進(jìn)入 RLHF,即“從人類反饋中強(qiáng)化學(xué)習(xí)”,它包括獎(jiǎng)勵(lì)建模和強(qiáng)化學(xué)習(xí)。
為了讓簡(jiǎn)易版的GPT模型變強(qiáng),其實(shí)OpenAI參考了以前的AlphaGo模型的方式,通過海量的自我對(duì)弈優(yōu)化模型,最終超過人類。為了完成目標(biāo),人類引導(dǎo)的方式成本過高,于是乎,請(qǐng)了一個(gè)”好老師“(reward模型),這個(gè)老師不會(huì)像人類監(jiān)督那樣,直接給出答案,而是對(duì)模型輸出給一個(gè)反饋,只有好與不好,讓模型根據(jù)反饋?zhàn)詣?dòng)調(diào)整輸出,直到老師給出好的評(píng)價(jià)。
怎么找到有個(gè)能辨別 GPT 回答好壞的老師模型(即 Reward 模型)?
于是研究人員讓 GPT 對(duì)特定問題給出多個(gè)答案,由人類來對(duì)這些答案的好壞做排序(相比直接給出答案,讓人類做排序要簡(jiǎn)單得多)。基于這些評(píng)價(jià)數(shù)據(jù),研究人員訓(xùn)練了一個(gè)符合人類評(píng)價(jià)標(biāo)準(zhǔn)的老師(Reward 模型)。
Reinforcement Learning 強(qiáng)化學(xué)習(xí) — 老師引導(dǎo)
現(xiàn)在我們有了獎(jiǎng)勵(lì)模型,但我們還不能部署它。
因?yàn)樗旧碜鳛橹植皇呛苡杏?,但是它?duì)于現(xiàn)在接下來的強(qiáng)化學(xué)習(xí)階段非常有用。
有了好老師后,就可以開始像周伯通那樣,左手(GPT)右手(好老師)互搏。要實(shí)現(xiàn) AI 引導(dǎo)AI,得借助強(qiáng)化學(xué)習(xí)技術(shù);簡(jiǎn)單來說就是讓 AI 通過不斷嘗試,有則改之、無則加勉,從而逐步變強(qiáng)。
有了人類訓(xùn)練出來的好老師,通過好老師夜以繼日引導(dǎo),從而最終對(duì)齊了人類的偏好,最終實(shí)現(xiàn)了符合人類特征的回答。
這就是我們訓(xùn)練的方式——這就是 RLHF 流程。
最后,您得到了一個(gè)可以部署的模型。例如,ChatGPT 是 RLHF 模型。您可能會(huì)遇到其他一些模型,例如 Kuna 13B 等,這些都是 SFT 模型。
我們有基礎(chǔ)模型、SFT 模型和 RLHF 模型,這基本上是可用模型列表的事物狀態(tài)。
你為什么想要做 RLHF?一個(gè)不太令人興奮的答案是它的效果更好。
以上這個(gè)圖來自instructGPT論文。
這些 PPO 模型是 RLHF,根據(jù)前一段時(shí)間的這些實(shí)驗(yàn),我們看到把它們提供給人類時(shí),它們?cè)诤芏啾容^中更受歡迎。與提示為助手的基礎(chǔ)模型相比,與 SFT 模型相比,人類基本上更喜歡來自 RLHF 模型的標(biāo)記(輸出文字)。
特別是,我們注意到,例如,RLHF模型失去了一些熵,這意味著它們給出了更多的峰值結(jié)果。(更符合人類希望的回答偏好)
模型部署和應(yīng)用 Deploy and Application
模型壓縮:通過剪枝、蒸餾、量化等技術(shù)減少模型大小,便于部署。
系統(tǒng)優(yōu)化:計(jì)算機(jī)架構(gòu)上進(jìn)行推理加速等
服務(wù)部署:將訓(xùn)練好的模型部署到服務(wù)器或邊緣設(shè)備上,提供給用戶使用。
開發(fā)Agent工具:前后端,RAG、執(zhí)行工具、和產(chǎn)品邏輯等。
多模態(tài)大模型
多模態(tài)指的是多種模態(tài)的信息,包括:文本、圖像、視頻、音頻等。顧名思義,多模態(tài)研究的就是這些不同類型的數(shù)據(jù)的融合的問題。通過NLP的預(yù)訓(xùn)練模型,可以得到文本的嵌入表示;再結(jié)合圖像和視覺領(lǐng)域的預(yù)訓(xùn)練模型,可以得到圖像的嵌入表示。
那么,如何將兩者融合起來,來完成以上的各種任務(wù)呢?
很簡(jiǎn)單將圖像轉(zhuǎn)變?yōu)檎Z言描述即可,和其他語言大模型一起訓(xùn)練,本質(zhì)都是找關(guān)系,輸入輸出語義的對(duì)齊。
Diffusion 模型 –DDPM架構(gòu)
文生圖、視頻皆來源此架構(gòu),LLM提供語義指導(dǎo),Diffusion模型通過指導(dǎo)生成圖片和視頻,兩者對(duì)齊指導(dǎo)和生成圖像信息。
DDPM(Denoising Diffusion Probalistic Models)。擴(kuò)散模型的研究并不始于DDPM,但DDPM的成功對(duì)擴(kuò)散模型的發(fā)展起到至關(guān)重要的作用。后續(xù)一連串效果驚艷的文生圖模型,都是在DDPM的框架上迭代改進(jìn)而來【38】。
假設(shè)你想做一個(gè)以文生圖的模型,你的目的是給一段文字,再隨便給一張圖(比如一張?jiān)肼暎?,這個(gè)模型能幫你產(chǎn)出符合文字描述的逼真圖片,例如:
文字描述就像是一個(gè)指引(guidance),幫助模型去產(chǎn)生更符合語義信息的圖片。但是,畢竟語義學(xué)習(xí)是復(fù)雜的。我們能不能先退一步,先讓模型擁有產(chǎn)生逼真圖片的能力?
比如說,你給模型喂一堆cyberpunk風(fēng)格的圖片,讓模型學(xué)會(huì)cyberpunk風(fēng)格的分布信息,然后喂給模型一個(gè)隨機(jī)噪音,就能讓模型產(chǎn)生一張逼真的cyberpunk照片?;蛘呓o模型喂一堆人臉圖片,讓模型產(chǎn)生一張逼真的人臉。同樣,我們也能選擇給訓(xùn)練好的模型喂帶點(diǎn)信息的圖片,比如一張夾雜噪音的人臉,讓模型幫我們?nèi)ピ搿?/p>
具備了產(chǎn)出逼真圖片的能力,模型才可能在下一步中去學(xué)習(xí)語義信息(guidance),進(jìn)一步產(chǎn)生符合人類意圖的圖片。而DDPM的本質(zhì)作用,就是學(xué)習(xí)訓(xùn)練數(shù)據(jù)的分布,產(chǎn)出盡可能符合訓(xùn)練數(shù)據(jù)分布的真實(shí)圖片。所以,它也成為后續(xù)文生圖類擴(kuò)散模型框架的基石。
1 DDPM訓(xùn)練流程
理解DDPM的目的,及其對(duì)后續(xù)文生圖的模型的影響,現(xiàn)在我們可以更好來理解DDPM的訓(xùn)練過程了??傮w來說,DDPM的訓(xùn)練過程分為兩步:
- Diffusion Process (又被稱為Forward Process)
- Denoise Process(又被稱為Reverse Process)
前面說過,DDPM的目的是要去學(xué)習(xí)訓(xùn)練數(shù)據(jù)的分布,然后產(chǎn)出和訓(xùn)練數(shù)據(jù)分布相似的圖片。那怎么“迫使”模型去學(xué)習(xí)呢?
一個(gè)簡(jiǎn)單的想法是,我拿一張干凈的圖,每一步(timestep)都往上加一點(diǎn)噪音,然后在每一步里,我都讓模型去找到加噪前圖片的樣子,也就是讓模型學(xué)會(huì)去噪。
這樣訓(xùn)練完畢后,我再塞給模型一個(gè)純?cè)肼?,它不就能一步步幫我還原出原始圖片的分布了嗎?一步步加噪的過程,就被稱為Diffusion Process;一步步去噪的過程,就被稱為Denoise Process。
2 文生圖模型的一般公式
當(dāng)我們擁有了能夠產(chǎn)生逼真圖片的模型后,我們現(xiàn)在能進(jìn)一步用文字信息去引導(dǎo)它產(chǎn)生符合我們意圖的模型了。通常來說,文生圖模型遵循以下公式:
- Text Encoder:一個(gè)能對(duì)輸入文字做語義解析的Encoder,一般是一個(gè)預(yù)訓(xùn)練好的模型。在實(shí)際應(yīng)用中,CLIP模型由于在訓(xùn)練過程中采用了圖像和文字的對(duì)比學(xué)習(xí),使得學(xué)得的文字特征對(duì)圖像更加具有魯棒性,因此它的text encoder常被直接用來做文生圖模型的text encoder(比如DALLE2)
- Generation Model:輸入為文字token和圖片噪聲,輸出為一個(gè)關(guān)于圖片的壓縮產(chǎn)物(latent space)。這里通常指的就是擴(kuò)散模型,采用文字作為引導(dǎo)(guidance)的擴(kuò)散模型原理,我們將在這個(gè)系列的后文中出講解。
- Decoder:用圖片的中間產(chǎn)物作為輸入,產(chǎn)出最終的圖片。Decoder的選擇也有很多,同樣也能用一個(gè)擴(kuò)散模型作為Decoder。
但是目前的的生成模型,去噪不夠精細(xì)化(比如手無法精細(xì)到5個(gè)指頭),幻象多,生成不連續(xù),生成時(shí)間短,離真正的生成還很遠(yuǎn),但在圖片創(chuàng)意設(shè)計(jì)領(lǐng)域可以有一定的實(shí)際實(shí)現(xiàn)。
Agent
Diffusion模型的由DDPM和LLM的結(jié)合idea后,那么LLM能否和其他模型結(jié)合,能獲得更加強(qiáng)大的能力呢?
答案就是Agent,是能夠自主感知環(huán)境并采取行動(dòng)實(shí)現(xiàn)目標(biāo)的智能體,并可以通過交互提升能力,甚至與別的 agent 合作實(shí)現(xiàn)任務(wù)。目前我們所用到的AI大模型相關(guān)軟件都是Agent。
LLM 是整個(gè)系統(tǒng)的“大腦”,圍繞其語言理解能力,調(diào)用各個(gè)模型。
所以Agent的本質(zhì)還是Prompt Engineering。
Prompt,即提示詞或指令,是指向人工智能模型提供的輸入文本,用于引導(dǎo)模型生成特定的輸出。
很多人認(rèn)為人類的語言指令本來就非常模糊,定義廣泛,所以我們?cè)诮oLLM下達(dá)指令的時(shí)候,要明確分步驟和結(jié)果等可以引導(dǎo)LLM最大化輸出智能的輸入方式。這種編輯引導(dǎo)LLM的輸入過程就叫prompt engineering-提示詞工程。
但筆者認(rèn)為本質(zhì)上就是LLM的潛空間Latent space -(可以理解為多個(gè)隱藏層導(dǎo)致的無法觀察深度黑箱)的語義–LLM的輸出沒和人類的需求通過transfomer對(duì)齊。
基于LLM的Agent,將大語言模型作為核心計(jì)算引擎,實(shí)現(xiàn)感知(Perception)、規(guī)劃(Planning)、行動(dòng)(Action),形成自主閉環(huán)的學(xué)習(xí)過程。
- 感知:理解你的指令,收集信息并從中提取相關(guān)知識(shí)的能力
- 規(guī)劃:思考、拆分,總結(jié)感知到的信息,為達(dá)成目標(biāo)而做出決策的過程
- 執(zhí)行:依賴大模型執(zhí)行,調(diào)用工具API或與其他Agent交互
- 記憶:將整個(gè)過程(思維鏈條)保存起來,循環(huán)迭代
“認(rèn)識(shí)從實(shí)踐開始,經(jīng)過實(shí)踐得到了理論的認(rèn)識(shí),再回到實(shí)踐中去?!?-(實(shí)踐論)
具身智能模型
1 引言
具身智能 (embodied AI) 是人工智能、機(jī)器人學(xué)、認(rèn)知科學(xué)的交叉領(lǐng)域,主要研究如何使機(jī)器人具備類似人類的感知、規(guī)劃、決策和行為能力。具身智能可以追溯到 20 世紀(jì) 50 年代, 艾倫 · 圖靈首次提出具身智能的概念,探索如何使機(jī)器感知和理解世界, 并作出相應(yīng)的決策和行動(dòng)。隨后在 80年代對(duì)符號(hào)主義的反思中,以羅德尼 · 布魯克斯為代表的研究者逐漸認(rèn)識(shí)到, 智能不應(yīng)該只在對(duì)數(shù)據(jù)的被動(dòng)學(xué)習(xí)中得到, 而應(yīng)該通過與環(huán)境進(jìn)行主動(dòng)交互中獲取, 應(yīng)當(dāng)重點(diǎn)研究如何讓機(jī)器人主動(dòng)適應(yīng)環(huán)境【39】。
近年來,以ChatGPT為帶代表的大語言模型(large language model, LLM)技術(shù)取得了突破性的進(jìn)展,通過在大規(guī)模網(wǎng)絡(luò)對(duì)話數(shù)據(jù)中進(jìn)行學(xué)習(xí),ChatGPT能夠?qū)崿F(xiàn)包括自動(dòng)問答、文本分類、自動(dòng)文摘、機(jī)器翻譯、聊天對(duì)話等各種自然語言理解和自然語言生成任務(wù),同時(shí)具備在少樣本和零樣本場(chǎng)景下達(dá)到了傳統(tǒng)監(jiān)督學(xué)習(xí)方法的性能,并具有較強(qiáng)的泛化能力。通過先進(jìn)的思維鏈(chain-of-thought,CoT)等提示技術(shù),大語言模型的邏輯推理能力獲得了大幅提升,從而有望解決復(fù)雜具身智能場(chǎng)景中的任務(wù)分解和推理問題。
視覺基礎(chǔ)模型(visual foundation model, VFM),通過自監(jiān)督的學(xué)習(xí)目標(biāo)可以獲得強(qiáng)大的視覺編碼器,能夠解決如圖像分類、語義分割、場(chǎng)景理解等視覺感知任務(wù)。在具身智能任務(wù)中,強(qiáng)大的視覺編碼器能夠?qū)σ曈X傳感器獲得的周圍環(huán)境信息進(jìn)行分析和理解,從而幫助智能體進(jìn)行決策。
在此基礎(chǔ)上,視覺-語言模型(visual-language model, VLM)通過引入預(yù)訓(xùn)練視覺編碼器和視覺-語言模態(tài)融合模塊,使得大語言模型能夠獲取視覺輸入,同時(shí)根據(jù)語言提示進(jìn)行視覺問答。在具身智能中,引入視覺-語言模型能夠使智能體根據(jù)任務(wù)語言指令和環(huán)境的視覺觀測(cè)進(jìn)行推理和決策,從而提升智能體對(duì)環(huán)境的感知和理解能力。
多模態(tài)大模型(large multimodal model)通過引入視頻、音頻、肢體語言、面部表情和生理信號(hào)等更多模態(tài),可以分析更豐富的傳感器輸入并進(jìn)行信息融合,同時(shí)結(jié)合具身智能體中特有的機(jī)器人狀態(tài)、關(guān)節(jié)動(dòng)作等模態(tài)信息,幫助解決更復(fù)雜的具身智能任務(wù)。大模型通過充分利用大規(guī)模數(shù)據(jù)集中學(xué)習(xí)到的知識(shí),結(jié)合特定的具身智能場(chǎng)景和任務(wù)描述,為智能體提供環(huán)境感知和任務(wù)規(guī)劃的能力。
2 傳統(tǒng)機(jī)器人控制算法簡(jiǎn)介
MPC和WBC簡(jiǎn)單介紹
MPC(全稱Model Predictive Control)模型預(yù)測(cè)控制。Whole-Body Control(WBC)翻譯過來可以叫全身控制或者整體控制。
機(jī)器人的運(yùn)動(dòng)控制經(jīng)歷了感知-決策-規(guī)劃-執(zhí)行。
MPC主要的任務(wù)是預(yù)測(cè)環(huán)境變化,進(jìn)行姿態(tài)規(guī)劃,然后將姿態(tài)的信息–就是時(shí)間和空間,傳遞給WBC(輸出電機(jī)等指令),充分利用機(jī)器人的自由度同時(shí)執(zhí)行多個(gè)任務(wù)。MPC就是規(guī)劃求解器,WBC是執(zhí)行求解器,兩者技術(shù)都是基于數(shù)學(xué)的線性規(guī)劃最優(yōu)化求解。
一句話通俗易懂的解釋:MPC根據(jù)狀態(tài)轉(zhuǎn)移模型(已知當(dāng)前狀態(tài)的情況下,給定一個(gè)控制,可以準(zhǔn)確推導(dǎo)未來的狀態(tài)),推導(dǎo)出未來一段時(shí)間的狀態(tài)表達(dá)式(工程上實(shí)現(xiàn)一般用誤差表示,即未來狀態(tài)和目標(biāo)狀態(tài)的差值),求解未來一段時(shí)間的控制量,做到盡量接近目標(biāo)狀態(tài)、盡量的小的控制變化,同時(shí)滿足控制輸出的閾值范圍約束【40】。WBC則是分優(yōu)先級(jí)的多任務(wù)控制。
算法流程-案例演示
MPC一般用于車輛的控制,特別是在智能駕駛領(lǐng)域,路徑的跟蹤控制大都離不開此算法,那我們就以車輛控制來說明MPC的主要步驟:
1、建立車輛的運(yùn)動(dòng)學(xué)模型
2、模型的線性及離散化
3、預(yù)測(cè)模型推導(dǎo)(建立關(guān)于未來一段時(shí)間車輛的狀態(tài)矩陣)
4、目標(biāo)函數(shù)設(shè)計(jì)(設(shè)計(jì)未來車輛狀態(tài)好壞的評(píng)價(jià)函數(shù))
5、約束設(shè)計(jì)(速度、加速度等限制);
6、優(yōu)化求解
總的來說:以上過程就是一個(gè)高階版的線性規(guī)劃問題,只是里面優(yōu)化求解的計(jì)算過程不需要人工計(jì)算,我們只需要根據(jù)車輛的模型、約束條件、目標(biāo)等計(jì)算或設(shè)計(jì)出一些基本的矩陣,然后丟給二次規(guī)劃優(yōu)化求解器即可得到。
線性規(guī)劃最優(yōu)化求解圖文解釋
我們知道一個(gè)帶約束的數(shù)學(xué)優(yōu)化問題可以寫成如下形式:
帶約束的數(shù)學(xué)優(yōu)化問題的優(yōu)先級(jí)體現(xiàn)在約束和目標(biāo)函數(shù)的關(guān)系上,當(dāng)我們求解一個(gè)優(yōu)化問題的時(shí)候,總是會(huì)保證求解的結(jié)果是在滿足約束的前提下去最小化目標(biāo)函數(shù),因此約束本身具有更高的優(yōu)先級(jí)。
我們可以把上述方程式轉(zhuǎn)為幾何:針對(duì)X1、X2和Z的3D圖像(網(wǎng)上隨便找的圖)
圖像里的最高點(diǎn)即為在各個(gè)限制條件下的X1,X2自變量的最優(yōu)Z的解。總而言之,在最優(yōu)化線性優(yōu)化的求解器基礎(chǔ)數(shù)學(xué)模型下雖然結(jié)果很準(zhǔn)確-唯一解;但也有以下缺點(diǎn):
- 需要對(duì)限制條件要求十分嚴(yán)格(不能變)
- 可容納自變量少,否則運(yùn)算量爆炸
- 因變量基本唯一
所以在數(shù)字化和機(jī)器人領(lǐng)域,對(duì)于重復(fù)性非常強(qiáng)的工作,可以實(shí)現(xiàn)替代,但是對(duì)于開放式的環(huán)境替代極差(結(jié)果定義不一、環(huán)境條件不一切變動(dòng)大、任務(wù)變化多–術(shù)語魯棒性差)比如:機(jī)器人碼垛的物料形狀一變,就需要重新學(xué)習(xí),更別說形狀不規(guī)則、柔性的物體例如紡織品——紡織行業(yè)自動(dòng)化一直困難的原因。
而隨著,科學(xué)家們對(duì)AI的研究深入,以transfomer為主的注意力架構(gòu)重塑了深度學(xué)習(xí)網(wǎng)絡(luò),并賦予了更高的智能,Open AI大語言模型和特斯拉的完全端到端fsd神經(jīng)網(wǎng)絡(luò)驗(yàn)證了大模型的智能程度以及完全神經(jīng)網(wǎng)絡(luò)的架構(gòu)的優(yōu)越性。
由此誕生出了小腦和大腦路徑的公司,針對(duì)不同的場(chǎng)景,都有著不同的適用算法模型。
3 小腦算法
在仿真強(qiáng)化學(xué)習(xí)中,目前比較成功的方向主要集中在強(qiáng)化學(xué)習(xí)與運(yùn)動(dòng)控制上。相關(guān)研究通常是完全基于狀態(tài),或者通過模仿學(xué)習(xí)一個(gè)表征(latent space),然后再Sim2Real或者Real2Sim2Real在現(xiàn)實(shí)世界與仿真環(huán)境之間做一個(gè)對(duì)齊,強(qiáng)化學(xué)習(xí)在范圍內(nèi)搜索和探索【41】。
目前,該小腦算法可以通過幾個(gè)小時(shí)的時(shí)間內(nèi)通過幾十次演示強(qiáng)化機(jī)器人某一場(chǎng)景的柔性任務(wù),并且準(zhǔn)確率可以達(dá)到95%,落地快。
但是由于仿真環(huán)境和真實(shí)環(huán)境GAP、強(qiáng)化學(xué)習(xí)的長(zhǎng)尾問題、模仿學(xué)習(xí)的過擬合向演示收斂問題,導(dǎo)致小腦并不能擁有很好的泛化性,并對(duì)外部的抗干擾弱,而且和本體強(qiáng)耦合。適用于短程任務(wù)。
同時(shí)也隨著模仿和強(qiáng)化學(xué)習(xí)正在深度融合,稀疏獎(jiǎng)勵(lì)函數(shù)設(shè)計(jì)、人類反饋、采樣效率和S2R GAP縮小等新趨勢(shì)促進(jìn)了小腦的性能提升,且比大腦落地速度更快,商業(yè)化會(huì)在近期顯現(xiàn)。
期待小腦路徑在可執(zhí)行任務(wù)上的擴(kuò)展。
4 大腦算法
大腦為了找到最佳Scale Out算法,實(shí)現(xiàn)GPT的Zero-Shot泛化;通過使用VLM/LLM/DM等模型驅(qū)動(dòng),強(qiáng)化/模仿學(xué)習(xí)微調(diào)方案,其與模仿學(xué)習(xí)和強(qiáng)化學(xué)習(xí)的最大區(qū)別為通過大模型學(xué)習(xí)高級(jí)表征在潛空間形成輸入輸出的關(guān)系,提取和理解真實(shí)世界的高級(jí)物理信息,并推理采取行動(dòng)。
目前大腦的技術(shù)和學(xué)習(xí)范式還未收斂,我們把市場(chǎng)上的主流路徑進(jìn)行了歸納,分為3條路線。
圖:大模型驅(qū)動(dòng)的具身大腦算法【39】
Duffsion Model
擴(kuò)散模型在近期受到了廣泛關(guān)注, OpenAI 提出的 Sora 視頻生成模型被認(rèn)為是世界模擬器。與隱空間世界模型不同, Sora 可以根據(jù)語言描述在原始的圖像空間中生成多步的圖像預(yù)測(cè),組成長(zhǎng)達(dá) 60s 的內(nèi)容連貫的視頻。
在實(shí)現(xiàn)上, Sora使用編碼網(wǎng)絡(luò)將視頻和圖像表示為詞元, 隨后使用超大規(guī)模的擴(kuò)散模型在編碼中進(jìn)行加噪和去噪流程, 隨后將去噪后的詞元映射到原始的圖像空間中。Sora在具身智能任務(wù)中有著廣泛的應(yīng)用前景, 可以根據(jù)機(jī)器人任務(wù)的描述和軌跡先驗(yàn)生成智能體在后續(xù)時(shí)間步的軌跡視頻, 將生成的視頻序列用于基于模型的強(qiáng)化學(xué)習(xí)、蒙特卡洛樹搜索、MPC算法中。在Sora大規(guī)模擴(kuò)散模型提出之前, 已有多個(gè)小規(guī)模的擴(kuò)散模型用于具身智能數(shù)據(jù)生成。
擴(kuò)散模型作為一種圖像生成模型, 通過前向的噪聲擴(kuò)散過程得到高斯噪聲, 通過多步逆向的去噪過程恢復(fù)出原始圖像。在圖像生成領(lǐng)域, 擴(kuò)散模型已經(jīng)被驗(yàn)證能夠建模高維度的復(fù)雜數(shù)據(jù), 因此在具身智能任務(wù)中被用于建模高維度的決策序列。具體地, 擴(kuò)散模型可以直接作為策略規(guī)劃器 (Planner), 通過對(duì)狀態(tài) – 動(dòng)作序列 [(s0, a0), . . . ,(sT , aT )] 的整體建模, 能夠從原始噪聲還原出整條決策軌跡, 從而在執(zhí)行時(shí)作為規(guī)劃器來生成未來的軌跡。
最近的研究中,DiT 模型 (Diffusion Transformer Model)取得較大的進(jìn)展,例如清華大學(xué)的RDT模型-將Diffusion和Transfomer融合,DiT模型是RDT的核心組件,用于處理編碼后的特征向量序列,并生成生成機(jī)器人動(dòng)作軌跡。擴(kuò)散策略是一種生成式策略,它通過學(xué)習(xí)將數(shù)據(jù)逐漸轉(zhuǎn)換為噪聲,然后再?gòu)脑肼曋谢謴?fù)數(shù)據(jù)的過程來生成新的數(shù)據(jù)樣本,恢復(fù)數(shù)據(jù)由transformer的編碼器來實(shí)現(xiàn)。擴(kuò)散策略的核心任務(wù)是從噪聲中恢復(fù)數(shù)據(jù),這通常需要模型理解輸入數(shù)據(jù)(帶噪聲的數(shù)據(jù)和條件信息)的表示。Transformer編碼器非常適合這項(xiàng)任務(wù),因?yàn)樗軌虿蹲捷斎胄蛄兄胁煌恢弥g的關(guān)系,并生成有效的上下文表示【42】。
該模型在簡(jiǎn)單任務(wù)的頻率(200Hz)和準(zhǔn)確率(99%)山獲得了非常大成功。但仍在萌芽期,期待該技術(shù)路徑下更多的進(jìn)展。
VLM/LLM
目前該方式是具身大腦公司的主流技術(shù)路徑。
在大語言模型直接產(chǎn)生任務(wù)規(guī)劃時(shí)依賴模型中編碼的知識(shí)。由于大模型缺乏具身任務(wù)規(guī)劃的相關(guān)知識(shí), 且在具身任務(wù)規(guī)劃時(shí)不對(duì)大模型參數(shù)進(jìn)行調(diào)整, 大模型需要使用額外的反饋模塊來對(duì)產(chǎn)生的不合理規(guī)劃進(jìn)行迭代【39】。
現(xiàn)有研究指出, 一種更為直接的方式是使用具身智能數(shù)據(jù)對(duì)大模型原有的預(yù)訓(xùn)練參數(shù)進(jìn)行微調(diào), 使其適應(yīng)于具身智能任務(wù)場(chǎng)景。此時(shí), 可以認(rèn)為預(yù)訓(xùn)練的大語言模型/視覺語言模型將作為具身智能的基礎(chǔ)策略, 在進(jìn)行微調(diào)后得到具身大模型。
但是這種組裝式的微調(diào)具身大模型的缺點(diǎn)非常明顯,由于大模型具有較大的參數(shù)量, 在機(jī)器人任務(wù)中需要更大的計(jì)算和時(shí)間消耗,具有較低的決策頻率,頻率只能達(dá)到30-50Hz,無法達(dá)到流暢絲滑運(yùn)行。且模型本身不是自己研發(fā)的,無法進(jìn)行底層的優(yōu)化,除非大模型本身能力出眾。
原生物理世界大模型
在上述結(jié)構(gòu)的啟發(fā)下, 有部分研究采取自行設(shè)計(jì)的以Transformer為主干網(wǎng)絡(luò)結(jié)構(gòu), 直接使用機(jī)器人數(shù)據(jù)從頭開始訓(xùn)練網(wǎng)絡(luò)【39】。
在目前技術(shù)百花齊放的階段下,為了收斂至Best Model,為了更好的Scale Out,原生模型在收斂模型范式上具有獨(dú)一無二的優(yōu)勢(shì):可底層算法優(yōu)化,自定義設(shè)計(jì)學(xué)習(xí)范式和數(shù)據(jù)類型,模型優(yōu)化的潛力大。原生模型更能體現(xiàn)出團(tuán)隊(duì)的對(duì)深度學(xué)習(xí),機(jī)器人學(xué)習(xí)等領(lǐng)域的高度理解力!
斯坦福大學(xué)提出ALOHA結(jié)構(gòu)使用Transformer編碼 – 解碼網(wǎng)絡(luò)結(jié)構(gòu), 以不同方位的觀測(cè)圖像作為輸入, 通過解碼器直接輸出機(jī)械臂動(dòng)作。為了解決長(zhǎng)周期決策問題, ALOHA使用動(dòng)作分塊的概念, 一次預(yù)測(cè)多個(gè)時(shí)間步的動(dòng)作序列, 增強(qiáng)了長(zhǎng)周期任務(wù)中動(dòng)作預(yù)測(cè)的整體性。
在硬件方面, 該研究搭建了低廉的ALOHA開源雙臂機(jī)器人實(shí)驗(yàn)平臺(tái), 使人類能夠完成便捷的示教數(shù)據(jù)采集, 僅使用采集的機(jī)械臂數(shù)據(jù)進(jìn)行訓(xùn)練.。進(jìn)一步地, 斯坦福大學(xué)團(tuán)隊(duì)搭建了 Mobile ALOHA移動(dòng)平臺(tái), 通過專家示教數(shù)據(jù)的模仿學(xué)習(xí)能夠完成滑蛋蝦仁、干貝燒雞、蠔油生菜等菜品的制作, 其出色的效果獲得了廣泛關(guān)注。但成功率有待提升。
還有世界首家設(shè)計(jì)和訓(xùn)練出AI原生物理世界大模型的公司-智澄AI,在評(píng)估所有算法優(yōu)缺點(diǎn)后自研,以其獨(dú)特的技術(shù)路線、全棧技術(shù)實(shí)力和前沿深度的AI理解,在交互、場(chǎng)景泛化上獲得了優(yōu)異的模型效果。
5 筆者理解
其中目前主流的投資界將技術(shù)分為兩條路徑:一是端到端訓(xùn)練一套具身大模型;二是基于現(xiàn)有的 LLM 或 VLM 的訓(xùn)練具身分層模型。
然而這種歸納方法,在技術(shù)上并不準(zhǔn)確,因?yàn)閮烧卟⒉皇荕utually Exclusive的,兩者是緊密結(jié)合的,端到端的大模型也有分層的概念存在–直接使用開源的VLM加上MPC模型進(jìn)行訓(xùn)練等。同時(shí)也不是具身智能算法所關(guān)注的重點(diǎn)來區(qū)分的,目前學(xué)術(shù)界和商業(yè)界的所需關(guān)注的統(tǒng)一的進(jìn)程為:
在快速發(fā)展且百花齊放的觀點(diǎn)中,達(dá)到學(xué)習(xí)范式、模型和最佳訓(xùn)練數(shù)據(jù)的收斂,以此來Scale Out,獲得涌現(xiàn)能力。
技術(shù)上更進(jìn)一步,哪種模型可以快速收斂?很肯定的是,原生自研的模型擁有巨大優(yōu)勢(shì),開源模型進(jìn)行微調(diào)的公司,缺少對(duì)技術(shù)核心–模型的理解,原生模型團(tuán)隊(duì)可以隨時(shí)調(diào)整模型訓(xùn)練和結(jié)構(gòu),進(jìn)行更好的收斂。
自動(dòng)駕駛行業(yè)的借鑒
我個(gè)人認(rèn)為,自動(dòng)駕駛的商業(yè)演變和技術(shù)發(fā)展非常雷同,0-1技術(shù)階段上都經(jīng)歷了學(xué)習(xí)范式和模型的收斂(如下第一階段),完全可以借鑒自動(dòng)駕駛的發(fā)展路程來推演機(jī)器人的未來;特斯拉自動(dòng)駕駛自2016年起開始自主研發(fā),歷經(jīng)4代硬件計(jì)算平臺(tái)和12個(gè)軟件算法版本,2021年才推出fsd beta試用版本,2024年V12版本采用端到端自動(dòng)駕駛技術(shù)路線。因此技術(shù)到商業(yè)化5年比較合理。
當(dāng)然,自動(dòng)駕駛也存在完全的軟件提供商,也有車隊(duì)管理商,估值最高的仍是硬軟并重的整車商,畢竟先滿足了人開車的剛性需求,但是機(jī)器人并不是人來操作或者說日常需求的,由此純硬件的廠商重要性不如軟件商。
具身智能的模型相比于自動(dòng)駕駛也會(huì)相對(duì)困難,但是ai的產(chǎn)業(yè)鏈也比自動(dòng)駕駛時(shí)期發(fā)達(dá)多了:
- 沒有大量人示教視頻數(shù)據(jù)進(jìn)行學(xué)習(xí)——自動(dòng)駕駛會(huì)自動(dòng)采集人類開車數(shù)據(jù),且開車的人非常多
- 具身智能模型需要更深入的理解世界的能力,因?yàn)樾枰獔?zhí)行互動(dòng)各個(gè)物體–自動(dòng)駕駛操作只需要操作車一個(gè)模型
目前可以看到的是,商業(yè)和學(xué)術(shù)領(lǐng)域?qū)Υ藷崆楦邼q,幾年內(nèi)不同的觀點(diǎn)理論不斷碰撞融合,大家對(duì)于具身智能的GPT時(shí)刻的快速到來信心充足,加上Open AI和特斯拉成功在前;
雖然目前機(jī)器人使用具身智能模型的效果相較于自動(dòng)化:延遲高、頻率低、準(zhǔn)確率低;但已經(jīng)展現(xiàn)出zero-shot(零樣本展示,但是模型成功執(zhí)行)的泛化能力。
個(gè)人觀點(diǎn):目前處于0-1的階段,通過對(duì)大模型和運(yùn)動(dòng)控制領(lǐng)域的深度理解力,不斷試錯(cuò),來學(xué)習(xí)和訓(xùn)練范式的收斂才會(huì)有泛化效果不錯(cuò)的具身大模型出現(xiàn),且一定要用神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)定位導(dǎo)航等基礎(chǔ)功能,平面預(yù)測(cè)的泛化性一定會(huì)比3d弱;神經(jīng)網(wǎng)絡(luò)必須要實(shí)現(xiàn)人類的運(yùn)動(dòng)控制功能,才能達(dá)到泛化性的效果(當(dāng)然也有隱藏層,無法解釋的可能性),具體還是要看效果。
(3)AI算法的評(píng)判標(biāo)準(zhǔn)
那么我們?cè)趺慈ピu(píng)判一個(gè)模型的性能呢?
很多人以為模型算法披露就可以從數(shù)學(xué)上判斷出來,其實(shí)不然,一方面沒有哪家公司會(huì)把算法代碼披露給其他方——核心機(jī)密,另一方面,算法本身通過無數(shù)次訓(xùn)練循環(huán)的模式就是黑箱;所以無法像材料學(xué)那樣,一旦披露分子結(jié)構(gòu),基本的物理化學(xué)特性可以被推測(cè)出來。
只有模型的訓(xùn)練結(jié)果才可以證明算法的優(yōu)越性。又或者說統(tǒng)一的測(cè)試集即可,比如說一起做高考卷的得分進(jìn)行比較。
統(tǒng)一的結(jié)果:Loss Function
在機(jī)器學(xué)習(xí)領(lǐng)域,損失函數(shù)是一種用來衡量模型預(yù)測(cè)值和真實(shí)值之間差異的量度 (偏離程度)。
當(dāng)然每家的損失函數(shù)不盡相同,要保重統(tǒng)計(jì)口徑的統(tǒng)一,一般論文會(huì)附上與其他模型的對(duì)比,也要看是否進(jìn)行了全面的比較。
公開的測(cè)試集&評(píng)測(cè)網(wǎng)站
在業(yè)界,評(píng)估大模型的指標(biāo)眾多,但大模型的能力多樣化使得評(píng)價(jià)標(biāo)準(zhǔn)難以統(tǒng)一,為選擇和衡量大模型帶來了新的挑戰(zhàn)。
一般業(yè)界評(píng)測(cè)方案是基于數(shù)據(jù)集評(píng)估:
斯坦福大學(xué)在探索語言模型(LLM)全面評(píng)估的初期,便率先采用數(shù)據(jù)集作為基準(zhǔn),其選取16個(gè)核心任務(wù)幾十個(gè)數(shù)據(jù)集對(duì)常見的30個(gè)LLM進(jìn)行了評(píng)測(cè),發(fā)布了開創(chuàng)性的評(píng)測(cè)論文。此后,SuperGLUE、C-Eval及Opencompass等評(píng)估框架相繼涌現(xiàn),進(jìn)一步豐富了基于數(shù)據(jù)集的LLM評(píng)估生態(tài)【43】。
無論在什么測(cè)試基準(zhǔn)里都被當(dāng)作是一個(gè)核心的數(shù)據(jù)集,值得進(jìn)一步討論其細(xì)節(jié)。它最早是在 Measuring Massive Multitask Language Understanding 這篇 ICLR 2021 的文章中被提出。從題目也可以看到,重要的點(diǎn)在于 multitask,也即模型在非常多的任務(wù)下的表現(xiàn)如何。
具體來說他收集了涵蓋 57 個(gè)任務(wù)(也可以說是科目)的人類試題,包含例如數(shù)學(xué)、歷史、計(jì)算機(jī)科學(xué)、法律等等學(xué)科,將其組成一個(gè)測(cè)試基準(zhǔn)。可以想到,如果模型要有比較好的效果,需要同時(shí)具備世界知識(shí)(world knowledge),以及解題能力(problem solving)?,F(xiàn)在看來似乎這個(gè)想法非常自然且合理,但回頭看在當(dāng)時(shí)算是非常有前瞻性了。
這類人類試題主要有以下幾個(gè)好處:
整體來看,這種試題是測(cè)試人類智能的一個(gè)很好的載體,無論在哪個(gè)國(guó)家,試卷考試的方式來判斷一個(gè)學(xué)生的智力水平發(fā)展到了什么階段都是主要做法。所以在AGI比較火熱的時(shí)候,用來測(cè)試模型/機(jī)器智能也是十分自然。
從類型來看,不同科目的試題帶來了不同緯度的測(cè)量,正如 MMLU 強(qiáng)調(diào)的,可以測(cè)試多任務(wù)的能力,拆解來說:
語言 / 社會(huì)科學(xué)類題目,可以測(cè)量世界知識(shí)(world knowledge)——想想一個(gè)模型需要對(duì)中文語境的知識(shí)了解到什么程度才可以回答 “明朝的第二個(gè)皇帝是誰” 這種問題
數(shù)學(xué) / 自然科學(xué)類題目,可以測(cè)量推理能力(reasoning ability)——模型不僅需要理解題意,還需要根據(jù)所有信息進(jìn)行推理甚至計(jì)算再答題
當(dāng)然還有很多其他的能力,但是上面兩個(gè)世界知識(shí)及推理能力,往往是大模型擅長(zhǎng)(相較于小模型),或者說希望能夠增強(qiáng)的方面。
由于大家所訓(xùn)練的語境不同,又分為了中文和英文等公開測(cè)試:
詳細(xì)如下,大家可以隨時(shí)關(guān)注榜單變化以了解大模型公司能力的變化。
中文:SuperCLUE
網(wǎng)站如下:
https://www.cluebenchmarks.com/superclue.html
SuperCLUE著眼于綜合評(píng)價(jià)大模型的能力,使其能全面的測(cè)試大模型的效果,又能考察模型在中文上特有任務(wù)的理解和積累。
SuperCLUE從三個(gè)不同的維度評(píng)價(jià)模型的能力:基礎(chǔ)能力、專業(yè)能力和中文特性能力。
基礎(chǔ)能力: 包括了常見的有代表性的模型能力,如語義理解、對(duì)話、邏輯推理、角色扮演、代碼、生成與創(chuàng)作等10項(xiàng)能力。
專業(yè)能力: 包括了中學(xué)、大學(xué)與專業(yè)考試,涵蓋了從數(shù)學(xué)、物理、地理到社會(huì)科學(xué)等50多項(xiàng)能力。
中文特性能力: 針對(duì)有中文特點(diǎn)的任務(wù),包括了中文成語、詩(shī)歌、文學(xué)、字形等10項(xiàng)多種能力。
具有自己有評(píng)測(cè)標(biāo)準(zhǔn)和數(shù)據(jù)集。評(píng)測(cè)數(shù)據(jù)集為閉源類型并不公開,所以評(píng)測(cè)結(jié)果很難模型在上面訓(xùn)練過,大家比較認(rèn)可這個(gè)榜單。
英文:LiveBench AI
網(wǎng)站如下:
https://livebench.ai/#
2023年6月13日,AbacusAI宣布,他們聯(lián)合了AI界的超級(jí)大咖楊立昆(Yann LeCun)和英偉達(dá)團(tuán)隊(duì),推出了一個(gè)新玩意兒——LiveBench AI,號(hào)稱是“全球首個(gè)無法作弊的LLM基準(zhǔn)測(cè)試”【44】。
作弊解釋:模型公司提前使用將要測(cè)試的數(shù)據(jù)進(jìn)行微調(diào),從而刷分
為了避免大模型「作弊」,LiveBench 每月發(fā)布新問題,并根據(jù)最近發(fā)布的數(shù)據(jù)集、arXiv 論文、新聞文章和 IMDb 電影簡(jiǎn)介設(shè)計(jì)問題,以限制潛在的數(shù)據(jù)污染。每個(gè)問題都有可驗(yàn)證的、客觀的基本真實(shí)答案,這樣就可以在不使用 LLM 評(píng)審員的情況下,對(duì)難題進(jìn)行準(zhǔn)確的自動(dòng)評(píng)分。
通過定期更新的問題集和客觀的自動(dòng)化評(píng)分方法,LiveBench 提供了一個(gè)公平、準(zhǔn)確的評(píng)估平臺(tái),還同時(shí)推動(dòng)了 LLM 的持續(xù)改進(jìn)和社區(qū)參與。
LiveBench評(píng)判方法
LiveBench的任務(wù)設(shè)置堪稱全面,目前涵蓋了18個(gè)任務(wù),分布在六大類別:數(shù)學(xué)、編碼、推理、語言理解、指令執(zhí)行和數(shù)據(jù)分析。每個(gè)任務(wù)都屬于以下兩種類型之一:
- 信息源任務(wù):比如基于最近Kaggle數(shù)據(jù)集的數(shù)據(jù)分析問題,或者修復(fù)最新arXiv摘要中的拼寫錯(cuò)誤。這就像是給模型們的實(shí)時(shí)突擊測(cè)試。
- 增強(qiáng)版基準(zhǔn)任務(wù):更具挑戰(zhàn)性或更多樣化的現(xiàn)有基準(zhǔn)任務(wù)版本,比如來自Big-Bench Hard、IFEval、bAbI或AMPS的任務(wù)。這些任務(wù)就像是高級(jí)別的期末考試,難度升級(jí)!
具體類別和任務(wù)如下:
- 數(shù)學(xué):包括過去12個(gè)月的高中數(shù)學(xué)競(jìng)賽問題(如AMC12、AIME、USAMO、IMO、SMC)以及更難版本的AMP問題??纯催@些問題,真是讓人懷疑是不是從數(shù)學(xué)天才的夢(mèng)境里偷來的!
- 編碼:包括通過LiveCodeBench從Leetcode和AtCoder生成的代碼問題,以及一個(gè)新穎的代碼完成任務(wù)。這簡(jiǎn)直是程序員版的高考。
- 推理:涵蓋了Big-Bench Hard中的Web of Lies的更難版本、bAbI中的PathFinding的更難版本,以及Zebra Puzzles。感覺像是推理小說中的謎題在向你招手。
- 語言理解:包含三個(gè)任務(wù):Connection單詞謎題、拼寫修正任務(wù)和電影梗概重組任務(wù),均來自IMDb和Wikipedia上的最新電影。這些任務(wù)就像是語言學(xué)家的午夜狂歡。
- 指令執(zhí)行:包括四個(gè)任務(wù),要求釋義、簡(jiǎn)化、總結(jié)或根據(jù)《衛(wèi)報(bào)》的最新新聞文章編寫故事,并且需遵循一到多個(gè)指令或在響應(yīng)中加入特定元素。真是給AI模型們上了一堂指令遵循的高強(qiáng)度訓(xùn)練課。
- 數(shù)據(jù)分析:包括使用Kaggle和Socrata最新數(shù)據(jù)集的三個(gè)任務(wù):表格轉(zhuǎn)換(在JSON、JSONL、Markdown、CSV、TSV和HTML之間)、預(yù)測(cè)哪些列可以用來連接兩個(gè)表格,以及預(yù)測(cè)數(shù)據(jù)列的正確類型注釋。簡(jiǎn)直是數(shù)據(jù)科學(xué)家的最愛!
通過這種多維度的綜合方法,LiveBench能夠有效評(píng)估大型語言模型在不同任務(wù)中的表現(xiàn),確保評(píng)估結(jié)果的公平性和可靠性。
目前國(guó)內(nèi)公司階躍星辰和阿里的模型分別綜合排名第5和13名。
同時(shí)若是在離數(shù)學(xué)模型中獲得最好成績(jī),那我們稱該模型為SOTA,SOTA全稱是State of the Art,是指在特定任務(wù)中目前表現(xiàn)最好的方法或模型。
(4)AI模型的趨勢(shì)
符號(hào)主義到聯(lián)結(jié)主義
我們能看到三種范式在成本、自學(xué)能力和應(yīng)用下的場(chǎng)景不同。筆者相信每一種算法在成本、技術(shù)等考慮下都有其適用的場(chǎng)景。很顯然,用大模型推理去做傳統(tǒng)數(shù)字化、重復(fù)性非常高的標(biāo)準(zhǔn)場(chǎng)景例如開發(fā)票、結(jié)賬等,是非常不實(shí)用的-成本高,準(zhǔn)確率遠(yuǎn)遠(yuǎn)不如符號(hào)主義的Rule-Base。但是大模型可以指導(dǎo)規(guī)則的變化,重寫流程。
再例如,目前ViT(transformer的視覺識(shí)別)的識(shí)別圖片的泛化性強(qiáng)但準(zhǔn)確率還是不如傳統(tǒng)的CNN。不同的算法總有自己的商業(yè)和技術(shù)定位。
聯(lián)結(jié)主義中,從Transfomer中,我們能明顯看到明顯的趨勢(shì)就是一切都是為了更好的Scale Out:
- 架構(gòu)更加簡(jiǎn)潔:decoder-only單一架構(gòu),輸入后即輸出,在輸出中理解。
- 更精準(zhǔn)的壓縮和還原:通過注意力機(jī)制,實(shí)現(xiàn)對(duì)大規(guī)模數(shù)據(jù)的特征提取,極限壓縮進(jìn)行理解,并還原。
- 可兼容的訓(xùn)練數(shù)據(jù)最大化:圖片、視頻和語言等等,大規(guī)模輸入,統(tǒng)一化訓(xùn)練
目前大語言模型的趨勢(shì)
01 技術(shù)上
傳統(tǒng)Scaling Law正在失效?
近期,圍繞Scaling Law的討論不絕于耳。
起因是,The information在一篇文章指出,OpenAI下一代旗艦?zāi)P蚈rion(或稱GPT-5)相較于現(xiàn)有模型,能力提升“有限”(代碼能力甚至不如現(xiàn)有模型),遠(yuǎn)不如GPT-3到GPT-4的躍升,而且Orion在數(shù)據(jù)中心的運(yùn)行成本更高。為此,OpenAI不得不連夜轉(zhuǎn)變策略【45】;并且在12月份的產(chǎn)品發(fā)布會(huì)中,也只發(fā)布了o3,GPT5一點(diǎn)消息后沒有披露。
如果其所言非虛,就不會(huì)只有OpenAI一家被困擾。
果不其然,Google也“出事”了。其下一代Gemini模型原本應(yīng)該是一次重大升級(jí),但有員工透露:近期在大幅增加資源投入后,模型性能未達(dá)到領(lǐng)導(dǎo)層預(yù)期,團(tuán)隊(duì)連夜調(diào)整策略。
與此同時(shí),Anthropic被曝已暫停推進(jìn)Opus 3.5的工作,官網(wǎng)還撤下了“即將推出”字樣。
“三巨頭”接連碰壁,讓人聯(lián)想到:Scaling Law可能失效了?
正方:Scaling Law神話終結(jié)
- Ilya Sutskever:擴(kuò)展訓(xùn)練的結(jié)果,已經(jīng)趨于平穩(wěn)。
- Arvind Narayanan & Sayash Kapoor:即使有效,也數(shù)據(jù)不足;合成數(shù)據(jù)并不有效。
反方:Scaling Law沒有墻
- OpenAI CEO Sam Altman:there is no wall。
- 英偉達(dá)黃仁勛:Scaling Law還會(huì)繼續(xù)。
- 微軟AI主管Mustafa Suleyman:不會(huì)有任何放緩。
- 微軟CEO Satya Nadella:是定律,并且一直有效。
- 前谷歌CEO Eric Schmidt:沒有證據(jù)顯示。
無論各位如何“挽尊”,都掩蓋不了大模型“減速”的事實(shí)——感受不到當(dāng)初的驚艷。
退一萬步,正如OpenAI研究人員Steven Heidel 所言,就算現(xiàn)在LLM 停滯了,在當(dāng)今模型的基礎(chǔ)上,還有至少十年的產(chǎn)品等著你去開發(fā)。
Self-Play RL(自我強(qiáng)化學(xué)習(xí))- 后訓(xùn)練是新Scaling Law?
隨著9月份 OpenAI o1 模型的發(fā)布,LLM 正式進(jìn)入self-play RL技術(shù)階段。
OpenAI 不是唯一重視 RL 和 Self-Play 的公司,在 o1 之前,Anthropic Claude 3.5 Sonnet 就被視為一個(gè)標(biāo)志性里程碑,Claude 3.5 Sonnet 代碼能力顯著提升的背后其實(shí)是 RL 在起作用;Google 也已經(jīng)圍繞 LLM 做 reward model 展開了多個(gè)項(xiàng)目的研究;前 OpenAI 的核心人物 Ilya 創(chuàng)立的新項(xiàng)目 SSI 也和 RL 相關(guān)。o1 的發(fā)布勢(shì)必會(huì)加速新范式共識(shí)的形成,將 RL從頭部 AI Labs 的嘗試向全行業(yè)擴(kuò)散。
2018 年,Lex Fridman 邀請(qǐng) Ilya 來 MIT 客座講一節(jié)課,Ilya 選擇的主題是 RL 和 self-play,因?yàn)樗J(rèn)為這是通往 AGI 的路上最關(guān)鍵的方法之一。Ilya 在講座中用一句話概括了強(qiáng)化學(xué)習(xí):讓 AI 用隨機(jī)路徑去嘗試一個(gè)新的任務(wù),如果效果超出預(yù)期,就更新神經(jīng)網(wǎng)絡(luò)的權(quán)重讓 AI 記得多使用成功的實(shí)踐,然后開始下一次嘗試。
強(qiáng)化學(xué)習(xí)的核心在于”探索”(Explore)和”利用”(Exploit)之間的權(quán)衡。LLM 在”利用”現(xiàn)有知識(shí)上做到了現(xiàn)階段的極致,而在”探索”新知識(shí)方面還有很大潛力,RL 的引入就是為了讓 LLM 能通過探索進(jìn)一步提升推理能力。
RL 在 LLM 中應(yīng)用的思路本質(zhì)是用 inference time 換 training time,來解決模型 scale up 暫時(shí)邊際收益遞減的現(xiàn)狀。
Self-Play + MCTS:高質(zhì)量博弈數(shù)據(jù)提升 reasoning 能力
推理成本大幅上升:MCTS搜索加入 LLM inference
LLM 直接生成是可以類比系統(tǒng) 1 的慢思考。而 RL 就為 LLM 帶來了系統(tǒng) 2 慢思考。
引入了 MCTS 之后,LLM inference 會(huì)變得更慢、更貴、更智能。因?yàn)槊恳淮位卮饐栴}時(shí)都會(huì)推演很多種可能的思考路徑,并自行評(píng)估哪一個(gè)能獲得最高的 reward,然后再將最終的生成結(jié)果輸出給用戶。理想中越難的問題需要分配更多的算力和時(shí)間:簡(jiǎn)單問題 1s 直接輸出答案,復(fù)雜問題可能需要 10min 甚至 10h 來思考最佳的解決方式。
MCTS 實(shí)際推理中,可能是和之前我們預(yù)測(cè)成本的范式類似:把任務(wù)拆解成 5 步推理,每一步嘗試 k 次模擬,搜索一整個(gè)決策樹中的最佳方案。Alphago 下圍棋時(shí)也是這么在推理時(shí)深度推演之后的下棋決策的,只是應(yīng)用到 LLM 上對(duì)算力的要求更高了,需要更多智能剪枝等優(yōu)化方式。
因此這一部分很難定量的計(jì)算其實(shí)際對(duì)推理需求帶來了多大數(shù)量級(jí)的提升:理論上 MCTS 推演的策略集越全面一定是效果越好的,但是推理算力、用戶體驗(yàn)的角度來說一定需要 LLM 廠商去做嚴(yán)格的資源約束,來達(dá)到性能和成本之間的平衡。
很明顯看到的,最近幾個(gè)月,o1的推出整體效果并不是很驚艷,筆者觀點(diǎn):一個(gè)學(xué)習(xí)慢的人,再怎么探索世界,學(xué)習(xí)效果也是緩慢的,效率低下。
02 商業(yè)上
未來商業(yè)的情況仍然取決于Scaling Law是否繼續(xù)有效,雖然很多利益相關(guān)者都在說并未失效,但是如果后續(xù)成本太高或者資源無法滿足,也是一種失效。
如果Scaling Law繼續(xù)有效
在數(shù)據(jù)滿足的前提下,那么繼續(xù)建造萬卡集群,將模型往T級(jí)別參數(shù)量走,大模型公司繼續(xù)融資狂歡。
無論Scaling Law失效與否
大家會(huì)更加關(guān)注大模型如何落地:應(yīng)用和成本!
基于大模型的應(yīng)用落地(軟硬件、to b to c)將迎來百花齊放,特別關(guān)注ARR、月活等關(guān)鍵數(shù)據(jù)。
由AI Infra優(yōu)化大模型推理成本直線下降。
大模型將會(huì)更注重性價(jià)比,模型的參數(shù)量會(huì)變小的同時(shí),效果會(huì)有一定的提升。
作者|楊儒、劉英航、謝晨星、王嘉攀
本報(bào)告由勢(shì)乘資本和光錐智能聯(lián)合發(fā)布
本文由人人都是產(chǎn)品經(jīng)理作者【光錐智能】,微信公眾號(hào):【光錐智能】,原創(chuàng)/授權(quán) 發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載。
題圖來自Unsplash,基于 CC0 協(xié)議。
- 目前還沒評(píng)論,等你發(fā)揮!