NLP向けの画期的な双方向トランスフォーマーモデルであるBERTを探ります。それがどのようにコンテキストを理解し、その実世界アプリケーション、そしてYOLO26との統合について学びましょう。
BERT(Bidirectional Encoder Representations from Transformers)は、Googleの研究者によって設計された画期的な深層学習アーキテクチャであり、機械が人間の言語のニュアンスをよりよく理解するのを助けます。2018年に導入されたBERTは、双方向訓練手法を導入することで、自然言語処理(NLP)の分野に革命をもたらしました。左から右、または右から左にテキストを順次読み取る従来のモデルとは異なり、BERTは単語の前後にある単語を同時に見て、そのコンテキストを分析します。このアプローチにより、モデルは微妙な意味、イディオム、同音異義語(複数の意味を持つ単語)を、先行モデルよりもはるかに効果的に把握することができます。
その核となるのは、BERTがTransformerアーキテクチャ、特にエンコーダメカニズムに依存していることです。「双方向性」は、マスク言語モデリング(MLM)と呼ばれるトレーニング手法によって実現されます。事前トレーニング中、文中の単語の約15%がランダムにマスク(隠蔽)され、モデルは周囲のコンテキストに基づいて欠落した単語を予測しようとします。これにより、モデルは深い双方向表現を学習するようになります。
さらに、BERTは次文予測 (NSP) を使用して文間の関係を理解します。このタスクでは、モデルに文のペアが与えられ、2番目の文が最初の文に論理的に続くかどうかを判断する必要があります。この機能は、質問応答やテキスト要約など、談話の理解を必要とするタスクにとって重要です。
BERTの汎用性により、多くの現代AIシステムで標準的なコンポーネントとなっています。その応用例を2つ具体的に示します。
BERTを他の主要なアーキテクチャと区別することは、その特定のニッチを理解する上で役立ちます。
BERTを使用するには、生のテキストを数値トークンに変換する必要があります。モデルは、特定の語彙(WordPieceなど)を使用して単語を分解します。BERTはテキストモデルですが、画像がパッチに分割されるコンピュータービジョンでも同様の前処理概念が適用されます。
以下のpythonスニペットは、 transformers ライブラリは、BERT処理のために文をトークン化します。Ultralyticsはビジョンに焦点を当てていますが、トークン化の理解はにとって重要です。
マルチモーダルAI ワークフロー。
from transformers import BertTokenizer
# Initialize the tokenizer with the pre-trained 'bert-base-uncased' vocabulary
tokenizer = BertTokenizer.from_pretrained("bert-base-uncased")
# Tokenize a sample sentence relevant to AI
text = "Ultralytics simplifies computer vision."
# Convert text to input IDs (numerical representations)
encoded_input = tokenizer(text, return_tensors="pt")
# Display the resulting token IDs
print(f"Token IDs: {encoded_input['input_ids']}")
BERTの登場はNLPにおける「ImageNetモーメント」を画し、大規模なデータセットでモデルを事前学習し、特定のタスク向けにファインチューニングする転移学習がテキスト処理において非常に効果的であることを証明しました。これにより、新しい問題ごとにタスク固有のアーキテクチャや大規模なラベル付きデータセットを用意する必要性が軽減されました。
今日、RoBERTaやDistilBERTなどのBERTのバリエーションは、エッジAIアプリケーションの効率を向上させ続けています。包括的なAIソリューションを構築しようとする開発者は、世界を見て理解できるシステムを構築するために、これらの言語モデルをUltralytics Platformで利用可能なビジョンツールと統合することがよくあります。

未来の機械学習で、新たな一歩を踏み出しましょう。