新聞
模型
產品
keyboard_arrow_down
讀取器
讀取URL或搜索為大模型提供更好的依據。
向量模型
世界一流的多模態多語言向量模型。
重排器
世界一流的重排器,最大限度地提高搜索相關性。
深度搜索
搜索、讀取並推理直到找到最佳答案。
更多的
keyboard_arrow_down
分類器
圖片和文本的零樣本和少樣本分類。
切分器
將長文本切分成塊或詞元。

API 文檔
為您的AI 編程助手 IDE 或大模型自動生成代碼
open_in_new


公司
keyboard_arrow_down
關於我們
聯繫銷售
實習生計劃
加入我們
open_in_new
下載Logo
open_in_new
條款及條件


登錄
login
多語言模型訓練創造和減少語言差距
英語對比世界:其他語言能否在對齊方面保持同步?
打破語言障礙:超越英語的跨語言對齊
跨語言資料對跨語言對齊的貢獻有多大?
結論
技術文章
十月 09, 2024

透過對比學習來彌合多語言嵌入的語言差距

多語言模型經常面臨「語言差異」的問題,即不同語言中的相似片語無法對齊。我們展示了對比式學習如何能彌合這個差異,提升跨語言表現。
Neon green squares form intricate patterns on a black digital background, creating a dynamic, abstract design.
Bo Wang
Scott Martens
Alex C-G
Bo Wang, Scott Martens, Alex C-G • 13 分鐘的讀取量

在多語言模型中,其中一個主要挑戰是「語言差距」— 一種不同語言中相同意思的短語沒有如預期般緊密對齊或聚集的現象。理想情況下,一種語言的文本與另一種語言的等效文本應該有相似的表示 — 也就是說,它們的嵌入向量應該非常接近 — 從而讓跨語言應用能夠在不同語言的文本上以相同方式運作。然而,模型往往會微妙地表示文本的語言,造成「語言差距」,導致跨語言性能不理想。

在這篇文章中,我們將探討這種語言差距以及它如何影響文本嵌入模型的性能。我們使用 jina-xlm-roberta 模型和最新的 jina-embeddings-v3 進行了實驗,評估同一語言中釋義以及不同語言對之間翻譯的語義對齊情況。這些實驗揭示了在不同訓練條件下,具有相似或相同含義的短語如何聚集在一起。

Jina Embeddings v3: A Frontier Multilingual Embedding Model
jina-embeddings-v3 is a frontier multilingual text embedding model with 570M parameters and 8192 token-length, outperforming the latest proprietary embeddings from OpenAI and Cohere on MTEB.

我們還實驗了改善跨語言語義對齊的訓練技術,特別是在對比學習過程中引入平行多語言數據。在本文中,我們將分享我們的見解和結果。

tag多語言模型訓練創造和減少語言差距

文本嵌入模型的訓練通常包含兩個主要部分的多階段過程:

  1. 遮罩語言建模(MLM):預訓練通常涉及大量文本,其中一些標記被隨機遮罩。模型被訓練來預測這些被遮罩的標記。這個程序教導模型學習訓練數據中的語言模式,包括可能來自語法、詞彙語義和語用現實世界限制的標記之間的選擇依賴關係。
  2. 對比學習:在預訓練之後,模型會使用經過策劃或半策劃的數據進行進一步訓練,使語義相似的文本的嵌入向量更接近,並(可選地)將不相似的文本推得更遠。這種訓練可以使用已知或至少可靠估計的語義相似度的文本對、三元組甚至群組。它可能有幾個子階段,這部分過程有多種訓練策略,新的研究經常發表,目前尚未就最佳方法達成共識。

要理解語言差距是如何產生的以及如何縮小它,我們需要了解這兩個階段的作用。

tag遮罩語言預訓練

文本嵌入模型的一些跨語言能力是在預訓練期間獲得的。

