如今,人們對能夠使大型語言模型(LLM)在很少或沒有人為干預(yù)的情況下改進(jìn)功能的技術(shù)越來越感興趣。大型語言模型(LLM)自我改進(jìn)的領(lǐng)域之一是指令微調(diào)(IFT),也就是讓大型語言模型教會自己遵循人類指令。
指令微調(diào)(IFT)是ChatGPT和Claude等大型語言模型(LLM)獲得成功的一個主要原因。然而,指令微調(diào)(IFT)是一個復(fù)雜的過程,需要耗費(fèi)大量的時間和人力。Meta公司和紐約大學(xué)的研究人員在共同發(fā)表的一篇論文中介紹了一種名為“自我獎勵語言模型”的新技術(shù),這種技術(shù)提供了一種方法,使預(yù)訓(xùn)練的語言模型能夠創(chuàng)建和評估示例,從而教會自己進(jìn)行微調(diào)。
這種方法的優(yōu)點(diǎn)是,當(dāng)多次應(yīng)用時,它會繼續(xù)改進(jìn)語言模型。自我獎勵語言模型不僅提高了它們的指令遵循能力,而且在獎勵建模方面也做得更好。
自我獎勵的語言模型
對大型語言模型(LLM)進(jìn)行微調(diào)以適應(yīng)指令遵循的常用方法是基于人類反饋強(qiáng)化學(xué)習(xí)(RLHF)。
在人類反饋強(qiáng)化學(xué)習(xí)(RLHF)中,語言模型根據(jù)從獎勵模型收到的反饋來學(xué)習(xí)優(yōu)化其反應(yīng)。獎勵模型是根據(jù)人類注釋者的反饋進(jìn)行訓(xùn)練的,這有助于使語言模型的響應(yīng)與人類的偏好保持一致。人類反饋強(qiáng)化學(xué)習(xí)(RLHF)包括三個階段:預(yù)訓(xùn)練大型語言模型(LLM),創(chuàng)建基于人類排名輸出的獎勵模型,以及強(qiáng)化學(xué)習(xí)循環(huán),其中大型語言模型(LLM)根據(jù)獎勵模型的分?jǐn)?shù)進(jìn)行微調(diào),以生成與人類判斷一致的高質(zhì)量文本。
另一種方法是直接偏好優(yōu)化(DPO),在這種方法中,語言模型可以生成多個答案,并從人類那里接收直接反饋得知哪一個答案更可取。在直接偏好優(yōu)化(DPO)中,不需要創(chuàng)建單獨(dú)的獎勵模型。
雖然這些技術(shù)已被證明是有效的,但它們都受到人類偏好數(shù)據(jù)的大小和質(zhì)量的限制。人類反饋強(qiáng)化學(xué)習(xí)(RLHF)具有額外的限制,即一旦訓(xùn)練完成,獎勵模型就會被凍結(jié),其質(zhì)量在大型語言模型(LLM)的整個微調(diào)過程中都不會改變。
自我獎勵語言模型(SRLM)的思想是創(chuàng)建一種克服這些限制的訓(xùn)練算法。研究人員在論文中寫道:“這種方法的關(guān)鍵是開發(fā)一個擁有訓(xùn)練過程中所需的所有能力的代理,而不是將它們分成不同的模型,例如獎勵模型和語言模型。”
自我獎勵語言模型(SRLM)有兩個主要功能:首先,它可以對用戶的指令提供有益且無害的響應(yīng)。其次,它可以創(chuàng)建和評估指令和候選響應(yīng)的示例。
這使得它能夠在人工智能反饋(AIF)上迭代訓(xùn)練自己,并通過創(chuàng)建和訓(xùn)練自己的數(shù)據(jù)來逐步改進(jìn)。
在每次迭代中,大型語言模型(LLM)在遵循指令方面變得更好。因此,它在為下一輪訓(xùn)練創(chuàng)建示例方面也有所改進(jìn)。
自我獎勵語言模型(SRLM)的工作原理
自我獎勵的語言模型從在大量文本語料庫上訓(xùn)練的一個基礎(chǔ)大型語言模型(LLM)開始。然后,該模型在一小部分人類注釋的示例上進(jìn)行微調(diào)。其種子數(shù)據(jù)包括指令微調(diào)(IFT)示例,其中包括成對的指令和響應(yīng)對。
為了改進(jìn)結(jié)果,種子數(shù)據(jù)還可以包括評估微調(diào)(EFT)示例。在評估微調(diào)(EFT)中,為大型語言模型(LLM)提供一條指令和一組響應(yīng)。它必須根據(jù)響應(yīng)與輸入提示的相關(guān)性對響應(yīng)進(jìn)行排序。評估結(jié)果由推理描述和最終分?jǐn)?shù)組成,這些例子使大型語言模型(LLM)能夠發(fā)揮獎勵模型的作用。
一旦在初始數(shù)據(jù)集上進(jìn)行了訓(xùn)練,該模型就可以為下一次訓(xùn)練迭代生成數(shù)據(jù)。在這個階段,模型從原始的指令微調(diào)(IFT)數(shù)據(jù)集中采樣示例,并生成一個新的指令提示符。然后,它為新創(chuàng)建的提示生成幾個候選響應(yīng)。
最后,該模型采用LLM-as-a-Judge對響應(yīng)進(jìn)行評估。LLM-as-a-Judge需要一個特殊的提示,包括原始請求、候選人回復(fù)和評估回復(fù)的說明。
一旦模型創(chuàng)建了指令示例并對響應(yīng)進(jìn)行了排序,自我獎勵語言模型(SRLM)就會使用它們來創(chuàng)建人工智能反饋訓(xùn)練(AIFT)數(shù)據(jù)集,也可以使用這些說明以及回答和排名分?jǐn)?shù)來創(chuàng)建偏好數(shù)據(jù)集。有兩種方法可以組裝訓(xùn)練數(shù)據(jù)集。一個是該數(shù)據(jù)集可以與直接偏好優(yōu)化(DPO)一起使用,以教會語言模型區(qū)分好響應(yīng)和壞響應(yīng)。另一個是可以創(chuàng)建一個僅包含最高排名響應(yīng)的監(jiān)督微調(diào)(SFT)數(shù)據(jù)集。研究人員發(fā)現(xiàn),加入排名數(shù)據(jù)可以提高訓(xùn)練模型的性能。
一旦新創(chuàng)建的示例被添加到原始數(shù)據(jù)集中,就可以再次訓(xùn)練模型。這個過程將重復(fù)多次,每次循環(huán)都會創(chuàng)建一個模型,該模型既能更好地遵循指示又能更好地評估響應(yīng)。
研究人員寫道:“重要的是,由于該模型既可以提高其生成能力,又可以通過相同的生成機(jī)制作為自己的獎勵模型,這意味著獎勵模型本身可以通過這些迭代得到改進(jìn)。我們相信,這可以提高這些學(xué)習(xí)模式未來自我完善的潛力上限,消除了制約瓶頸。”
實(shí)驗(yàn)自我獎勵語言模型(SRLM)
研究人員以Llama-2-70B為基礎(chǔ)模型測試了自我獎勵語言模型。作為指令微調(diào)的種子數(shù)據(jù),他們使用了包含數(shù)千個指令微調(diào)示例的Open Assistant數(shù)據(jù)集。Open Assistant還提供了具有多個排序響應(yīng)的指令示例,這些指令可用于評估微調(diào)(EFT)。
他們的實(shí)驗(yàn)表明,自我獎勵語言建模的每一次迭代都提高了大型語言模型(LLM)遵循指令的能力。此外,大型語言模型(LLM)在獎勵建模方面變得更好,這反過來又使它能夠?yàn)橄乱淮蔚鷦?chuàng)建更好的訓(xùn)練示例。他們在AlpacaEval基準(zhǔn)測試上的測試表明,三次迭代自我獎勵語言模型(SRLM)的Llama-2表現(xiàn)優(yōu)于Claude 2、Gemini Pro和GPT-4.0613。
但是,這種方法也有局限性。像其他允許大型語言模型(LLM)自我改進(jìn)的技術(shù)一樣自我獎勵語言模型(SRLM)可能導(dǎo)致模型陷入“獎勵黑客”陷阱,在這個陷阱中,它開始優(yōu)化響應(yīng)以獲得所需的輸出,但其原因是錯誤的。獎勵黑客攻擊可能導(dǎo)致不穩(wěn)定的語言模型在現(xiàn)實(shí)世界的應(yīng)用程序和不同于其訓(xùn)練示例的情況下表現(xiàn)不佳。也不清楚這個過程可以在多大程度上根據(jù)模型大小和迭代次數(shù)進(jìn)行縮放。
但是自我獎勵語言模型(SRLM)具有明顯的優(yōu)勢,可以為訓(xùn)練數(shù)據(jù)提供更多信息。如果已經(jīng)有一個帶注釋的訓(xùn)練示例的數(shù)據(jù)集,那么可以使用自我獎勵語言模型(SRLM)來提高大型語言模型(LLM)的能力,而無需向數(shù)據(jù)集添加更多示例。
研究人員寫道:“我們相信這是一個令人興奮的研究方向,因?yàn)檫@意味著該模型能夠在未來的迭代中更好地為改進(jìn)指令遵循分配獎勵——這是一種良性循環(huán)。雖然這種改進(jìn)在現(xiàn)實(shí)情況下可能會飽和,但它仍然允許持續(xù)改進(jìn)的可能性,而人類的偏好通常用于建立獎勵模型和指令遵循模型。”