BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース OpenAIはより長いシーケンスのディープラーニングのためのSparse Transformersを発表

OpenAIはより長いシーケンスのディープラーニングのためのSparse Transformersを発表

ブックマーク

原文(投稿日:2019/05/21)へのリンク

OpenAIは、テキスト、音声、画像などの一連のデータを学習するためのディープニューラルネットワークアーキテクチャであるSparse Transformerを開発した。ネットワークは、より短いトレーニング時間で、いくつかのディープラーニングタスクにおいて最先端のパフォーマンスを達成できる。

画像キャプションや言語翻訳などのいくつかの一般的なAIアプリケーションは、シーケンス学習としてモデル化できる。つまり、一連のデータの次のものを予測する。シーケンス学習ネットワークは通常、エンコーダとデコーダの2つのサブネットワークで構成されている。いったん2つが訓練されると、多くの場合、デコーダを単独で使用してまったく新しい出力を生成できる。たとえば、人工的なスピーチシェイクスピアのフェイクなどである。

Recurrent Neural Networks (RNNs)、特にLong Short-Term Memory (LSTM)ネットワークは、これらの問題を解決するのに特に効果的である。しかし、Transformerは他のアーキテクチャーに比べてトレーニングコストを1桁以上削減できたため、近年ではTransformerと呼ばれる単純なアーキテクチャーが普及している。

RNNのように入力シーケンスの各要素を順番に処理する代わりに、Transformerはフルシーケンスを並列に処理する。重要な考え方はアテンションの使用である。簡単に言えば、アテンションは、各出力要素に対する各入力要素の寄与の符号化した重みの行列である。したがって、アテンションの重みの数は、入力シーケンスの長さの2乗で増加する。さらに、ネットワークの各層ごとに個別のアテンションマトリックスがある。ネットワーク内の総重みの数が限られているため、これはネットワークの深さとそれが扱うことができる最大シーケンス長との間のトレードオフとなる。

OpenAIの技術革新は、ネットワークの複雑さを\(O(N^2)\)から\(O(N\sqrt{N})\)に減らすアテンション行列のスパース分解である。これにより、OpenAIは、「数千要素」のシーケンスしか処理できない他のネットワークと比較して、「数百のレイヤーを使用して数万要素のシーケンスをモデル化する」ことができる。

OpenAIの大規模なTransformerベースのモデルの一例として、MuseNetがある。これは、10種類の楽器で4分間の楽曲を作成し、カントリーからモーツァルト、ビートルズのスタイルを組み合わせることができるシステムである。もっとよく知られているのはGPT-2で、これはアンデス山脈のユニコーンに関するニュース記事を作成した。OpenAIは、「このテクノロジの悪意のあるアプリケーションに関する懸念」があるため、完全なGPT-2モデルをリリースしていない。ただし、モデルのより小さなバージョンが利用可能であり、Talk to Transformerのようなサイトで活用されている。そのサイトでは、ユーザはモデルが新しいストーリーを生成するために使用するカスタムプロンプトを入力できます。

コミュニティからの反応はさまざまである。ハッカーニュースで、コメントした人の一人は、「それは本当に印象的です!しかし、コードリリースには少しがっかりしている。完全なソースコードとセットアップを期待していました」と述べた。Twitterで、Etherium開発者のIuri Matiasは、「なぜ小さなコードスニペットだけがリリースされ、完全なコードと訓練されたモデルはリリースされなかったのでしょうか。今後これが標準になるでしょうか?」と尋ねた。

OpenAIの論文「Sparse Transformersを使った長いシーケンスの生成」はarXiv.orgで入手できる。スパースアテンションコードはGitHubで入手できる

この記事に星をつける

おすすめ度
スタイル

特集コンテンツ一覧

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

BT