同源詞和借用詞使模型能夠從大量文本數據中學習一些跨語言語義對齊。例如,英文單詞 banana 和法文單詞 banane(以及德文 Banane)在拼寫上足夠相似且使用頻繁,使得嵌入模型可以學習到看起來像「banan-」的詞在不同語言中有相似的分佈模式。它可以利用這些信息來學習,在某種程度上,其他跨語言間看起來不相同的詞也有相似的含義,甚至可以理解一些語法結構是如何被翻譯的。

然而,這種學習是在沒有明確訓練的情況下發生的。

我們測試了 jina-xlm-roberta 模型(jina-embeddings-v3 的預訓練骨幹)來看它在遮罩語言預訓練中學習跨語言等效性的程度如何。我們繪製了一組英語句子翻譯成德語、荷蘭語、簡體中文和日語的二維 UMAP 句子表示。結果如下圖所示:

Multilingual scatterplot showing word embeddings' alignment across five languages on UMAP dimensions.
💡
選定英語句子及其德語、荷蘭語、中文和日語翻譯的二維 UMAP 投影。灰線將非英語句子連接到它們翻譯自的英語句子。

這些句子在 jina-xlm-roberta 嵌入空間中強烈傾向於形成特定語言的聚類,儘管在這個投影中你可以看到一些可能是二維投影副作用的離群值。

你可以看到預訓練已經非常強烈地將同一語言的句子嵌入聚集在一起。這是一個將高維空間分佈投影到二維的結果,所以德語句子與其英語原文的翻譯仍有可能是最接近的。但它確實表明,英語句子的嵌入可能比起語義完全相同或幾乎相同的德語句子,更接近另一個英語句子。

還要注意德語和荷蘭語形成的聚類比其他語言對更接近。對於這兩種相對密切相關的語言來說,這並不令人驚訝。德語和荷蘭語的相似程度有時甚至可以部分互相理解。

日語和中文也似乎比其他語言更接近。雖然它們之間的關係不同,但書面日語通常使用漢字(漢字),中文稱為「漢字」。日語與中文共享大多數這些書面字符,兩種語言都有許多由一個或多個漢字組成的共同詞彙。從 MLM 的角度來看,這與荷蘭語和德語之間的可見相似性是相同的。

我們可以通過只看兩種語言的兩個句子,以更簡單的方式看到這種「語言差距」:

Graph illustrating linguistic relationships with color-coded lines, data points for English and German phrases, and an "MLM P

由於 MLM 似乎自然地按語言將文本聚集在一起,「my dog is blue」和「my cat is red」被聚集在一起,遠離它們的德語對應詞。與先前部落格文章中討論的「模態差距」不同,我們認為這源於語言之間的表面相似性和差異性:相似的拼寫、印刷中相同字符序列的使用,以及可能在形態和句法結構上的相似性 — 常見的詞序和構詞方式。

簡而言之,無論模型在 MLM 預訓練中學習跨語言等效性的程度如何,這都不足以克服按語言聚集文本的強烈偏差。這留下了一個巨大的語言差距。

tag對比學習

理想情況下,我們希望嵌入模型對語言無差別,只在其嵌入中編碼一般含義。在這樣的模型中,我們將看不到按語言聚集的情況,也不會有語言差距。一種語言的句子應該與其良好的翻譯非常接近,而與其他意思不同的句子相距較遠,即使是同一語言,如下圖所示:

Graph displays "Clustering by Meaning" with multilingual labels, emphasizing abstract concepts on a dark backdrop.

MLM 預訓練無法實現這一點,所以我們使用額外的對比學習技術來改善嵌入中的語義表示。

對比學習涉及使用已知在含義上相似或不同的文本對,以及其中一對比另一對更相似的三元組。在訓練過程中調整權重以反映文本對和三元組之間的這種已知關係。

我們的對比學習數據集中包含 30 種語言,但 97% 的對和三元組都是在單一語言中,只有 3% 涉及跨語言對或三元組。但這 3% 足以產生戲劇性的結果:嵌入顯示很少語言聚集,且語義相似的文本會產生接近的嵌入,無論它們的語言如何,這在 jina-embeddings-v3 的 UMAP 投影中可以看到。

