LLM的“母語”是什麼?
文章來 源於新智元
大語言模型的「母語」是什麼?
我們的第一反應很可能是:英語。
但事實果真如此嗎?尤其是對於能夠聽說讀寫多種語言的LLM來說。
對此,來自EPFL(洛桑聯邦理工學院)的研究人員發表了下面這篇工作來一探究竟:
論文地址:https://arxiv.org/pdf/2402.10588
項目地址:https://github.com/epfl-dlab/llm-latent-language
作者以Llama2爲對象,向我們展示了具有多語言能力的Transformer,是如何思考問題的。
像「羊駝」這種在英語區下長大的娃,他的「多語言」到底是本質屬性,還是僅僅套了個翻譯的殼?
這對於人們理解LLM的運行機制至關重要。
要探究大模型的內心世界,雖然聽起來有點複雜,但實際上一點也不簡單。
研究人員在這裡化繁爲簡,使用特定的提示來保證輸出的唯一性,同時把Llama-2-7B的32層輸出全部提取出來——一層一層一層的剝開她的心。
於是,我們能在上圖清楚地看到,羊駝在得到中文翻譯(「花」)時的整個推理過程。
Transformer將輸入token進行逐層映射,最終預測出下一個token,中間那些我們大概能理解或者不能理解的字符串,就是LLM使用的「內部語言」。
顯然,在中間層的「思考」環節,羊駝用的是偏向於英語的某種神秘文字。
這裡需要強調一下,這是羊駝的自發行爲,因爲提示中壓根就沒有一點英語!
比如上圖是其中的一個實驗,構建了法語翻譯中文的提示,且限制了正確答案只需1個token(花)。
而下圖的統計顯示:在Llama2的大部分前向傳遞中,正確中文token(藍色)的概率遠低於英文翻譯(橙色)的概率。中文只在最後兩層中佔據主導地位。
爲了方便大家觀察,作者還將嵌入在高維空間中的路徑的可視化(實際是8192個維度,這裡使用2D展示)。
從輸入到輸出,軌跡以紅色開始,以紫色結束。我們可以看到,這些路徑基本都是先繞道英語,然後才返回正確的中文。
不過,這是否確實表明Llama2先用英文進行推理,然後將再其翻譯成中文?
作者表示,比這更微妙一點。那些看起來像英語的中間嵌入實際上對應於抽象概念,而不是具體的英文token。
所以,一方面,Llama2內部的「通用語」不是英語,而是概念;
但另一方面,這些神秘字符又顯然是偏向於英語的概念。
因此,在語義上,而非純粹的詞彙意義上,英語確實可以被視爲羊駝的「母語」。
網友:我早就發現了有網友表示:恕我直言,不僅僅是羊駝系列,基本上所有LLM都是這樣。
「對於以英語爲母語的人來說,這可能會令人驚訝,但對於其他人來說,這種傾向性是可見的,只不過有時多,有時少。」
「有時我會想LLM爲什麼要這樣回答,然後我意識到這個答案在英語中更有意義。」
「這在詩歌中更是顯而易見的。LLM寫詩很漂亮,但通常沒有押韻.——如果你把它翻譯成英語,就押韻了。」
另一位網友表示,這是大模型帶來的偏見,要小心了。
「英語和中文最終將成爲LLM提示和輸出的最佳語言,而隨着LLM的應用範圍越來越廣泛,世界其他語言將更加邊緣化。」
1
模型表達空間的探索
當嵌入逐層轉換時,它們會經歷3個階段:
1. 輸入空間:模型消除分詞器帶來的影響。
2. 概念空間:嵌入進入一個抽象的概念空間中。
3. 輸出空間:概念被映射回原本的表達形式。
模型
實驗專注於Llama-2系列語言模型。Llama-2系列模型在多語言語料庫上進行訓練,語料庫主要由英語主導(佔89.70%)。
不過考慮到總體訓練數據的大小(2萬億個token),即使是一小部分非英語訓練數據,絕對值仍然很大(德語佔0.17%=3.4B,中文佔0.13%=2.6B)。
Llama-2有7B/13B/70B三種尺寸,分別爲32/40/80層,嵌入維度d=4096/5120/8192,詞彙表V包含32,000個token。實驗中使用8位量化探究這三種不同大小的模型。
實驗實驗的目標是探索Llama-2的內部狀態,是否與特定的自然語言相對應,這需要從token分佈映射到語言。爲了規避許多token在語言方面上模棱兩可的問題,研究人員構造了特殊的提示,限制token輸出的唯一性,並且可以明確地歸因於某一種語言。翻譯任務將前面的非英語(例如法語)單詞翻譯成中文,示例如下,向模型展示四個單詞,並帶有正確的翻譯,後跟第五個沒有翻譯的單詞,讓模型預測下一個token:
重複任務
要求模型簡單地重複最後一個單詞,提示如下:
完形填空任務
作爲一項稍微困難的任務,模型需要預測句子中缺失的單詞。給定一個目標單詞,通過GPT-4構建一個以該單詞開頭的英語句子,屏蔽目標單詞,並將該句子翻譯成其他語言。英語示例如下:
單詞選擇
爲了實現明確的語言歸屬,研究人員爲每種語言構建了一組封閉的單詞。掃描Llama-2的詞彙表,尋找具有單token英文翻譯的單token中文單詞(主要是名詞)。
這樣一來,Llama-2預測下一個中文單詞的正確概率就可以直接從下一個token概率中讀出。
保險起見,作者還在德語、法語和俄語上進行了相同的實驗,總共測試了139箇中文、104個德語、56個法語和115個俄語單詞。三個任務的測試結果如下:
上圖表示Llama-2前向傳遞期間,每一層輸出是英語還是中文的概率,三個任務分別爲:(a)從德語/法語/俄語到中文的翻譯任務,(b)中文重複任務,(c)中文完形填空任務。
誤差線顯示輸入文本的95%高斯置信區間(翻譯任務爲353,重複任務和完形填空爲139)。
8192D太空漫遊自迴歸Transformer是以增量方式求解的,每一層通過添加殘差來修改前一層產生的潛在向量,這一過程在幾何上可以描述爲通過d維歐幾里得空間的路徑。
爲了建立直覺,首先考慮一個假設的極端情況,即token位於整個d維空間的適當子空間中。
如果latent embedding(h)具有與token子空間正交的分量,則表示預測中包含與h無關的信息。
研究人員採用h和token嵌入之間的均方餘弦,來表示h的能量有多少轉化爲logit分數。爲了可解釋性,這裡通過token嵌入本身的均方餘弦進行歸一化,得到h的平方token能量:
在上面的球形示意圖中,所有嵌入都位於原點周圍的球體上。token嵌入位於赤道上,主要沿x軸分佈,x軸捕獲語言(左英文,右中文),y軸捕捉概念,z軸提供了額外的自由度,可用於存儲有關上下文、語言等的信息。Transformer正向傳遞沿球體表面移動。
在第1階段,latent embedding從北極開始,與輸出token和概念嵌入正交。
階段2旋轉到概念空間中,英語token佔據主導。
最後,第3階段沿赤道旋轉到目標語言的半球,產生輸出token。
參考資料:
https://arxiv.org/abs/2402.10588