自然言語の事前トレーニングを10倍高速化する方法

自然言語の事前トレーニングを10倍高速化する方法

近年、自然言語処理における事前トレーニングは研究分野でホットな話題となっており、有名なGPT-3も新たな波を巻き起こしています。しかし、誰もが知っているように、このような大規模なモデルのトレーニングには大量のリソースが必要です。Wikipedia データで単純な BERT-Base モデルをトレーニングする場合でも、多数の GPU を使用して 1 ~ 2 週間のトレーニングが必要です。GPU の購入コストは言うまでもなく、電気代だけでも数万ドルの費用がかかります。このような消費は、業界の少数の大企業によってのみ達成可能であり、非常に高いハードルが関連分野の探求と全体的な開発を制限しています。

[[377234]]

事前トレーニングの導入ハードルを下げるために、Microsoft Research Asia の機械学習グループの研究者は、機械学習のさまざまな観点から、事前トレーニングのさまざまな側面を加速する方法を提案しました。具体的には、研究者らは新しいTransformerベースの構造TUPEを提案し、BERTの効率的なデータ利用戦略を設計し、人間の学習に似た事前トレーニングタスクを拡張しました。

最初の 2 つの作品は、新しくリリースされた ICLR 2021 に採択されました。これらの方法は、単独で使用することも、組み合わせて使用​​することもでき、さらなる高速化を実現できます。これまで 10 日間かかっていたトレーニングが、たった 1 日で完了できるようになりました。

Transformer に基づく新しい構造 TUPE (ICLR 2021)

誰もが位置埋め込みについて知っていますが、この設計は本当に効率的で合理的でしょうか?

Transformer 構造は異なる位置からの単語を認識できないため、モデルは通常、位置表現によって支援される必要があります。最も簡単な方法は、位置表現を入力単語ベクトルに直接追加することですが、単語ベクトルと位置ベクトルを追加するのは正しい選択でしょうか?

単語ベクトルの加算と減算の演算では意味を維持できますが、位置ベクトル自体には意味がありません。この 2 つを追加すると、モデルの学習が難しくなりますか?最初のレイヤーで Transformer の注意重みを拡張すると、次のようになります。

上記の展開された式から、2 つの問題が見つかります。

まず、中央の 2 つの項目は単語と位置情報の交差を導入しますが、特定の位置が特定の単語と強く関連している必要があると言う理由はありません (論文の詳細な実験分析では、中央の 2 つの項目に一定の冗長性があることも示されています)。

2 番目に、最初の項目と 4 番目の項目はそれぞれ単語と位置の関連性を計算しますが、同じパラメーター化された関数 (W^Q と W^K) を使用するため、注意表現能力が制限されます。

上記の 2 つの問題を解決するために、Microsoft Research Asia の研究者はいくつかの簡単な変更を加えました。

簡単に言えば、位置とテキスト (トークン) の交差が削除され、異なる変換マトリックスが使用されます。

BERT などの多層 Transformer モデルでは、上記の式の 2 番目の項が異なるレイヤー間で共有されることに注意してください。したがって、計算は一度だけ行えばよく、追加の計算コストは​​ほとんど発生しません。

図1: TUPE (位置エンコーディング非依存型トランスフォーマー) の全体構造

図2: 実験結果

さらに、研究者らは、局所的な部分に重点を置きすぎることで文全体の情報を無視することがないよう、[CLS]トークンの位置も特別に処理しました。全体的なTUPE(Transformer with Untied Positional Encoding)構造を図1に示します。

実験結果を図 2 に示します。この方法は、最終的にベースラインよりもはるかに優れているだけでなく、1000k ステップのベースラインの効果を 30% (300k ステップ) で達成できることが分かります。

TUPE の全内容は、https://openreview.net/forum?id=09-528y2Fgf でご覧いただけます。

効率的なデータ活用: BERT が人間のようにメモを取る (ICLR 2021)

言語データセットでは、単語は通常非常に長い尾を持つ分布を持ち、つまりデータセット全体で多数の単語の出現頻度が非常に低いことがよく知られています。しかし、これらの低頻度単語の単語ベクトルは、トレーニング品質が低いことがよくあります。