Scatter plot on black background showing language distribution post-contrastive training with UMAP dimensions.

為了確認這一點,我們在 STS17 資料集上測量了 jina-xlm-roberta 和 jina-embeddings-v3 生成的表示之間的 Spearman 相關性。

💡
Spearman 相關性測量排序相關性,即兩個有序列表的相似程度。這是比較 embedding 模型之間以及與人類評分的好機制,因為實際分數遠不如哪些項目排在其他項目之上或之下重要。

下表顯示了不同語言翻譯文本的語義相似性排名之間的 Spearman 相關性。我們取一組英語句子,然後測量它們的 embeddings 與特定參考句子的 embedding 之間的相似度,並按照從最相似到最不相似的順序排序。然後我們將所有這些句子翻譯成另一種語言並重複排序過程。在理想的跨語言 embedding 模型中,這兩個有序列表應該相同,Spearman 相關性應為 1.0。

下面的圖表和表格顯示了我們使用 jina-xlm-roberta 和 jina-embeddings-v3 比較英語與 STS17 基準中其他六種語言的結果。

Bar chart comparing Spearman Correlation for English paired with AR, DE, ES, FR, IT, NL, colored in red and blue by alphabet
Task jina-xlm-roberta jina-embeddings-v3
English ↔ Arabic 0.1581 0.7977
English ↔ German 0.2136 0.8366
English ↔ Spanish 0.1049 0.8509
English ↔ French 0.1659 0.8378
English ↔ Italian 0.2293 0.8674
English ↔ Dutch 0.2387 0.8398

你可以看到對比學習與原始預訓練相比帶來了巨大的差異。儘管在訓練組合中只有 3% 的跨語言數據,jina-embeddings-v3 模型已經學會了足夠的跨語言語義,幾乎消除了它在預訓練中獲得的語言差距。

tag英語對比世界:其他語言能否在對齊方面保持同步?

我們在 89 種語言上訓練了 jina-embeddings-v3,特別關注 30 種使用非常廣泛的書面語言。儘管我們努力建立大規模的多語言訓練語料庫,英語仍然佔我們在對比訓練中使用的數據的近一半。其他語言,包括那些有大量文本材料可用的廣泛使用的全球語言,相比訓練集中龐大的英語數據而言,仍然相對代表性不足。

考慮到英語的這種主導地位,英語表示是否比其他語言的表示更加對齊?為了探索這一點,我們進行了一項後續實驗。

我們建立了一個數據集 parallel-sentences,包含 1,000 對英語文本,一個"錨點"和一個"正例",其中正例文本在邏輯上蘊含於錨點文本。

jinaai/parallel-sentences · Datasets at Hugging Face
We're on a journey to advance and democratize artificial intelligence through open source and open science.

例如下表中的第一行。這些句子在意義上並不完全相同,但它們具有相容的含義。它們以信息豐富的方式描述了相同的情況。

然後,我們使用 GPT-4 將這些句對翻譯成五種語言:德語、荷蘭語、簡體中文、繁體中文和日語。最後,我們手動檢查以確保質量。

Language Anchor Positive
English Two young girls are playing outside in a non-urban environment. Two girls are playing outside.
German Zwei junge Mädchen spielen draußen in einer nicht urbanen Umgebung. Zwei Mädchen spielen draußen.
Dutch Twee jonge meisjes spelen buiten in een niet-stedelijke omgeving. Twee meisjes spelen buiten.
Chinese (Simplified) 两个年轻女孩在非城市环境中玩耍。 两个女孩在外面玩。
Chinese (Traditional) 兩個年輕女孩在非城市環境中玩耍。 兩個女孩在外面玩。
Japanese 2人の若い女の子が都市環境ではない場所で遊んでいます。 二人の少女が外で遊んでいます。

然後,我們使用 jina-embeddings-v3 對每對文本進行編碼,並計算它們之間的餘弦相似度。下面的圖表和表格顯示了每種語言的餘弦相似度分數分布和平均相似度:

Graph showing cosine similarity distributions for textual pairs in English, German, Dutch, Chinese, and Japanese against dens
Language Average Cosine Similarity
English 0.9078
German 0.8949
Dutch 0.8844
Chinese (Simplified) 0.8876
Chinese (Traditional) 0.8933
Japanese 0.8895

儘管英語在訓練數據中占主導地位,jina-embeddings-v3 在德語、荷蘭語、日語和兩種形式的中文中識別語義相似性的能力與英語相當。

tag打破語言障礙:超越英語的跨語言對齊

跨語言表示對齊的研究通常著重於包含英語的語言對。這種關注點在理論上可能會掩蓋真實的情況。模型可能只是優化將所有內容儘可能地貼近其英語對應項,而沒有檢驗其他語言對是否得到適當支援。

為了探索這一點,我們使用 parallel-sentences 資料集進行了一些實驗,重點關注超越英語雙語對的跨語言對齊。

下表顯示了不同語言對之間等效文本(即源自相同英語文本的翻譯)的餘弦相似度分佈。理想情況下,所有語言對的餘弦值應為 1 — 即完全相同的語義嵌入。實際上,這種情況不可能發生,但我們期望一個好的模型在翻譯對之間有很高的餘弦值。

Density graph charting cross-lingual cosine similarities for language pairs using jina-embeddings-v3 model.
Language Pair Average Cosine Similarity
German ↔ Dutch 0.8779
German ↔ Japanese 0.8664
Chinese (Simplified) ↔ Japanese 0.8534
Dutch ↔ Chinese (Simplified) 0.8479
Chinese (Simplified) ↔ Chinese (Traditional) 0.8758

雖然不同語言之間的相似度得分比同一語言中相容文本的得分略低,但仍然非常高。荷蘭語/德語翻譯之間的餘弦相似度幾乎與德語中相容文本之間的相似度一樣高。

這可能並不令人驚訝,因為德語和荷蘭語是非常相似的語言。同樣,這裡測試的兩種中文變體實際上並不是兩種不同的語言,只是同一語言的不同風格形式。但你可以看到,即使是像荷蘭語和中文或德語和日語這樣非常不同的語言對,在語義等效的文本之間仍然表現出很強的相似性。

我們考慮到這些非常高的相似值可能是使用 ChatGPT 作為翻譯器的副作用。為了測試這一點,我們下載了人工翻譯的 TED Talks 英語和德語字幕,並檢查對齊的翻譯句子是否具有相同的高相關性。

結果比我們的機器翻譯數據更強,如下圖所示。

Graph of cross-lingual alignment density EN-DE with peak around cosine similarity 1.0, titled "jina-embeddings-v3: Cross-ling

tag跨語言資料對跨語言對齊的貢獻有多大?

語言差距的消失和跨語言性能的高水準似乎與訓練資料中明確的跨語言部分(僅 3%)不成比例。只有 3% 的對比訓練資料明確教導模型如何在語言之間進行對齊。

因此我們進行了一項測試,以查看跨語言是否有任何貢獻。

完全重新訓練不包含任何跨語言資料的 jina-embeddings-v3 對於一個小實驗來說成本太高,所以我們從 Hugging Face 下載了 xlm-roberta-base 模型,並使用我們訓練 jina-embeddings-v3 時使用的部分資料進行對比學習。我們專門調整了跨語言資料的數量以測試兩種情況:一種完全沒有跨語言資料,另一種有 20% 的語言對是跨語言的。下表顯示了訓練的元參數:

Backbone% Cross-LanguageLearning RateLoss FunctionTemperature
xlm-roberta-base without X-language data0%5e-4InfoNCE0.05
xlm-roberta-base with X-language data20%5e-4InfoNCE0.05

然後,我們使用來自 MTEB 的 STS17 和 STS22 基準測試以及斯皮爾曼相關係數評估了兩個模型的跨語言性能。結果如下:

tagSTS17

Bar graph showing Spearman correlation for language pairs on STS17 with and without parallel corpus.
Language PairWith parallel corporaWithout parallel corpora
English ↔ Arabic0.64180.5875
English ↔ German0.73640.7390
English ↔ Spanish0.69680.6799
English ↔ French0.70660.6944
English ↔ Italian0.72320.7070
English ↔ Dutch0.75970.7468
English ↔ Turkish0.69330.6050

tagSTS22

Chart comparing models of language alignment, showing Spearman correlation scores for eight language pairs with and without p
語言對使用平行語料庫不使用平行語料庫
English ↔ Spanish0.77100.7675
Simplified Chinese ↔ English0.68850.6860
Spanish ↔ Italian0.68290.6814
German ↔ French0.57630.5496
German ↔ English0.54390.5566
Polish ↔ English0.69660.7156
German ↔ English0.58320.5478
French ↔ Polish0.84510.8451

令我們驚訝的是,對於我們測試的大多數語言對來說,跨語言訓練數據幾乎沒有帶來任何改進。雖然無法確定在使用更大數據集的完整訓練模型中是否依然如此,但這確實證明了顯式的跨語言訓練並沒有增加太多價值。

不過,需要注意的是 STS17 包含了英語/阿拉伯語和英語/土耳其語對。這兩種語言在我們的訓練數據中的代表性都相對較低。我們使用的 XML-RoBERTa 模型在預訓練數據中,阿拉伯語僅佔 2.25%,土耳其語僅佔 2.32%,遠低於我們測試的其他語言。在這個實驗中使用的小型對比學習數據集中,阿拉伯語僅佔 1.7%,土耳其語僅佔 1.8%。

這兩個語言對是測試中唯一使用跨語言數據訓練能夠產生明顯差異的語言對。我們認為,對於在訓練數據中代表性較低的語言,顯式跨語言數據可能更有效,但在得出結論之前需要進行更多探索。跨語言數據在對比訓練中的作用和效果是 Jina AI 正在積極研究的領域。

tag結論

傳統的語言預訓練方法(如遮蔽語言建模)會留下"語言差距",導致不同語言中語義相似的文本無法像應有的那樣緊密對齊。我們已經證明,Jina Embeddings 的對比學習方案在減少或甚至消除這種差距方面非常有效。

為什麼這種方法有效,其原因尚不完全清楚。我們在對比訓練中使用了顯式的跨語言文本對,但數量很少,而且它們在確保高質量跨語言結果方面實際發揮了多大作用還不清楚。我們嘗試在更受控的條件下展示明確效果,但並未得到明確的結果。

然而,很明顯 jina-embeddings-v3 已經克服了預訓練中的語言差距,使其成為多語言應用的強大工具。它已經可以用於任何需要跨多種語言保持相同強大性能的任務。

您可以通過我們的 Embeddings API(提供一百萬個免費 token)或通過 AWS 或 Azure 使用 jina-embeddings-v3。如果您想在這些平台之外或在公司內部使用它,請記住它是在 CC BY-NC 4.0 許可下授權的。如果您對商業使用感興趣,請聯繫我們。

類別:
技術文章
rss_feed
辦公室
location_on
加利福尼亞州桑尼維爾
710 Lakeway Dr, Ste 200, 桑尼維爾, CA 94085, 美國
location_on
德國柏林(總部)
Prinzessinnenstraße 19-20,10969 柏林,德國
location_on
中國北京
中國北京市海淀區西大街48號6號樓5層
location_on
中國深圳
中國深圳市賦安科技大廈4樓402
搜索底座
讀取器
向量模型
重排器
深度搜索
分類器
切分器
API 文檔
獲取 Jina API 密鑰
速率限制
API 狀態
公司
關於我們
聯繫銷售
新聞
實習生計劃
加入我們
open_in_new
下載Logo
open_in_new
條款
安全
條款及條件
隱私
管理 Cookie
email
Jina AI © 2020-2025.