BERT 101 – 最新のNLPモデルの解説
BERT 101 - Explanation of the Latest NLP Model
BERTとは何ですか?
BERT(Bidirectional Encoder Representations from Transformers)は、自然言語処理のための機械学習(ML)モデルです。Google AI Languageの研究者によって2018年に開発され、感情分析や固有表現認識など、最も一般的な言語タスクの11以上に対するスイスアーミーナイフのような解決策として機能します。
言語は、コンピュータが「理解する」のが難しいものでした。もちろん、コンピュータはテキスト入力を収集、保存、読み取ることができますが、基本的な言語コンテキストが欠けています。
そこで、自然言語処理(NLP)が登場しました。これは、テキストや話された言葉からテキストを読み取り、分析し、解釈し、意味を導き出すための人工知能の分野です。この実践では、言語学、統計学、機械学習を組み合わせて、コンピュータが人間の言語を「理解する」のを支援します。
従来、個々のNLPタスクは、各具体的なタスクごとに作成された個別のモデルによって解決されてきました。それは、それまでの話。BERTの登場により、NLPの領域は革命を起こしました。BERTは、最も一般的なNLPタスクの11以上を解決することで、これまでのモデルよりも優れていることから、NLPのジャック・オブ・オール・トレードとなりました。
- 🤗 Transformersにおいて制約付きビームサーチを用いたテキスト生成のガイド
- Hugging Face TransformersとAWS Inferentiaを使用して、BERT推論を高速化する
- Hugging FaceでのDecision Transformersの紹介 🤗
このガイドでは、BERTとは何か、なぜ異なるのか、BERTを使用し始める方法について学びます:
- BERTは何に使用されるのか?
- BERTはどのように動作するのか?
- BERTのモデルサイズとアーキテクチャ
- BERTの一般的な言語タスクでの性能
- ディープラーニングの環境への影響
- BERTのオープンソースの力
- BERTを使用し始める方法
- BERTのよくある質問
- 結論
さあ、始めましょう! 🚀
1. BERTは何に使用されるのか?
BERTはさまざまな言語タスクに使用することができます:
- 映画のレビューがどれだけポジティブかネガティブかを判断します。 (感情分析)
- チャットボットが質問に答えるのを助けます。 (質問応答)
- メールを書く際にテキストを予測します(Gmail)。 (テキスト予測)
- わずかな文の入力で任意のトピックについて記事を書くことができます。 (テキスト生成)
- 長い法的契約を簡単に要約することができます。 (要約)
- 周囲のテキストに基づいて(「銀行」など)複数の意味を持つ単語を区別できます。 (多義解決)
これらの他にも、多くの言語/NLPタスクがあり、それぞれの詳細があります。
おもしろい事実:ほぼ毎日、NLP(おそらくBERTも)とやり取りしています!
NLPは、Google翻訳、音声アシスタント(Alexa、Siriなど)、チャットボット、Google検索、音声操作のGPSなどの背後にあります。
1.1 BERTの例
2020年11月以降、BERTのおかげでGoogleはほぼすべての検索結果をより良く表示することができるようになりました(英語)。
以下は、BERTがGoogleに特定の検索をより良く理解するのを助ける例です:
ソース
BERT以前のGoogleは、処方箋の受け取りについての情報を表示していました。
BERT以降のGoogleは、「誰かのために」が他の人の処方箋を受け取ることに関連していることを理解し、検索結果がそれに答えるようになりました。
2. BERTはどのように動作するのか?
BERTは、以下を活用して動作します:
2.1 大量のトレーニングデータ
BERTの持続的な成功には、33億の単語からなる巨大なデータセットが貢献しています。
BERTは具体的には、Wikipedia(約25億単語)とGoogleのBooksCorpus(約8億単語)でトレーニングされました。これらの大規模な情報データセットは、BERTが英語だけでなく、私たちの世界の深い知識を持つことに貢献しました! 🚀
このような大規模なデータセットでのトレーニングには時間がかかります。BERTのトレーニングは、新しいTransformerアーキテクチャを活用し、TPU(Tensor Processing Units – Googleの大規模MLモデル用に特別に構築されたカスタム回路)を使用して高速化されました。64個のTPUが4日間にわたってBERTをトレーニングしました。
注:小型のBERTモデルへの需要が増えており、BERTをより小さな計算環境(携帯電話やパーソナルコンピュータなど)で使用するために、2020年3月には23個の小型BERTモデルがリリースされました。DistilBERTは、BERTの性能の95%以上を維持しながら60%高速化した、より軽量なバージョンのBERTです。
2.2 マスク言語モデルとは何ですか?
MLM(マスク言語モデル)は、文章内の単語をマスク(隠す)して、BERTにマスクされた単語を予測するために、カバーされた単語の両側の単語を双方向に使用することで、テキストからの双方向学習を可能に/強制します。これは以前には行われたことがありませんでした!
おもしろい事実:私たち人間も自然にこれを行っています!
マスク言語モデルの例:
あなたの友人がグレーシャーナショナルパークでキャンプ中に電波が途切れ始め、通話が切れる直前に聞こえた最後の言葉は次のとおりです:
友人:「うわっ!私は釣りをしていて、巨大なトラウトが私のラインを[空白]!」
友人が何を言ったか、推測することができますか?
あなたは、欠落した単語を、欠落した単語の前後の単語を文脈の手がかりとして考慮することで自然に予測することができます(釣りの仕組みに対するあなたの歴史的な知識に加えて)。友人は「壊れた」(’broke’)と言ったと推測しましたか?私たちも同じように予測しましたが、人間であってもこれらの方法のいくつかは誤りを犯す可能性があります。
注意:これが、言語モデルのパフォーマンススコアと「人間のパフォーマンス」との比較がよく見られる理由です。そして、はい、BERTのような新しいモデルは人間よりも正確かもしれません!🤯
上記の[空白]の単語を埋めるために行った双方向の方法は、BERTが最先端の精度を達成する方法と似ています。訓練中には、トークン化された単語の15%がランダムに隠され、BERTの役割は隠された単語を正しく予測することです。したがって、モデルに英語の言語(および私たちが使用する単語)について直接教えることができます。素晴らしいですね。
BERTのマスキング予測を試してみてください:
9. 結論
BERTは、人々が言語理解を自動化するのに役立つ非常に複雑で高度な言語モデルです。その最先端のパフォーマンスを実現する能力は、膨大な量のデータでのトレーニングとTransformersアーキテクチャの活用に支えられて、NLPの分野を革新しています。
BERTのオープンソースライブラリと、信じられないほどのAIコミュニティの努力により、未開拓のNLPのマイルストーンの未来は明るく見えます。
BERTを使って何を作りますか?
特定のユースケースにBERTを微調整する方法を学びましょう 🤗
We will continue to update VoAGI; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles