選單

華為諾亞開源首個億級中文多模態資料集-悟空,填補中文NLP社群一大空白

選自arXiv

作者:Jiaxi Gu等

機器之心編譯

編輯:Juniper

華為諾亞方舟實驗室的研究者提出了一個大規模的中文的跨模態資料庫 ——「悟空」,並在此基礎上對不同的多模態預訓練模型進行基準測試,有助於中文的視覺語言預訓練演算法開發和發展。

在大資料上預訓練大規模模型,對下游任務進行微調,已經成為人工智慧系統的新興正規化。BERT 和 GPT 等模型在 NLP 社群中越來越受歡迎,因為它們對廣泛的下游任務甚至零樣本學習任務具有很高的可遷移性,從而產生了 SOTA 效能。最近的工作,如 CLIP、ALIGN 和 FILIP 進一步將這一正規化擴充套件到視覺語言聯合預訓練 (VLP) 領域,並在各種下游任務上顯示出優於 SOTA 方法的結果。這一有希望的方向引起了行業和研究人員的極大關注,將其視為通向下一代 AI 模型的途徑。

促成 VLP 模型成功的原因有兩個。一方面,更高階的模型架構(如 ViT/BERT)和訓練目標(如對比學習)通常能夠提升模型泛化能力和學得表示的穩健性。另一方面,由於硬體和分散式訓練框架的進步,越來越多的資料可以輸入到大規模模型中,來提高模型的泛化性、可遷移性和零樣本能力。在視覺或者語言任務中,先在大規模資料(例如影象分類中的 JFT-300M、T5 中的 C4 資料集)上預訓練,之後再透過遷移學習或者 prompt 學習已被證明對提高下游任務效能非常有用。此外,最近的工作也已經顯示了 VLP 模型在超過 1 億個來自網路的有噪聲影象 - 文字對上訓練的潛力。

因此,在大規模資料上預訓練的 VLP 模型的成功促使人們不斷地爬取和收集更大的圖文資料集。下表 1 顯示了 VLP 領域中許多流行的資料集的概述。諸如 Flickr30k、SBU Captions 和 CC12M 等公開可用的視覺語言(英語)資料集的樣本規模相對較小(大約 1000 萬),而規模更大的是像 LAION-400M 的資料集。但是,直接使用英文資料集來訓練模型會導致中文翻譯任務的效能大幅下降。比如,大量特定的中文成語和俚語是英文翻譯無法覆蓋的,而機器翻譯往往在這些方面會帶來錯誤,進而影響任務執行。

華為諾亞開源首個億級中文多模態資料集-悟空,填補中文NLP社群一大空白

目前,社群缺乏大規模公開可用的中文資料集,不僅導致社群發展受阻,而且每項工作都使用一個私密的大型資料集來實現,達到一個其它工作無法公平比較的驚人效能。

為了彌補這一差距,華為諾亞方舟實驗室的研究者釋出了一個名為「悟空」的大型中文跨模態資料集,其中包含來自網路的 1 億個圖文對。為了保證多樣性和泛化性,悟空資料集是根據一個包含 20 萬個高頻中文單詞列表收集的。本文還採用基於影象和基於文字的過濾策略來進一步完善悟空資料集,使其成為了迄今為止最大的中文視覺語言跨模態資料集。研究者分析了該資料集,並表明它涵蓋了廣泛的視覺和文字概念。

華為諾亞開源首個億級中文多模態資料集-悟空,填補中文NLP社群一大空白

論文地址:https://arxiv。org/pdf/2202。06767。pdf

資料集地址:https://wukong-dataset。github。io/wukong-dataset/benchmark。html

研究者還進一步釋出了一組使用不同架構(ResNet/ViT/SwinT)和不同方法(CLIP、FILIP 和 LiT)大型預訓練模型。本文的主要貢獻如下:

釋出了具有 1 億個圖文對的大規模視覺和中文語言預訓練資料集,涵蓋了更全面的視覺概念;

釋出了一組使用各種流行架構和方法預訓練好的大規模視覺 - 語言模型,並提供針對已釋出模型的全面基準測試;