これらの低品質の単語ベクトルにより、モデルがトレーニング文全体を理解するのが難しくなり、その結果、モデルの事前トレーニング全体の速度が低下します。

例えば、図3に示すように、「COVID-19」が低頻度の単語である場合、クローズテストを行う人がその意味を知らないと、正しい単語を埋めることは非常に困難になります。同様の問題は、自然言語の事前トレーニング中にも発生する可能性があります。

図3: 低頻度語

そこで、マイクロソフト リサーチ アジアの研究者は、低頻度語を動的にメモする方法である Taking Notes on the Fly (TNF) を提案しました。この方法は、過去にまれな単語が出現した文の情報を記録し、モデルが低頻度語を再度見たときに、より完全に理解できるようにします。

図3に示すように、研究者は、モデルが「COVID-19パンデミックは現在進行中の世界的危機である」という注釈から「COVID-19」が生命に関連していることを推測し、タスクを理解しやすくなり、上記の穴埋め問題「生命」の答えを導き出すことを期待しています。

具体的には、TNF はメモの辞書を維持します。この注釈辞書では、低頻度単語ごとに文脈表現ベクトル(Contextual presentation)が注釈として保持されています。

単語が出現すると、TNF はノート辞書からそのコンテキスト表現ベクトルを取得し、その単語ベクトルとともに、その位置のモデルの入力を形成します。また、この単語のノートの内容を更新します。図4に示すように:

図4: TNFトレーニングプロセス

研究者らは、実験のために、よく知られた効果的な言語事前トレーニング方法である BERT と ELECTRA に TNF を適用しました。また、事前トレーニング済みモデルを GLUE で微調整し、比較しました。

実験結果によると、両方の事前トレーニング方法では、TNF がベースラインと同じ実験結果を達成した場合、TNF のトレーニング時間はベースラインの 40% に過ぎません (図 5 を参照)。

図5: TNFトレーニング曲線

TNF をベースラインと同じ反復回数でトレーニングすると、GLUE およびほとんどのサブタスクの平均 GLUE スコアの点で、TNF はベースラインを上回ります。

TNF の全作品は、https://openreview.net/forum?id=lU5Rs_wCweN でご覧いただけます。

合理的な事前トレーニングの目標: BERTはABCDの複数選択問題を実行することを好む

現在、多くの事前トレーニング済みモデルは、入力文の一部をマスクし、モデルにマスクされた部分を復元させるマスク言語モデルタスクを使用しています。このタスクは実際には「穴埋め」問題に相当しますが、試験でよく見られる穴埋めとは異なり、自然言語の事前トレーニングにおける穴埋めオプションは辞書全体です。

明らかに、人間にとっても、代替の答えがないオープンな環境でこの「穴埋め」タスクを正確に完了することは非常に困難です。

図6: 複数選択タスク

実際、人間にとっては、複数選択や真偽の質問に回答する方が簡単です。選択肢が限られているため、タスクの難易度は大幅に軽減されます。有名な「ELECTRA」モデルは判断問題を採用しています。初期に設計された判断問題は簡単なので、トレーニング効率が非常に高いです。

モデルがトレーニングされるにつれて、判断の質問はますます難しくなり、モデルは常に効果的なフィードバックを得ることができます。 ELECTRA とは少し異なり、Microsoft Research Asia の研究者がこのモデル用に設計した事前トレーニング タスクは ABCD の複数選択問題であり、研究者らは複数選択問題の難易度を動的に調整できるようになることを期待しています。

学習の初期段階では、モデルが比較的単純なタスクを完了できるように、単純な複数選択の質問が設計されており、それによって学習プロセスが高速化されます。後期段階では、タスクの難易度が徐々に増加し、より洗練された結果が得られます。

ここでは、さまざまな難易度のタスクとオプションの数を設計することで、タスクの難易度を調整できます (オプションが多いほど、タスクは難しくなります)。

図7: メタコントローラを使用した事前トレーニング

