大型語言模型(LLM)是在巨大的文字資料庫上訓練的,在那裡它們獲得了大量的實際知識。這些知識嵌入到它們的參數中,然後可以在需要時使用。這些模型的知識在訓練結束時被「具體化」。在預訓練結束時,模型實際上停止學習。
對模型對齊或進行指令調優,讓模型學習如何充分利用這些知識,以及如何更自然地回應使用者的問題。但是有時模型知識是不夠的,儘管模型可以透過RAG存取外部內容,但透過微調使用模型適應新的領域被認為是有益的。這種微調是使用人工標註者或其他llm創建的輸入進行的,模型會遇到額外的實際知識並將其整合到參數中。
#在機制層面上,我們並不真正知道這種交互作用是如何發生的。根據一些人的說法,接觸這種新知識可能會導致模型產生幻覺。這是因為模型被訓練成產生不以其預先存在的知識為基礎的事實(或可能與模型的先前知識衝突)。模型還有可能會遇到何種看起來的知識(例如,在預訓練語料庫中較少出現的實體)。
因此,最近發表的一項研究關注的是分析當模型透過微調得到新知識時會發生什麼。作者詳細研究了一個經過微調的模型會發生什麼,以及它在獲得新知識後的反應會發生什麼。
他們嘗試在微調後對範例進行知識層級的分類。一個新例子固有的知識可能與模型的知識不完全一致。例子可以是已知的,也可以是未知的。即使已知,它也可能是高度已知的,可能是已知的,或者是不太為人所知的知識。
然後作者採用了一個模型(PaLM 2-M)對其進行了微調。每個微調的例子都是由事實知識所構成的(主體、關係、物件)。這是為了允許模型用特定的問題、特定的三元組(例如,“巴黎在哪裡?”)和基本事實答案(例如,“法國”)查詢這些知識。換句話說,它們為模型提供一些新知識,然後將這些三元組重構為問題(問答對)以測試其知識。他們將所有這些例子分成上述討論的類別,然後評估答案。
經過了模型進行了微調後測試結果:未知事實的高比例會導致效能下降(這不會透過更長的微調時間來補償)。
未知事實在較低的epoch數下幾乎是中性的影響,但在更多的epoch數下會損害性能。所以未知的例子似乎是有害的,但它們的負面影響主要體現在訓練的後期階段。下圖顯示了資料集範例的已知和未知子集的訓練精度作為微調持續時間的函數。可以看出,該模型在較晚階段學習了未知樣例。
Lastly, since Unknown examples are the ones that are likely to introduce new factual knowledge, their significantly slow fitting rate suggests that LLMs struggle toac , instead they learn to expose their preexisting knowledge using the Known examples.
作者嘗試對此準確度與已知和未知例子之間的關係是進行量化,以及它是否是線性的。結果表明,未知的例子會損害性能,而已知的例子會提高性能,這之間存在很強的線性關係,幾乎同樣強烈(這種線性回歸中的相關係數非常接近)。
這種微調不僅對特定情況下的效能有影響,而且對模型知識有廣泛的影響。作者使用分佈外(OOD)的測試集表明,未知樣本對OOD表現是有害的。根據作者的說法,這與幻覺的發生也有關係:
Overall, our insights transfer across relations. This essentially shows that fine-tuning on Unknown examples such as “Where is [E1] located?”, can encourage hallucinations on seemingly unrelated questions, such as 「Who founded [E2]?」.
##好的結果不是用眾所周知的例子獲得的,而是用可能已知的例子。換句話說,這些例子允許模型更好地利用其先驗知識(過於眾所周知的事實不會對模型產生有用的影響)。
相較之下,未知與較不清楚的事實會損害模型的表現,而這種下降源自於幻覺的增加。
This work highlights the risk in using supervised fine-tuning to update LLMs' knowledge, as we present empirical evidence that acquiring new knowledge .
以上是微調真的能讓LLM學到新東西嗎:引入新知識可能讓模型產生更多的幻覺的詳細內容。更多資訊請關注PHP中文網其他相關文章!