釋出的預訓練模型在數箇中文基準測試任務,例如由 17 個數據集組成的零樣本影象分類任務和由 5 個數據集組成的影象文字檢索任務,表現出了最優效能。

「悟空」資料集

研究者構建了一個名為悟空的新資料集,該資料集包含從網路收集的 1 億個圖文對。為了涵蓋足夠多樣的視覺概念,悟空資料集是由包含 20 萬個詞條的查詢列表裡收集的。這個基礎查詢列表取自 Yan Song 等人的論文《Directional Skip-Gram: Explicitly Distinguishing Left and Right Context for Word Embeddings》,然後根據華為的海量新聞文字語料庫中出現的中文單詞和短語的頻率進行過濾後所得。

查詢列表建好後,研究者在百度圖片搜尋每個查詢,以獲取圖片 URL 列表和相應的標題資訊。為了保持不同查詢結果間的平衡,他們每個查詢最多搜尋 1000 個樣本。然後使用先前獲得的影象 URL 下載影象,最終共收集了 1。66 億個圖文對。然後按照慣例,研究者透過下文的一系列過濾策略來構建最終的悟空資料集。下圖 2 顯示了悟空資料集中的一些樣本。

華為諾亞開源首個億級中文多模態資料集-悟空,填補中文NLP社群一大空白

基於影象的過濾

研究者首先根據影象的大小和長寬比對資料進行過濾。只保留長或寬超過 200 畫素且長寬比不超過 3 的影象。這種方式過濾掉了太小、太高或太寬的影象,因為這些影象在預訓練期間經過上取樣和方形裁剪等影象增強手段後,可能變成低解析度。

基於文字的過濾

其次,為了使選擇的樣本具有對應影象的高質量中文描述,研究者根據影象所附文字的語言、長度和頻率對資料進行進一步過濾。具體來說,他們首先檢查了語言和長度,保留了包含至少一個但少於 32 個漢字的句子。同時還會丟棄無意義的影象描述,例如「000。jpg」。之後,與太多圖片配對的文字通常與圖片內容無關,例如「檢視源網頁」(View source page)、「展開全文」(Expand text)、「攝影部落」(Photography community)。實際中,研究者將此閾值設定為 10,即丟棄掉在收集的整個語料庫中出現超過 10 次的圖文對。

為了保護文字中出現的個人隱私,研究者將人名替換為特殊標記「」,此外,他們還構建了一箇中文敏感詞列表,包含敏感詞的圖文對也被丟棄。

應用上述過濾策略後,研究者最終得到一個約 1 億對的資料集。下表 2 顯示了資料集的統計量:資料集文字中有 20,442 個唯一 token,每個描述中的平均 token 數為 22。

華為諾亞開源首個億級中文多模態資料集-悟空,填補中文NLP社群一大空白

在下圖 3 中,研究者可視化了資料集中單詞(由一個或多個 token 組成)的分佈。然後,他們使用中文文字分詞工具 Jieba 來擷取單詞並構建資料集的詞雲。

華為諾亞開源首個億級中文多模態資料集-悟空,填補中文NLP社群一大空白

方法架構

文字 - 影象聯合對齊

與最近經過充分驗證的方法類似,研究者採用了對比預訓練架構,如下圖 1 所示。他們使用一個帶有基於 Transformer 的文字和影象編碼器的雙流模型。這兩個編碼器將文字和視覺輸入 token 轉換為相同維度的嵌入。在這個學習到的聯合嵌入空間中,研究者使用對比損失來鼓勵成對的影象和文字具有相似的嵌入,而不成對的具有不同的嵌入。

華為諾亞開源首個億級中文多模態資料集-悟空,填補中文NLP社群一大空白

模型架構

由於視覺和文字模態的編碼器是解耦的,因此可以為這兩種模態探索不同的編碼器架構。研究者試驗了三種視覺編碼器變體(即 ResNet、Vision Transformer 和 Swin Transformer)以及一個單一的類 BERT 文字編碼器來訓練中文 VLP 模型。

預訓練目標

