GPT-4 是世界上最強大的大型語言模型之一,但最近卻屢次遭遇信任危機。有研究指出,GPT-4 在面對新任務時的零樣本性能顯著下降,即它無法在沒有任何先前訓練的情況下完成新任務。

加州大學聖克魯斯分校的研究者們在最新的論文中提出了一個新的解釋。他們認為,GPT-4 的性能衰減是由於 Data Contamination「任務污染」 造成的。任務污染是指模型在訓練數據中看到了與新任務相關的數據。例如,如果模型在訓練數據中看到了「寒假」這個詞,那麼當它被告知「現在是寒假」時,它就可能會聯想到相關的概念,並做出相應的回應。

研究人員發現,GPT-4 在訓練數據中存在大量的任務污染。這導致了模型在面對新任務時,無法完全利用其知識和能力。

研究人員提出了一些解決方案,可以減少任務污染,提高模型的性能。例如建議在訓練數據中去除與新任務相關的數據,或使用其他方法來降低任務污染的影響。

原論文: Task Contamination: Language Models May Not Be Few-Shot Anymore

「我們發現,在建立訓練數據之前公布的數據集上,大型語言模型(LLM)的表現意外地超越了之後發布的數據集。」

這意味著,它們在已經「見識過」的任務上表現優異,但在全新的任務上則表現不佳。換言之,LLM主要依賴於近似檢索的模仿智能方法,它們更多的是記憶而非真正理解。

直白來說,即是LLM的泛化能力「並非如宣稱的那樣強大」—— 基礎薄弱,實戰中總有疏漏。

造成這種情形的一個主要原因是「任務污染」,這是一種數據污染的表現形式。我們熟知的數據污染多指測試數據被污染,即預訓練數據中包含了測試數據的示例和標籤。而「任務污染」則是指在預訓練數據中加入特定任務的訓練示例,從而使對零樣本或少樣本方法的評估失去真實有效性。

研究者在論文中首次對這一數據污染問題進行了系統性的分析:

論文連結:https://arxiv.org/pdf/2312.16337.pdf

閱讀完論文後,有人悲觀地表示:

這是所有缺乏持續學習能力的機器學習(ML)模型的宿命。即模型的權重在訓練完成後就被凍結,但輸入分佈會持續變化。如果模型無法持續適應這種變化,它們就會逐漸變得愚笨。

這也意味著,隨著編程語言的持續進化,基於LLM的編碼工具亦將逐步退化。這便是為何不應過度依賴這類脆弱工具的原因之一。
持續對這些模型進行重新訓練的成本非常高昂,早晚會有人放棄這些低效的方法。

目前還沒有任何一種ML模型能夠可靠地持續適應不斷變化的輸入分佈,同時不對先前的編碼任務造成嚴重干擾或性能損失。

然而,這正是生物神經網路所擅長的領域。由於生物神經網的強大泛化能力,學習不同任務可以進一步提升系統性能,因為從一項任務中獲得的知識有助於優化整個學習過程本身,這便是所謂的「元學習」。

那麼「任務污染」的問題到底有多嚴重?讓我們一起深入論文內容探討。

模型與數據集

這次實驗涉及了12個模型(如表 1 所示),其中5個屬於專有的GPT-3系列,另外7個則是可以免費獲取權重的開放模型。

數據集被分為兩大類:2021年1月1日之前或之後發布的。研究者們採用這種分類方式來比較舊數據集與新數據集在零樣本或少樣本性能上的差異,並對所有LLM採取相同的分類方法。表 1 列出了各模型訓練數據的創建時期,表 2 則列出了各數據集的公布日期。

此做法的考量是,零樣本和少樣本評估涉及模型對於其在訓練期間從未遭遇過或僅少數次遭遇的任務進行預測。關鍵在於,模型須事先未接觸過特定任務,以確保對其學習能力的公正評估。但若模型在預訓練期間已經接受過某些任務的訓練,則污染的模型會給人一種錯覺,彷彿它們具備了未曾接觸或僅少數次接觸過的能力。在按時間順序排列的數據集中,這種不一致性通常更易被察覺,因為任何的重疊或異常情況都會變得顯著。

測量方法

為了精確量測「任務污染」現象,研究團隊運用了四種不同的策略:

1.訓練數據探查:這涉及在訓練資料庫中尋找特定的任務訓練實例。

2.任務示例萃取:該技術專注於從既有模型中萃取出特定任務的實例。僅對經過特定調整的模型才進行此操作,並且此分析也適用於訓練和測試數據的萃取。值得注意的是,為了識別任務污染,萃取出來的任務示例並不需要與現存的訓練數據示例完全一致。任何展示出來的Demo任務示例都可能暗示零樣本學習和少樣本學習的潛在污染。

