0
本文作者: camel | 2020-02-07 16:33 |
雷鋒網(wǎng)AI科技評(píng)論按:當(dāng)前自然語言處理中的大多數(shù)方法都是數(shù)據(jù)驅(qū)動(dòng)的,大多數(shù)多語言模型(特別是神經(jīng)機(jī)器翻譯系統(tǒng))都需要并行語料庫(kù)進(jìn)行訓(xùn)練。大多數(shù)的并行文本都只是適用于幾個(gè)主要語言(例如英語、漢語),且限制于特定的領(lǐng)域。
為了解決這一問題,在去年七月份,F(xiàn)acebook曾發(fā)布了第一個(gè)系統(tǒng)處理Wikipedia上所有語言(包括資源貧乏的語言和方言)的數(shù)據(jù)集WikiMatrix,大約包含了億級(jí)的并行語料,覆蓋1620種語言對(duì)。
據(jù)雷鋒網(wǎng)AI科技評(píng)論了解,最近Facebook基于新的方法和數(shù)據(jù)源,開發(fā)并開源了一個(gè)目前為止最大的并行語料數(shù)據(jù)集 CCMatrix。這個(gè)數(shù)據(jù)集包含 45 億并行語料(是WikiMatrix的近50倍),覆蓋576種語言對(duì)。
論文:https://arxiv.org/abs/1911.04944
數(shù)據(jù)集開源地址:https://github.com/facebookresearch/LASER/tree/master/tasks/CCMatrix
首先,從語料來源上講。目前有幾個(gè)公共的多語言并行語料庫(kù),主要來自一些國(guó)際會(huì)議(如European Parliament 、the United Nations)的語料,這些都是專業(yè)的人工翻譯語料,使用語言較為正式,且僅限于政治主題。此外也有幾個(gè)依靠志愿者翻譯而形成的語料庫(kù),例如news commentary 、Opensub- Titles 、the TED corpus等。2019年Facebook的Schwenk等人曾利用Wikipedia中的語料進(jìn)行挖掘,從而開發(fā)了WikiMatrix數(shù)據(jù)集。
以上這些,從數(shù)據(jù)來源上講都有局限。為了使并行語料庫(kù)量大、覆蓋主題廣泛,F(xiàn)acebook在CCMatrix這項(xiàng)工作中,選擇使用了隨機(jī)抓取web中的數(shù)據(jù)作為并行語料的來源,他們每個(gè)月隨機(jī)發(fā)送url,從而獲得包含各種語言的網(wǎng)頁快照(TB級(jí))。
十次快照語料中,不同語言的單句數(shù)量(其中一次快照只包含英語)
然后通過預(yù)處理去除高達(dá)70%的重復(fù)數(shù)據(jù)(例如模板文件、導(dǎo)航菜單、cookie等),并使用fastText(語言識(shí)別器,可以識(shí)別176種語言)來識(shí)別文檔中的語言,最后使用一個(gè)在Wikipedia上訓(xùn)練的模型來過濾掉低質(zhì)量的內(nèi)容,只保留較低困惑度的文檔。如此處理獲得一個(gè)包含有327億個(gè)句子的CCNet數(shù)據(jù)集。
在這項(xiàng)工作中,使用的挖掘方法的底層思想是,首先學(xué)習(xí)一種多語言的語義嵌入,即在一個(gè)嵌入空間中語義上相似的句子會(huì)有較近的距離,而與它們所使用的語言無關(guān)。這意味著空間中的距離可以作為兩個(gè)句子是否是相互翻譯的指標(biāo)。
用于大規(guī)模訓(xùn)練多語言句嵌入的框架
不過由于余弦距離的絕對(duì)閾值在全局上并不一致,所以Schwenk在這里所采用的是Margin criterion:
在超過320億個(gè)句子中挖掘平行語料,計(jì)算上是非常昂貴的。在當(dāng)前版本的CCMatrix語料庫(kù)中,作者限制為38種語言。
CCMatrix:這里給出了單語文本的數(shù)量和提取的平行句子的數(shù)量(單位:百萬),margin閾值為1.06,以及在TED測(cè)試中的BLEU分?jǐn)?shù)。(編者注:這是11月份數(shù)據(jù),當(dāng)時(shí)數(shù)據(jù)集規(guī)模為35億并行語料,下同)
CCMatrix:每種語言對(duì)的并行語料數(shù)量(單位:百萬),Margin閾值為1.06。舉例來說,希臘語/漢語對(duì)的語料數(shù)量為470萬。
為了評(píng)估這個(gè)數(shù)據(jù)集的質(zhì)量,Schwenk等人還利用這個(gè)數(shù)據(jù)集進(jìn)行了神經(jīng)機(jī)器翻譯系統(tǒng)的測(cè)試,并與幾個(gè)公共測(cè)試集進(jìn)行了對(duì)比。
Schwenk等人首先用CCMatrix對(duì)神經(jīng)翻譯系統(tǒng)(NMT)進(jìn)行訓(xùn)練,然后在TED數(shù)據(jù)集上進(jìn)行測(cè)試,結(jié)果如下:
這里只選擇了其中的27種語言。以上所有BLEU值的平均值為14.3,英語對(duì)的平均BLEU值為26.7,最高的BLEU值為42.9。
當(dāng)然,在TED上的SOTA遠(yuǎn)比這些高;但需要注意,這里測(cè)試所用的NMT系統(tǒng)沒有使用Transformer框架等最新技術(shù)。
上圖是在Newstest'18(NT'18)和Newtest'19(NT‘19)測(cè)試集上的BLEU分?jǐn)?shù)??梢钥吹?,使用CCMatrix,可以提供非常有競(jìng)爭(zhēng)力的BLEU分?jǐn)?shù)。
利用CCMatrix在亞洲翻譯研討會(huì)的俄語/日語翻譯任務(wù)上進(jìn)行的測(cè)試如上圖所示。這里所使用的模型與前面一樣,沒有Transformer,沒有l(wèi)ayer dropout。盡管相比SOTA略差,但仍然在同一層次。
CCMatrix使NMT研究社區(qū)能夠利用比以前僅幾十種語言對(duì)更大的雙語料數(shù)據(jù)集。這可以加速創(chuàng)建更有效的NMT模型,這些模型可以使用更多的語言,尤其是語料庫(kù)相對(duì)有限的資源較少的模型。
由于規(guī)模龐大且使用了大量公共文本,或許CCMatrix將成為NMT領(lǐng)域中用于構(gòu)建和評(píng)估系統(tǒng)的最常用資源之一。
當(dāng)然,F(xiàn)acebook在構(gòu)建CCMatrix過程中所提出的數(shù)據(jù)集構(gòu)建方法更值得推廣,或許能夠幫助更多人來創(chuàng)建大規(guī)模數(shù)據(jù)集。
參考資料:
facebook開源官宣:https://ai.facebook.com/blog/ccmatrix-a-billion-scale-bitext-data-set-for-training-translation-models/CCMatrix
論文:https://arxiv.org/abs/1911.04944CCMatrix
開源鏈接:https://github.com/facebookresearch/LASER/tree/master/tasks/CCMatrix
雷鋒網(wǎng)報(bào)道。
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。