Google チームによって提案された古典的な NLP 作業である Transformer は、Ashish Vaswani らによって 2017 年の論文「Attention Is All You Need」で提案されました。しかし、モデルパラメータの数が多いため、モデルのトレーニングが難しく、展開も不便です。研究者たちはTransformerを最適化する方法を模索してきました。最近、ワシントン大学と FAIR の Sachin Mehta 氏らは、深くて軽量なネットワーク構造を持つ Transformer、DeLighT を提案しました。 論文リンク: https://arxiv.org/abs/2008.00623 コードリンク: https://github.com/sacmehta/delight 論文紹介 この記事では、著者らは、以前のトランスフォーマーベースのモデルよりもパラメーターが少ないにもかかわらず、同等かそれ以上のパフォーマンスを発揮する、より深く軽量なトランスフォーマー、DeLighT を提案しています。 DeLighT は、主に次の点でパラメータをより効率的に割り当てることができます。1) 各 Transformer ブロックは、より深い構造だがパラメータが少ない DExTra を使用します。2) すべてのブロックでブロック単位のスケーリングが使用され、入力に近い DeLighT ブロックは浅く狭くなり、出力に近い DeLighT ブロックは広く深くなります。全体的に、DeLighT のネットワークは標準的なトランスフォーマー モデルよりも 2.5 ~ 4 倍深くなっていますが、パラメーターと計算量は少なくなっています。 DeLighT の中核は DExTra 変換であり、グループ線形変換と拡張/縮小戦略を使用して DeLighT ブロックの幅と深さを効果的に変更します。これらの変換は本質的にローカルであるため、DExTra は機能シャッフル (畳み込みネットワークのチャネル シャッフルに類似) を利用して、異なるグループ間で情報を共有します。この幅広く深い表現は、トランスフォーマー内のマルチヘッド アテンションとフィードフォワード レイヤーをシングルヘッド アテンションと軽量フィードフォワード レイヤーに置き換えるのに役立ち、ネットワーク パラメーターの数を削減します。重要なのは、トランスフォーマーとは異なり、DExTra モジュールは入力サイズとは独立してスケーリングできることです。入力の近くでは浅くて狭い DeLighT ブロックを使用し、出力の近くでは深くて広い DeLighT ブロックを使用することで、ブロック間でパラメータがより効率的に分散されます。 DeLighT 3つの特徴 Transformer の改善: これまでの研究とは異なり、この論文では、各 Transformer ブロックに DExTra を使用し、すべてのブロックにわたってブロック単位のスケーリングを使用すると、効率的なパラメータの割り当てを実現できることを示しています。結果は、DeLighT がより少ないパラメータで同じ、あるいはそれ以上の結果を達成できることを示しています。 モデル圧縮: シーケンス モデルのパフォーマンスをさらに向上させるために、この研究ではブロック単位のスケーリングを導入し、各ブロックに異なるサイズを持たせ、より効率的なパラメータ割り当てを可能にしています。 シーケンス モデルの改善: DeLighT に最も近い作業は、拡張削減戦略を使用してモデル表現を学習する DeFINE ユニットです。 DeFINE ユニット (図 1a) と DExTra (図 1b) の主な違いは、DExTra では拡張削減レイヤーでパラメータをより効率的に分散できることです。 DeFINE はグループ線形変換で使用するグループを少なくしてより広い表現を学習しますが、DExTra はより多くのグループとより少ないパラメータを使用してより広い表現を学習します。 図1: (a、b) DeFINEユニットとDExTraの比較。 (c、d) 標準トランスフォーマーモジュールとDeLighTモジュールのブロックごとの比較。 DeLighT: 深いネットワークだがパラメータが少ないトランスフォーマー デクストラ DExTra 変換は、5 つの構成パラメータによって制御されます: 1) 深さ N、2) 幅乗数 m_w、3) 入力次元 d_m、4) 出力次元 d_o、5) 線形変換におけるグループの最大数 g_max。 拡張フェーズでは、DExTra は「N/2」レイヤーを使用して、d_m 次元入力を高次元空間 d_max = m_wd_m に線形投影します。削減フェーズでは、DExTra は残りの N − "N/2" レイヤーを使用して、d_max 次元ベクトルを d_o 次元空間に投影します。数学的には、各層 l の出力 Y は次のように定義できます。 各層 l のグループ数は、次の式に従って計算されます。 DeLighTモジュール トランスフォーマー ブロック: 標準のトランスフォーマー ブロック (図 1c) は、マルチヘッド アテンションで構成され、クエリ キー値分解を使用してシーケンス トークン間の関係をモデル化し、フィードフォワード ネットワーク (FFN) を使用してより広い表現を学習します。 DeLighT ブロック: 図 1d は、効率を向上させるために DExTra をトランス ブロックに統合する方法を示しています。まず、d_m 次元の入力が DExTra 変換に送られ、d_o 次元の出力が生成されます (d_o < d_m)。これらの d_o 次元出力は、シングルヘッド アテンションに送られ、その後、軽量 FFN によってそれらの関係がモデル化されます。 DExTra シングルヘッド アテンション: 入力シーケンスに n 個のトークンがあり、各トークンの次元が d_m であると仮定します。まず、これらのn d_m次元入力がDExTra変換に入力され、n d_o次元出力が生成されます。ここで、d_o DeLighT ブロックは、DExTra を通じてより幅広い入力表現を学習し、マルチヘッド アテンションをシングルヘッド アテンションに置き換えることを可能にします。標準トランスフォーマーと DeLighT ブロックにおける注意の計算コストは、それぞれ O(d_mn^2) と O(d_on^2) です。 軽量 FFN: トランスフォーマーの FFN と同様に、このモジュールも 2 つの線形層で構成されています。 DeLighT ブロックはすでに DExTra 変換を使用してより広い表現を統合しているため、トランスフォーマー内の FFN レイヤーの機能を反転できます。最初のレイヤーは入力の次元を d_m から d_m/r に削減し、2 番目のレイヤーは入力の次元を d_m/r から d_m に拡張します。ここで、r は削減係数です (図 1d を参照)。本研究で提案された軽量FFNは、FFNのパラメータと計算量を元のrd_f / d_mまで削減します。標準トランスでは、FFN 寸法が 3 倍に拡大されます。この研究実験では次元が3分の1に縮小されました。したがって、軽量 FFN では、FFN のパラメータ数が元の 1/16 に削減されます。 ブロック単位でのスケーリング シーケンス モデルのパフォーマンスを向上させる標準的なアプローチには、モデルの次元を増やす (幅のスケーリング)、より多くのブロックを積み重ねる (深さのスケーリング)、またはその両方が含まれます。非常に深く広いネットワークを作成するために、この研究ではモデルのスケーリングをブロックレベルまで拡張しました。下の図 2 は、均一なスケーリングとブロックごとのスケーリングを比較したものです。 DeLighT ブロックのスケーリング: DeLighT ブロックは、DExTra を使用して深い表現と広い表現を学習します。DExTra の深さと幅は、グループ変換レイヤーの数 N と幅乗数 m_w の 2 つの構成パラメータによって制御されます (図 2a)。これらの構成パラメータは、入力 d_m と出力 d_o の次元とは無関係に、DeLighT ブロック内の学習可能なパラメータの数を増やすことができます。ここで、この論文では、ブロック単位のスケーリングを使用して、可変サイズの DeLighT ブロックのネットワークを作成し、入力の近くに浅くて狭い DeLighT ブロックを割り当て、出力の近くに深くて広い DeLighT ブロックを割り当てます。 この目的のために、本研究では、DeLighT ネットワークにおける DExTra の最小深度 N_min と最大深度 N_max という 2 つの構成パラメータを提案します。次に、各DeLighTブロックb内のDExTraの深さN^bと幅乗数m^b_wを線形スケーリングを使用して計算します(式4)。このスケーリングにより、各 DeLighT ブロック b の深さと幅が異なります (図 2a)。 実験結果 この論文では、機械翻訳と言語モデリングという 2 つの一般的なシーケンス モデリング タスクのパフォーマンスを比較しています。 機械翻訳 この研究では、下の図3に示すように、機械翻訳コーパス上でDeLighTのパフォーマンスを現在の最良の方法(標準トランスフォーマー[1]、動的畳み込み[21]、ライトトランスフォーマー[22])と比較しました。図 3c は、DeLighT が最高のパフォーマンスを提供し、より少ないパラメータと計算量で他のモデルよりも優れていることを示しています。 図 3: 機械翻訳コーパスにおけるモデルの結果。標準トランスフォーマーと比較すると、DeLighT モデルはより少ないパラメータで同様のパフォーマンスを実現します。図中、†と‡はそれぞれ[21]と[48]からの最良のトランスフォーマーベースラインを表しています。 表1:WMT'14 En-Frデータセットにおけるネットワーク深度、ネットワークパラメータ、MAC数、BLEU値の観点から見た機械翻訳モデルの比較結果。 DeLighT は、ネットワークの深さが深いほど、パラメータと計算が少なくなり、最高のパフォーマンスを発揮します。 言語モデル この研究では、WikiText-103データセットにおけるDeLighTと他の手法のパフォーマンスを比較しました(表2aを参照)。表2bは、DeLighTとTransformer-XL [9]のパープレキシティをパラメータ数の関数としてプロットしたものです。どちらの表も、DeLighT が最先端の方法 (Transformer-XL を含む) よりも優れていることを示しています。また、DeLighT はより短いコンテキスト長とより少ないパラメーターでこれを達成しており、DeLighT を使用して学習されたより深く幅広い表現が、強力なコンテキスト関係のモデル化に役立つことを示唆しています。 制御変数研究 表 3a は、DeLighT ブロック パラメータ (最小ネットワーク深度 N_min、最大深度 N_max、幅乗算 m_w、モデル次元 d_m) の影響を調べています (図 1d を参照)。表 3b ~ d は、それぞれ DExTra 変換、特徴シャッフル、軽量 FFN の影響を示しています。 要約する この研究では、非常に軽量でありながら深みのあるトランスフォーマー フレームワークである DeLighT を提案します。これにより、DeLighT ブロック内およびすべての DeLighT ブロックにわたってパラメーターを効率的に分散できます。現在の最高の Transformer モデルと比較すると、DeLighT モデルには次の利点があります: 1) 非常に深くて軽量です。2) 同等以上のパフォーマンスを提供します。 |
<<: サポートベクターマシンとニューラルネットワークが出会うとき: SVMとGANの距離の関係
>>: 科学記事:強化学習後、ロボット学習のボトルネックをどう突破するのか?
組み込み人工知能とは、組み込み環境で人工知能を実行することです。アルゴリズムモデルは以前と同じですが...
現在、人工知能 (AI) に関する議論のほとんどは、自動運転車、チャットボット、デジタル ツイン、ロ...
滴滴出行は1月25日、2018年スマート交通サミットでスマート交通戦略製品「Traffic Brai...
[[313367]]テスラのエンジニアたちは、データの拡大に伴ってエンジニアの数を増やすことなく、...
[[418617]]人工知能と人間の知能は互いに対立するものではなく、本質的に共生関係にあります。企...
[[345174]]計算コストが高く、必ずしも解析的な表現ではなく、導関数が不明な関数 f(x) が...
現代の機械知能は自然を模倣することに基づいています。この分野の主な目標は、人間が生物学的に持つ強力な...
しばらく時間が空いたので、Java でよく使われる 7 つのソート アルゴリズムをまとめてみました。...
わずか 2 週間で、プロジェクトのスターの数が 390 から 10,000 に増加し、Discord...
[[334279]]この記事の主な内容:マイクログリッド、発電機、太陽光パネルなどのスマートグリッド...
すごいですね、ボストン・ダイナミクスのロボット犬が直接話せるようになりました。そして、Siriの「人...
[[204963]]この記事は、著者 @Daniel Martinez (https://twitt...
数万人の従業員を抱える大企業にとって、従業員の払い戻しに関する内部監査の難しさは想像に難くありません...
[[381131]] 01 「機械学習は簡単に習得できますか?」これは私が最も頻繁に聞かれる質問で...