簡単な課題から難しい課題まで訓練する効果を実現するために、多肢選択問題の難易度を適応的に変更できる問題設定が可能な「メタコントローラ」を提案する。

特に、このメタ コントローラは、マスクされた言語モデルで事前トレーニングされ、メイン モデルとともに反復的にトレーニングされる、より小さな BERT です。

各文は、まずマスクされます。次に、メタ コントローラはマスクされた文を入力として受け取り、マスクされたターゲット ワードに関連する単語の例を出力します。これらの単語の例は、代替回答を構築するために使用されます。

図8: 適応型多肢選択課題に基づく事前トレーニング実験結果

トレーニングの初期段階では、メタコントローラーが十分にトレーニングされていないため、生成された代替回答の品質は高くなく、メインモデルはこれらの簡単なタスクに関する正しい知識をすぐに学習できることがわかります。

トレーニングの後の段階では、メタ コントローラーは完成に近づき、高品質の候補回答を生成できるため、メイン モデルはこれらの困難なタスクでさらに進化できます。

このメタコントローラを BERT に適用すると、元の BERT と比較してトレーニング速度が 80% 向上することがわかります。つまり、ダウンストリームタスク GLUE では、計算オーバーヘッドの 20% でトレーニングされたモデルは、トレーニングに 5 倍の時間がかかる BERT モデルに匹敵します。

全文はhttps://arxiv.org/abs/2006.05744でご覧いただけます。

<<:  機械学習で知っておくべき3つの特徴選択方法!

>>:  EUがAIを活用して社会イノベーションを推進する方法

推薦する

オピニオン: 人工知能の失敗を考察する7つの方法

がんの検出から就職面接の実施者の決定まで、AI システムは多くのことを人間よりも速く、正確に、確実に...

[Dry Goods] グラフニューラルネットワークの学習リソーストップ10の共有

この記事はLeiphone.comから転載したものです。転載する場合は、Leiphone.com公式...

シンプルな人工ニューラル ネットワークをゼロから構築する: 入力層 1 つと出力層 1 つ

[51CTO.com クイック翻訳] この 2 部構成のシリーズでは、numpy Python ライ...

清華大学がJittorをオープンソース化:国内初の大学開発のディープラーニングフレームワーク、PyTorchへのワンクリック変換が可能

Theano、Caffeに続き、大学主導のディープラーニングフレームワークがオープンソース化され、国...

AI特許出願件数は世界第1位で、世界総出願件数の約4分の3を占める。

先日蘇州で開催された中国人工知能産業2020年年次大会で発表された「2020年中国人工知能発展報告書...

電子商取引検索アルゴリズム技術の進化

2018年9月28日、アリババの電子商取引検索部門は「未来を探して推奨する」をテーマにした技術サミッ...

AIがイノベーションの大きな原動力となる理由

近年、人工知能は新興技術から必需品へと徐々に変化してきました。より大規模な企業の問題に対する解決策を...

新しい研究では、AIを使用してトラウマ性解離を引き起こす脳領域を探索する

[[344125]]解離や解離性障害は、特に幼少期に極度のトラウマや慢性的な虐待を経験した人々によっ...

2024 年のテクノロジー トレンド - 企業は今から準備を始める必要があります。

2023 年の主流のテクノロジートレンドが人工知能、より具体的には生成 AI に重点を置くことは間...

ピュー研究所:アルゴリズム時代の7つの主要テーマとその主な影響

世界的に権威のある調査機関であるピュー研究所は最近、「アルゴリズムの時代」と題する報告書を発表し、1...

自動化戦略の6つの重要な要素

[[440295]] IT 自動化は多くの場合、自然に発生します。たとえば、システム管理者は、日常業...

Google AI の 7 つの「型破りな」遊び方。どれも一日中遊べる

AI は真面目な仕事しかできないなんて誰が言ったのでしょうか? Google は最近、顔を見ながら生...

大規模ウェブサイトのアルゴリズムとアーキテクチャについての簡単な説明(パート 2)

順序前回の記事「大規模 Web サイトのアルゴリズムとアーキテクチャに関する簡単な説明 (パート 1...