為什么預(yù)訓(xùn)練大模型要使用無(wú)監(jiān)督學(xué)習(xí)的方式? 原創(chuàng)
說(shuō)到預(yù)訓(xùn)練大模型,首先就要先了解一下pre-training(預(yù)訓(xùn)練) 和 fine-tuning(微調(diào))。
什么是預(yù)訓(xùn)練?
比如說(shuō)你想做一個(gè)圖像識(shí)別的大模型,這時(shí)你需要使用某種神經(jīng)網(wǎng)絡(luò)架構(gòu)(比如Transformer)來(lái)設(shè)計(jì)一個(gè)神經(jīng)網(wǎng)絡(luò),然后通過(guò)某種初始化方法對(duì)神經(jīng)網(wǎng)絡(luò)參數(shù)進(jìn)行初始化。
然后,你就可以使用大量的訓(xùn)練數(shù)據(jù)對(duì)模型進(jìn)行訓(xùn)練,也就是不斷的調(diào)整其參數(shù);直到損失差不斷的降低,然后達(dá)到一個(gè)合適的值;這就是一個(gè)完整的訓(xùn)練過(guò)程,而這個(gè)訓(xùn)練完成的模型就叫做預(yù)訓(xùn)練模型。
預(yù)訓(xùn)練一般使用無(wú)監(jiān)督學(xué)習(xí)。
那什么是微調(diào)?
所謂的微調(diào)其實(shí)和預(yù)訓(xùn)練差不多,只不過(guò)預(yù)訓(xùn)練是一個(gè)從未訓(xùn)練過(guò)的模型,其參數(shù)值都是隨機(jī)的,而微調(diào)是在預(yù)訓(xùn)練的基礎(chǔ)之上對(duì)部分參數(shù)進(jìn)行調(diào)整。
這就類(lèi)似于二八定律,你想讓大模型統(tǒng)計(jì)一下社會(huì)的財(cái)富分配,然后使用沒(méi)經(jīng)過(guò)預(yù)訓(xùn)練的模型,然后經(jīng)過(guò)大量的數(shù)據(jù)進(jìn)行預(yù)訓(xùn)練之后發(fā)現(xiàn),社會(huì)的財(cái)富分配基本符合二八原則,也就是說(shuō)百分之八十的財(cái)富在百分之二十的人手上;而微調(diào)就是,在微調(diào)之前,別人就告訴你基本上屬于二八定律,你只需要在這附近統(tǒng)計(jì)一下即可。
微調(diào)一般使用監(jiān)督學(xué)習(xí)。
為什么需要預(yù)訓(xùn)練和微調(diào)?
一般情況下,很少有人會(huì)從0開(kāi)始設(shè)計(jì)和訓(xùn)練一個(gè)模型,原因就是技術(shù)難度大,算力要求高,而且需要大量的訓(xùn)練數(shù)據(jù)集,而這些對(duì)絕大部分人來(lái)說(shuō)都是一個(gè)無(wú)法跨越的坎;其次,從0開(kāi)始設(shè)計(jì)和訓(xùn)練一個(gè)模型屬于嚴(yán)重的資源浪費(fèi),明明已經(jīng)有現(xiàn)存的模型可以使用,為什么還要浪費(fèi)資源去重新做一個(gè)差不多的。
所以,一般做大模型研究的組織或企業(yè)就會(huì)開(kāi)源一部分已經(jīng)預(yù)訓(xùn)練過(guò)的模型,這樣其他人就可以基于這個(gè)模型做二次訓(xùn)練或微調(diào),這樣就可以大量節(jié)約技術(shù),算力和時(shí)間成本。
還有一個(gè)原因就是,對(duì)大模型訓(xùn)練來(lái)說(shuō),必須要有足夠的訓(xùn)練數(shù)據(jù)做支撐,否則就很容易形成過(guò)擬合的現(xiàn)象,而避免這種現(xiàn)象唯一的解決辦法就是增加數(shù)據(jù)量。
為什么預(yù)訓(xùn)練要使用無(wú)監(jiān)督學(xué)習(xí)呢?
在上面的內(nèi)容中介紹了一些關(guān)于預(yù)訓(xùn)練的背景,但還有一點(diǎn)沒(méi)有完全說(shuō)清楚,預(yù)訓(xùn)練還有一個(gè)原因就是,讓模型在接觸特定任務(wù)數(shù)據(jù)之前,先通過(guò)學(xué)習(xí)大量通用數(shù)據(jù)來(lái)捕獲更多廣泛有用的特征,從而提升模型在目標(biāo)任務(wù)上的表現(xiàn)和泛化能力。
預(yù)訓(xùn)練技術(shù)通過(guò)從大規(guī)模未標(biāo)記數(shù)據(jù)中學(xué)習(xí)通用特征和先驗(yàn)知識(shí),減少對(duì)標(biāo)記數(shù)據(jù)的依賴,加速并優(yōu)化在有限數(shù)據(jù)集上的模型訓(xùn)練。
模型在訓(xùn)練過(guò)程中容易產(chǎn)生欠擬合和過(guò)擬合的現(xiàn)象,欠擬合就是模型訓(xùn)練之后的表現(xiàn)能力很差,說(shuō)白了就類(lèi)似于啥東西都懂,但啥玩意都說(shuō)不明白;而過(guò)擬合就是,對(duì)某個(gè)東西太擅長(zhǎng),而其它什么玩意都不會(huì)。
比如,欠擬合就是有眼睛,鼻子,并且有四肢的就是人,但事實(shí)上貓狗等很多動(dòng)物都具備這些特征。而過(guò)擬合就是,有眼睛,鼻子和四肢,并且皮膚必須是黃色的才是人;但其實(shí)人類(lèi)還有黑色和白色人種,這就是過(guò)擬合。
所以說(shuō)預(yù)訓(xùn)練為什么要使用無(wú)監(jiān)督學(xué)習(xí)?
總結(jié)就兩點(diǎn),一是因?yàn)閿?shù)據(jù)的稀缺性,訓(xùn)練出一個(gè)專(zhuān)業(yè)領(lǐng)域的大模型需要大量的數(shù)據(jù),特別是標(biāo)注數(shù)據(jù),但這些數(shù)據(jù)的獲取困難重重;而預(yù)訓(xùn)練能夠讓模型從大量未標(biāo)記的數(shù)據(jù)中學(xué)習(xí)到大量特征,從而減少對(duì)標(biāo)記數(shù)據(jù)的依賴,這樣就可以在有限的數(shù)據(jù)集上訓(xùn)練出良好的模型。
二是因?yàn)橄闰?yàn)知識(shí)的問(wèn)題,有些公司在做模型時(shí),會(huì)自己設(shè)計(jì)和訓(xùn)練模型;但事實(shí)上很多時(shí)候模型在具備一定的其它知識(shí)的情況下,會(huì)表現(xiàn)的更好。
比如,我們九年制義務(wù)教育讓我們每個(gè)人從小學(xué)就開(kāi)始學(xué)習(xí)語(yǔ)數(shù)外,物化生等學(xué)科;這玩意就類(lèi)似于預(yù)訓(xùn)練,雖然你學(xué)了這些東西并不一定有用;但由于學(xué)科之間的關(guān)聯(lián)性,你有了其它科目的基礎(chǔ)再去學(xué)一些科目就會(huì)變得更容易。
比如說(shuō),你有語(yǔ)文和外語(yǔ)的基礎(chǔ),你才能通暢的閱讀其它學(xué)科的文獻(xiàn)資料;你有數(shù)學(xué)基礎(chǔ)才能更好的去學(xué)習(xí)物理化學(xué)和生物,這就是先驗(yàn)知識(shí)的問(wèn)題。
而如果你上來(lái)就使用監(jiān)督學(xué)習(xí)的方式,通過(guò)大量的標(biāo)記數(shù)據(jù)進(jìn)行訓(xùn)練;那么你就相當(dāng)于一開(kāi)始就扎進(jìn)了物理,化學(xué),數(shù)學(xué)等其中的某一個(gè)科目,其它的科目一竅不通。
雖然你拼命學(xué)習(xí)也可以學(xué)習(xí)到很多物理,化學(xué)和數(shù)學(xué)的知識(shí);但沒(méi)有數(shù)學(xué)的支撐,你永遠(yuǎn)也學(xué)不好物理和化學(xué);而且深入到其中某一個(gè)領(lǐng)域,而對(duì)其它領(lǐng)域完全不了解,那么也會(huì)嚴(yán)重限制你的眼光和視角。
所以說(shuō)一般情況下,一個(gè)大模型的出現(xiàn)需要經(jīng)過(guò)模型的設(shè)計(jì),架構(gòu)的選擇,無(wú)監(jiān)督學(xué)習(xí)的預(yù)訓(xùn)練和監(jiān)督學(xué)習(xí)的強(qiáng)化訓(xùn)練,才能讓大模型表現(xiàn)更好,而不至于過(guò)擬合或欠擬合。
本文轉(zhuǎn)載自公眾號(hào)AI探索時(shí)代 作者:DFires
原文鏈接:??https://mp.weixin.qq.com/s/SR4LwzFlg6xREhdfzNkQsw??
