英語以外の言語で自然言語処理を行うのは大変なことです。 今日、多言語自然言語処理で素晴らしい結果を得ることが可能です。 ついに、誰でもフランス語、日本語、スペイン語、ロシア語、中国語、ドイツ語...などの自然言語処理を行うことができるようになったのです。
現在、世界ではおよそ7000種類の言語が話されています。それぞれの言語には独自のルールがあり、言語によっては は全く異なる働きをすることがあります。例えば、フランス語、スペイン語、イタリア語は非常によく似ていますが、アジアの言語とは全く関係ありません。 中国語や日本語のような表意文字や記号をベースにした
その結果、これらすべての言語を扱える言語モデルを作成するためには、異なる手法を用いなければならない。
つまり、言語が異なれば、たとえ事前に学習された言語埋め込みが存在したとしても、異なるベクトル空間が必要になる可能性があるのです。これは活発な研究分野である。
では、どのような解決策があるのでしょうか。
第一のアプローチは、特定の言語に対応したモデルを学習させることである。例えば、BERTのいくつかの新しいバージョンは は、様々な言語で学習されています。Deepset AIのGerman BERTは、ドイツ語を一から学習した新バージョンのBERTの良い例です。 スクラッチ ドイツ語版BERTはこちら
問題は、この手法がうまく拡張できないことです。新しいモデルのトレーニングには時間がかかるし、コストもかかる。 spaCyのような小さなモデルであれば、複数のモデルを訓練することもまだ可能ですし、Explosion AI(spaCyの開発会社)は は、多くの言語で事前に学習した複数のモデルを維持する素晴らしい仕事です。 はこちらをご覧ください。 But natural language processing models are getting bigger and bigger, and training these big models is very costly. For example, training the brand new GPT models (GPT-3, GPT-J and GPT-NeoX) took several weeks and cost million dollars. Training new versions of these models is not something everybody can do.
また、推論という観点からも、うまくスケールしない。もし企業が生産現場で自然言語処理を使う必要がある場合 複数の言語を扱う場合、複数のモデルを維持し、複数のサーバーとGPUを用意しなければなりません。これは非常に大きなコストになります。これは NLPクラウドでは、この戦略を可能な限り避けようとしている理由のひとつです。
第二のアプローチは、多言語モデルを活用することです。
ここ数年、新しい多言語モデルが登場し、非常に精度が高いことが証明されています。時には は、特定の非英語モデルよりも高精度です。最も人気のあるものは、mBERT、XLM、XLM Robertaです。 XLM Robertaは最も正確な多言語モデルのようであり、XNLI評価データセットで非常に良い結果を出しています。 多言語モデルの品質を評価するため)。
XLM Robertaをベースとした非常に優れた事前学習済みモデルがいくつか利用可能である。例えば、多くのテキストを分類するために 言語では、XLM Roberta Large XNLIが最適です。 このモデルはこちら
今のところ、テキスト生成のための良い多言語モデルはありません。例えば、GPTは英語では優秀で、それほど悪くはないのですが が、印象的というにはほど遠い。ビッグサイエンスは現在、非常に大規模な多言語テキスト生成モデルの開発に取り組んでいます。期待できそうですね。 詳しくはこちらをご覧ください。.
ビッグサイエンスは、多言語1760億パラメータ変換モデルを発表しました。
最後の戦略は、翻訳を使うことです。これは、英語以外のコンテンツを英語に翻訳することです。 英語のコンテンツをモデルに送信し、その結果を元の言語に翻訳します。
この手法は、ハッキングのように聞こえるかもしれませんが、利点もあります。翻訳ワークフローを維持することで、コストを削減できるかもしれません。 専用のモデルを学習させるよりも、世界中のあらゆる言語に簡単に対応できます。
ここ数年、ディープラーニングに基づく高度な翻訳モデルが誕生しています。これらは、高速かつ 非常に良い結果が出ています。例えば、Helsinki NLPはディープラーニングに基づく翻訳モデルを次々と発表しています。その中で最も NLPクラウドで人気のあるもの はこちらをご覧ください。
しかし、ワークフローに翻訳を追加すると、全体の応答時間が長くなります。そのため、以下のような用途には適さないかもしれません。 非常に高速な結果を得ることができます。
多言語自然言語処理は解決された問題ではありませんが、ここ数年、多くの進歩がありました。 現在では、特定のモデルのおかげで、英語以外の言語で自然言語処理を行い、非常に良い結果を得ることができるようになった。 多言語モデル、そして翻訳。
NLPクラウドでは、多くの言語でテキストを理解し生成することが重要であると考え、特定のアドオンをリリースしました。 という多言語アドオンがあります。このアドオンを有効にすると、GPT-JのようなGPTモデルを含む、すべてのAIモデルが20以上の言語でうまく機能するようになります。 や「GPT-NeoX」などがあります。 はこちらでご覧ください。. We also propose advanced multilingual models like spaCy and XLM Roberta. tr%}
Julien Salinas
NLP CloudのCTO。