3.成員推斷:這一方法專門用於生成任務。它包括檢查模型生成的內容是否與原始數據集中的實例完全相同。如果發現完全匹配,則可以推斷該實例是LLM訓練數據的一部分。這與任務示例萃取有所不同,因為這裡重點檢查的是生成的輸出是否與原始數據完全匹配。精確的匹配強烈暗示著模型在訓練過程中已經「見過」這些示例,除非模型能夠「通靈」地知道數據中的確切措辭。

4.時序分析:這涉及對在特定時間範圍內收集的訓練數據進行模型集的性能測量,並在已知發布日期的數據集上運用時序證據來檢測污染。

前三種方法雖然精度高,但召回率較低。如果在任務的訓練數據中找到相關數據,則可以肯定模型曾見過該示例。但由於數據格式、定義任務的關鍵字以及數據集大小的變化,使用這些方法找不到污染證據並不能完全證明沒有污染。

第四種方法,即時序分析,雖然召回率高,但精確度較低。如果性能提高是由任務污染造成的,時序分析有很大機會能夠發現它。但隨著時間推移,其他因素也可能導致性能提高,從而降低了其精確度。

因此,研究者綜合運用了這四種方法來檢測任務污染,並在某些模型和數據集組合中發現了強有力的污染證據。

他們首先對所有測試過的模型和數據集進行時序分析,以儘可能發現潛在的污染;然後運用訓練數據探查和任務示例萃取方法尋找進一步的任務污染證據;其後觀察LLM在無污染任務中的性能;最終通過成員推斷攻擊進行額外的分析。

重要發現如下:

1、研究者對每個模型在其訓練數據抓取之前創建和之後創建的數據集進行了分析。結果顯示,對於在收集LLM訓練數據之前創建的數據集,其性能普遍高於大多數基準(圖 1)。

2、通過訓練數據探查和任務示例萃取,研究者試圖找出潛在的任務污染。結果發現,在一系列任務中,對於不太可能受到任務污染影響的分類任務,模型很少顯著優於簡單多數基線,無論是在零樣本還是少樣本情況下(圖 2)。

研究者同時追蹤了GPT-3系列和開放LLM的平均性能隨時間的變化情況,如圖 3所示:

3、作為案例研究,研究者對所有模型進行了語義解析任務的成員推斷攻擊分析,發現在終極任務中,提取實例的數量與模型準確度之間存在強烈的相關性(R=.88)(圖 6)。這有力地表明,在該任務中零樣本性能的提升主要是由於任務污染造成的。

4、研究者還仔細研究了GPT-3系列模型,發現可以從GPT-3模型中萃取出訓練示例。而且從davinci到GPT-3.5-turbo的每個版本中,可提取的訓練示例數量均在增加,這與GPT-3模型在該任務上零樣本性能的提高密切相關(圖 2)。這強有力地證明了從davinci到GPT-3.5-turbo的GPT-3模型在這些任務上的性能提升主要是由於任務污染造成的。

結論

總之,數據污染為 LLM 帶來了一個重大的潛在問題,可能會影響他們在各種任務中的表現。它可能會導致有偏見的結果並破壞 LLM 的真正有效性。透過識別和減少數據污染,我們可以確保 LLM 以最佳方式運作並產生準確的結果。

現在是技術界在 LLM 的開發和利用中優先考慮資料完整性的時候了。透過這樣做,我們可以保證產生公正且可靠的結果,這對於新技術和人工智慧的進步至關重要。

更多研究細節,可參考原論文: https://arxiv.org/pdf/2312.16337.pdf


更多關於 GPT4 變笨與任務污染的 FAQ

Based on the article about GPT-4 task contamination, here's an FAQ in Traditional Chinese:

  1. GPT-4 任務污染是什麼?
    GPT-4 任務污染是指模型在執行某一任務時,受到其他任務的影響,導致模型生成的結果不符合預期或與原始任務無關。
  2. 為什麼 GPT-4 存在任務污染的問題?
    GPT-4 模型可能存在任務污染問題,因為其訓練數據中包含了來自不同任務的大量文本,這可能導致模型在生成文本時混淆了不同任務的特徵。
  3. 任務污染對 GPT-4 的應用有什麼影響?
    任務污染可能導致 GPT-4 在特定任務上的性能下降,影響其在實際應用中的準確性和可靠性。
  4. 如何解決 GPT-4 的任務污染問題?
    解決 GPT-4 的任務污染問題可能需要更嚴格的模型訓練和調優,以及更清晰地定義任務和訓練數據的組成。

進一步了解 GPT-4 任務污染的相關內容,請查看完整文章:GPT-4 任務污染.

Share this post