跨模態對比學習是一種從成對的影象 - 文字資料中訓練模型的特別有效的方法,它可以透過區分成對和不成對的樣本同時學習兩種模態的表示。研究者遵循 FILIP(Yao 等人,2022)中的公式標記,使用去定義影象樣本集合,同時代表文本資料。給定一個影象樣本和一個文字樣本,該模型的目標是讓聯合多模態空間中的配對的影象和文字表示接近,不配對的則遠離。

在這項工作中,研究者探索了兩種衡量影象和文字之間相似度的方法。影象和文字的學得表示分別標記為和。這裡,n_1 和 n_2 是每個圖片和文字中的(未填充的)詞 token 的數量。

LiT-tuning

研究者受到了最近提出的一種微調正規化 LiT-tuning(Locked-image Text tuning)的啟發,該正規化表明權重固定的影象編碼器和可學習的文字編碼器在 VLP 模型中效果最好。他們在對比學習設定中也採用了同樣的方式,即只更新文字編碼器的權重,而不更新影象編碼器的權重。

具體而言,研究者採用的 LiT-tuning 方法旨在教一箇中文的文字編碼器從一個現有的影象編碼器中讀取合適的表示,該影象編碼器是在英文資料集上預訓練過。他們還為每個編碼器添加了一個可選的可學習線性變換層,它將兩種模式的表示對映到相同的維度。LiT-tuning 之所以效果很好,是因為它解耦了用於學習影象特徵和視覺語言對齊的資料來源和技術(Zhai 等人,2021b)。並且,影象描述器事先使用相對乾淨或(半)手動標記的影象進行了良好的預訓練。

研究者將這一想法擴充套件到多語言資料來源,並嘗試將在英文資料來源上預訓練的固定了的影象編碼器和可訓練的中文文字編碼器對齊。此外,LiT-tuning 方法顯著加快了訓練過程並減少了記憶體需求,因為它不需要為視覺編碼器計算梯度。

實驗結果

下表 3 描述了模型引數和影片編碼器的細節。

華為諾亞開源首個億級中文多模態資料集-悟空,填補中文NLP社群一大空白

零樣本影象分類

。研究者在 17 個零樣本影象分類任務上評估預訓練模型。零樣本影象分類的結果如下表 5 所示。他們比較了使用不同視覺編碼器的多個 LiT -tuning 模型,即從 CLIP 或 Swin Transformer 載入現有的視覺編碼器並在訓練階段固定它們的權重。結果發現,使用 token 水平的相似度比使用全域性相似度會帶來更顯著的改進。

華為諾亞開源首個億級中文多模態資料集-悟空,填補中文NLP社群一大空白

圖文檢索任務

。研究者在兩個子任務,即以圖搜文和以文搜圖上做了評估。下表 6 和表 7 分別顯示了零樣本設定和可以微調的圖文檢索的結果。對於零樣本設定,相比其它模型,Wukong_ViT 在 4 個數據集中的 3 個上取得了最好的結果,而 Wukong_ViT-500M 在更大的 MUGE 資料集上取得了最好的結果。對於微調設定,Wukong_ViT-500M 則在除 AIC-ICC 之外的所有資料集上都取得了最好的結果,其中 Wukong_ViT 效果最好。

華為諾亞開源首個億級中文多模態資料集-悟空,填補中文NLP社群一大空白

詞彙 - 圖塊對齊的視覺化

。研究者使用預訓練模型 Wukong_ViT 和 Wukong_Swin 進 行視覺化。如圖 4 所示,其中視覺化來自中文的 ImageNet 的六個標籤(即豆娘、救生艇、蜂鳥、平板手機、教堂和電風扇)的影象。然後應用與 FILIP(Yao 等人,2022)相同的視覺化方法來對齊文字和圖塊 token。

從下圖 4 中,研究者發現兩種模型都能夠預測目標物體的影象塊。對於具有更多影象塊的 Wukong_ViT,這種詞彙 - 圖塊對齊比 Wukong_Swin 更加細粒度。

華為諾亞開源首個億級中文多模態資料集-悟空,填補中文NLP社群一大空白