在為您的組織選擇最佳大型語(yǔ)言模型 (LLM)時(shí),需要考慮許多因素。其中一個(gè)重要方面是模型的參數(shù)數(shù)量;通常,較大的模型往往表現(xiàn)更好。您還可以查看性能基準(zhǔn)或推理測(cè)試,它們提供性能的量化指標(biāo),并允許您比較不同的 LLM。
但是,在選擇了似乎適合您需求的模型后,您可以通過(guò)調(diào)整超參數(shù)進(jìn)一步定制它。這些設(shè)置可以顯著影響 LLM 是否滿足或超出您的期望。
什么是 LLM 超參數(shù)?為什么它們很重要?
超參數(shù)是影響LLM 訓(xùn)練過(guò)程的設(shè)置。與在訓(xùn)練期間調(diào)整的模型參數(shù)(或權(quán)重)不同,超參數(shù)在訓(xùn)練開(kāi)始前設(shè)置并保持不變。它們控制模型如何從訓(xùn)練數(shù)據(jù)中學(xué)習(xí),但不會(huì)成為最終模型的一部分。因此,您無(wú)法確定訓(xùn)練完成后使用了哪些超參數(shù)。
超參數(shù)至關(guān)重要,因?yàn)樗鼈冊(cè)试S您調(diào)整模型的行為以更好地滿足您的特定需求。您無(wú)需從頭開(kāi)始創(chuàng)建自定義模型,而是可以通過(guò)超參數(shù)調(diào)整對(duì)現(xiàn)有模型進(jìn)行微調(diào),以實(shí)現(xiàn)所需的性能。
探索不同的 LLM 超參數(shù)
1. 模型大小
LLM 的大小(指其神經(jīng)網(wǎng)絡(luò)中的層數(shù))是一個(gè)主要的超參數(shù)。較大的模型通常表現(xiàn)更好,可以處理更復(fù)雜的任務(wù),因?yàn)樗鼈兙哂懈嗟膶雍蜋?quán)重,使它們能夠?qū)W習(xí) token 之間的復(fù)雜關(guān)系。但是,較大的模型訓(xùn)練和運(yùn)行成本更高,需要更多數(shù)據(jù),并且速度可能更慢。它們也更容易過(guò)度擬合,即模型在訓(xùn)練數(shù)據(jù)上表現(xiàn)良好,但在新數(shù)據(jù)上表現(xiàn)不佳。
較小的模型雖然功能較弱,但可以更有效地完成簡(jiǎn)單的任務(wù),并且更容易在功能較弱的硬件上部署。它們需要的訓(xùn)練資源較少,并且可以通過(guò)量化和微調(diào)等技術(shù)進(jìn)一步優(yōu)化。
2. 周期數(shù)
一個(gè) epoch 是完整遍歷訓(xùn)練數(shù)據(jù)集的一次訓(xùn)練。epoch 的數(shù)量決定了模型處理整個(gè)數(shù)據(jù)集的頻率。更多的 epoch 可以提高模型的理解能力,但如果使用的 epoch 太多,則會(huì)導(dǎo)致過(guò)度擬合。相反,epoch 太少會(huì)導(dǎo)致欠擬合,即模型沒(méi)有從數(shù)據(jù)中學(xué)到足夠的知識(shí)。
3.學(xué)習(xí)率
學(xué)習(xí)率控制模型在訓(xùn)練過(guò)程中響應(yīng)錯(cuò)誤的更新速度。較高的學(xué)習(xí)率會(huì)加快訓(xùn)練速度,但可能會(huì)導(dǎo)致不穩(wěn)定和過(guò)度擬合。較低的學(xué)習(xí)率會(huì)增加穩(wěn)定性并改善泛化能力,但會(huì)使訓(xùn)練速度變慢。通常,使用基于時(shí)間的衰減、步長(zhǎng)衰減或指數(shù)衰減等計(jì)劃隨著訓(xùn)練的進(jìn)展調(diào)整學(xué)習(xí)率是有益的。
4. 批次大小
批次大小是模型一次處理的訓(xùn)練示例數(shù)量。較大的批次大小可加快訓(xùn)練速度,但需要更多內(nèi)存。較小的批次對(duì)硬件的要求較低,但可以提高模型從每個(gè)數(shù)據(jù)點(diǎn)學(xué)習(xí)的徹底程度。
5. 最大輸出代幣
此超參數(shù)也稱為最大序列長(zhǎng)度,用于設(shè)置模型在其輸出中可以生成的最大標(biāo)記數(shù)。標(biāo)記越多,響應(yīng)越詳細(xì)、越連貫,但計(jì)算和內(nèi)存需求也會(huì)增加。標(biāo)記越少,這些需求就會(huì)減少,但可能會(huì)導(dǎo)致響應(yīng)不完整或連貫性降低。
6. 解碼類型
解碼是從模型的內(nèi)部表示生成模型輸出的過(guò)程。主要有兩種類型:貪婪解碼,即在每個(gè)步驟中選擇最可能的標(biāo)記;抽樣解碼,即通過(guò)從可能的標(biāo)記子集中進(jìn)行選擇來(lái)引入隨機(jī)性。抽樣可以創(chuàng)建更加多樣化和富有創(chuàng)意的輸出,但會(huì)增加無(wú)意義響應(yīng)的風(fēng)險(xiǎn)。
7. Top-k 和 Top-p 采樣
使用抽樣解碼時(shí),top-k 和 top-p 是控制如何選擇 token 的附加超參數(shù)。Top-k 抽樣將模型限制為從概率最高的前 k 個(gè) token 中進(jìn)行選擇。例如,如果將 top-k 設(shè)置為 5,則模型將從 5 個(gè)最可能的 token 中進(jìn)行選擇。這有助于確??勺冃?,同時(shí)保持對(duì)可能選項(xiàng)的關(guān)注。
Top-p 采樣(或核心采樣)根據(jù)累積概率動(dòng)態(tài)調(diào)整選擇池,確保所選標(biāo)記構(gòu)成指定的概率質(zhì)量(例如 90%)。此方法允許模型根據(jù)其概率考慮不同數(shù)量的標(biāo)記,從而平衡隨機(jī)性和連貫性。
當(dāng)然!讓我們來(lái)思考一下這句話,“她決定以…開(kāi)始她的一天”。
現(xiàn)在,讓我們看一下結(jié)束這個(gè)句子的五種可能的方式,每種方式都以不同的標(biāo)記開(kāi)頭:
讀書(shū)
慢跑
做早餐
冥想15分鐘
在她的日記里寫(xiě)道
我們將為每個(gè)初始標(biāo)記分配一個(gè)概率,如下所示:
Top-k 采樣
如果我們將 top-k 抽樣值設(shè)置為 2,則抽樣子集中只會(huì)考慮“reading”和“going”。將其設(shè)置為 5 將包含所有選項(xiàng)。
Top-p 抽樣
對(duì)于 top-p 抽樣,如果該值設(shè)置為 0.6,則會(huì)包括“閱讀”和“去”,因?yàn)樗鼈兊慕M合概率為 0.52(0.28 + 0.24)。包括“烹飪”將使累積概率為 0.72(0.28 + 0.24 + 0.20),這超過(guò)了閾值,因此排除了“烹飪”、“冥想”和“寫(xiě)作”。
如果兩個(gè)采樣值都設(shè)置了,則top-k優(yōu)先,確保所有超出設(shè)定閾值的概率都設(shè)置為0。
8.溫度
溫度是一個(gè)影響可能輸出 token 的范圍和模型“創(chuàng)造力”的參數(shù),類似于 top-k 和 top-p 采樣值。它用 0.0 到 2.0 之間的十進(jìn)制數(shù)表示。溫度為 0.0 會(huì)導(dǎo)致貪婪解碼,其中始終選擇概率最高的 token。相反,溫度為 2.0 可以實(shí)現(xiàn)最大的創(chuàng)造力。
低溫會(huì)放大概率之間的差異,使高概率的標(biāo)記更有可能被選中,從而產(chǎn)生更可預(yù)測(cè)和可靠的響應(yīng)。另一方面,高溫會(huì)導(dǎo)致標(biāo)記概率收斂,使可能性較小的標(biāo)記有更好的機(jī)會(huì)被選中,從而增加隨機(jī)性和創(chuàng)造性。
9. 停止序列
停止序列提供了一種控制 LLM 響應(yīng)長(zhǎng)度的方法,與最大輸出標(biāo)記參數(shù)一起。停止序列是一個(gè)或多個(gè)字符的特定字符串,遇到該字符串時(shí)會(huì)停止模型的輸出。一個(gè)常見(jiàn)的例子是句號(hào)(句號(hào))。
或者,您可以使用停止標(biāo)記限制,即定義輸出長(zhǎng)度的整數(shù)值。例如,將停止標(biāo)記限制設(shè)置為 1 會(huì)使生成的輸出停止在一個(gè)句子處,而將限制設(shè)置為 2 會(huì)將響應(yīng)限制為一個(gè)段落。這些控制對(duì)于管理推理非常有用,尤其是在預(yù)算成為問(wèn)題時(shí)。
10. 頻率和存在懲罰
頻率和存在懲罰是超參數(shù),用于阻止重復(fù)并鼓勵(lì)模型輸出的多樣性。-2.0 和 2.0 之間的小數(shù)表示兩種懲罰。
頻率懲罰降低了最近使用過(guò)的 token 的概率,使其不太可能重復(fù)出現(xiàn)。這有助于通過(guò)防止重復(fù)產(chǎn)生更多樣化的輸出。存在懲罰適用于至少出現(xiàn)過(guò)一次的 token,其工作原理類似,但與 token 使用頻率成正比。頻率懲罰阻止重復(fù),而存在懲罰鼓勵(lì)使用更多種類的 token。
什么是 LLM 超參數(shù)調(diào)整?
LLM 超參數(shù)調(diào)整涉及在訓(xùn)練過(guò)程中調(diào)整各種超參數(shù),以找到生成最佳輸出的最佳組合。此過(guò)程通常涉及大量反復(fù)試驗(yàn),細(xì)致地跟蹤每個(gè)超參數(shù)應(yīng)用并記錄結(jié)果輸出。手動(dòng)執(zhí)行此調(diào)整非常耗時(shí),因此需要開(kāi)發(fā)自動(dòng)化方法來(lái)簡(jiǎn)化流程。
自動(dòng)超參數(shù)調(diào)整最常見(jiàn)的三種方法是隨機(jī)搜索、網(wǎng)格搜索和貝葉斯優(yōu)化:
隨機(jī)搜索:此方法從指定的值范圍內(nèi)隨機(jī)選擇并評(píng)估超參數(shù)組合。該方法簡(jiǎn)單高效,能夠探索較大的參數(shù)空間。但是,由于其簡(jiǎn)單性,它可能找不到最佳組合,并且計(jì)算成本高昂。
網(wǎng)格搜索:此方法系統(tǒng)地搜索給定范圍內(nèi)所有可能的超參數(shù)組合。雖然像隨機(jī)搜索一樣耗費(fèi)資源,但它可以確保以更系統(tǒng)的方式找到最佳超參數(shù)集。
貝葉斯優(yōu)化:此方法使用概率模型來(lái)預(yù)測(cè)不同超參數(shù)的性能,并根據(jù)這些預(yù)測(cè)選擇最佳超參數(shù)。它比網(wǎng)格搜索更有效,可以用更少的資源處理較大的參數(shù)空間。但是,它的設(shè)置更復(fù)雜,并且在識(shí)別最佳超參數(shù)集方面可能不如網(wǎng)格搜索可靠。
自動(dòng)超參數(shù)調(diào)整的優(yōu)勢(shì)
自動(dòng)超參數(shù)調(diào)優(yōu)為機(jī)器學(xué)習(xí)模型開(kāi)發(fā)提供了幾個(gè)顯著的優(yōu)勢(shì)。首先,它通過(guò)系統(tǒng)地搜索超參數(shù)空間節(jié)省了時(shí)間和精力,從而無(wú)需手動(dòng)反復(fù)試驗(yàn)的方法。這可以發(fā)現(xiàn)更優(yōu)化的超參數(shù)配置,從而提高模型性能和準(zhǔn)確性。此外,自動(dòng)調(diào)優(yōu)利用了貝葉斯優(yōu)化、網(wǎng)格搜索和隨機(jī)搜索等復(fù)雜算法,可以更有效地探索超參數(shù)格局。
這樣可以更快地收斂到最佳設(shè)置。此外,自動(dòng)調(diào)整可以輕松集成到現(xiàn)有的機(jī)器學(xué)習(xí)管道中,確保無(wú)縫工作流程并通過(guò)迭代改進(jìn)實(shí)現(xiàn)持續(xù)改進(jìn)。通過(guò)減少對(duì)人類專業(yè)知識(shí)的依賴,它使高級(jí)模型調(diào)整的訪問(wèn)變得民主化,即使是那些在機(jī)器學(xué)習(xí)方面經(jīng)驗(yàn)有限的人也可以使用它。
結(jié)論
超參數(shù)調(diào)優(yōu)通常被視為微調(diào)的一個(gè)子集,但它是一門(mén)值得單獨(dú)關(guān)注的重要學(xué)科。通過(guò)配置本指南中詳細(xì)介紹的各種超參數(shù),并觀察所選 LLM 的響應(yīng)情況,您可以增強(qiáng)基礎(chǔ)模型的性能,以更好地適應(yīng)實(shí)際應(yīng)用。
加入捷智算平臺(tái)
如果您是 AI 研究員、深度學(xué)習(xí)專家、機(jī)器學(xué)習(xí)專業(yè)人士或大型語(yǔ)言模型愛(ài)好者,我們希望聽(tīng)到您的聲音!加入捷智算平臺(tái)將讓您盡早體驗(yàn)高性價(jià)比的算力資源,幫助您實(shí)現(xiàn)項(xiàng)目。
不要錯(cuò)過(guò)這個(gè)激動(dòng)人心的機(jī)會(huì),徹底改變您開(kāi)發(fā)和部署應(yīng)用程序的方式。立即使用捷智算云平臺(tái):https://www.supercomputing.net.cn/