語言模型已經深刻變革了自然語言處理領域的研究和實踐。近年來,大模型在多個領域都取得了重要的突破。它們無需在下游任務上微調,透過適當的指令或提示就可以取得優異的效能,甚至有時讓人為之驚嘆。
例如,GPT-3 [1] 可以寫情書、寫劇本和解決複雜的數據數學推理問題,PaLM [2] 可以解釋笑話。上面的例子只是大模型能力的冰山一角,現在利用大模型能力已經發展了許多應用,在OpenAI的網站 [3] 可以看到許多相關的demo,而這些能力在小模型上卻很少體現。
今天介紹的這篇論文中,將那些小模型不具備而大模型具備的能力稱為突現能力(Emergent Abilities),意指模型的規模大到一定程度後所突然獲得的能力。這是一個量變產生質變的過程。
突現能力的出現難以預測。為什麼隨著規模的增加,模型會忽然獲得某些能力仍舊是一個開放問題,還需要進一步的研究來解答。在本文中,筆者梳理了最近關於理解大模型的一些進展,並給出了一些相關的思考,期待與大家共同探討。
相關論文:
何謂大模型?到什麼尺寸才算「大」?這並沒有一個明確的定義。
一般來說,模型參數可能要達到十億級才會顯示出明顯不同於小模型的zero-shot和few-shot的能力。近年來已有多個千億和兆級參數的模型,在一系列的任務上都取得了SOTA的表現。在某些任務中,模型的表現隨著規模的增加而可靠地提高,而在另一些任務中,模型在某個規模上表現出表現的突然提升。可以用兩個指標去對不同的任務進行分類[4]:
這兩個指標是模型規模和模型表現的函數,具體計算細節可以參考 [4]。下圖展示了一些高Linearity和高Breakthroughness任務的例子。
高Linearity的任務大多是基於知識的,也就是說他們主要依賴記憶訓練資料中存在的訊息,例如回答一些事實性的問題。更大的模型通常用更多的數據進行訓練,也能記住更多的知識,所以模型隨著規模的增大在這類任務上明確出了穩定的提升。高Breakthroughness的任務包括較複雜的任務,它們需要用幾種不同的能力或執行多個步驟以獲得正確的答案,例如數學推理。較小的模型難以獲得執行這類任務所需的所有能力。
下圖進一步展示了不同的模型在一些高Breakthroughness任務上的表現
#在未達到一定的模型規模時,模型在這些任務上的表現是隨機的,達到某個特定的規模之後,就有了顯著的提升。
前面我们看到的是模型规模增加到一定程度后突然获得了某些能力,从任务特定的指标来看,这些能力是突现的,但是从另外的角度来看,模型能力的潜在变化更为平滑。本文讨论如下两个角度:(1)使用更为平滑的指标;(2)将复杂的任务分解为多个子任务。
下图(a)展示了一些高Breakthroughness任务的真实目标对数概率的变化曲线,真实目标的对数概率是随着模型规模增大逐渐提高的。
图(b)显式了对于某个多项选择任务,随着模型规模的增大,正确答案的对数概率逐步提升,而错误答案的对数概率在某个特定的规模之前逐步提升,而在此之后趋于平坦。在这个规模之后,正确答案概率和错误答案概率的差距拉大,从而模型得到了显著的性能提升。
此外,对于某个特定任务,假设我们可以用Exact Match和BLEU去评价模型的表现,BLEU相比于Exact Match是更为平滑的指标,使用不同指标所看到的趋势可能有显著的差距。
对于一些任务,模型可能在不同的规模上获得了做这个任务的部分能力。下图是通过一串emoji去猜测电影名字的任务
我们可以看到模型在一些规模开始猜测电影名称,在更大的规模上识别表情符号的语义,在最大的规模上产生正确的答案。
模型在什么规模上体现出突然的能力提升也取决于如何去形式化任务。例如,在复杂的数学推理任务上,使用标准的prompting将其视为问答任务,模型规模增大性能提升十分有限,而若使用如下图所示的chain-of-thought prompting [5],将其视为多步推理任务,则会在某个特定的规模看到显著的性能提升。
更有甚者,研究人员发现通过添加一个简单的提示“Let’s think step by step”,就可以大幅提升GPT-3的zero-shot推理能力 [6],如下图所示
这对于我们的启发是,大模型有时做不好某个任务,可能并不是真的做不好,而是需要合适的方式去激发它的能力。
前面的讨论给我们的直观感觉是模型规模变大性能一定是有所提升的,但是真的是这样吗?实际上,对于有些任务,模型变大之后性能可能反而会有所下降,如下图所示
纽约大学的几位研究人员还组织了一项竞赛,旨在找到那些模型变大后反而表现变差的任务。
例如在問答任務中,如果在提問的同時加上你的信仰,大模型會更容易受到影響。有興趣的同學可以關注。
梅貽琦先生曾說“所謂大學者,非謂有大樓之謂也,有大師之謂也”,筆者在此用個不太恰當的類比結束本篇:所謂大模型者,非謂有參數之謂也,有能之謂也。
以上是Google、史丹佛聯合發文:我們為什麼一定要用大模型?的詳細內容。更多資訊請關注PHP中文網其他相關文章!