Ultralyticsによる自然言語処理 (NLP)を探ります。Ultralytics YOLO26を使用して、NLPがチャットボット、感情分析、オープンボキャブラリーdetectをどのように強化するかを学びましょう。
自然言語処理 (NLP) は、コンピュータと人間の言語間の相互作用に焦点を当てる人工知能 (AI)の動的な分野です。正確で構造化された入力に依存する従来のプログラミングとは異なり、NLPは機械が人間の言語を価値があり意味のある方法で理解し、解釈し、生成することを可能にします。計算言語学と統計的、機械学習、およびディープラーニング (DL)モデルを組み合わせることで、NLPはシステムがテキストデータと音声データを処理し、意味、感情、および文脈を抽出することを可能にします。
NLPの核となるのは、生のテキストをコンピューターが処理できる数値形式に変換することであり、このステップはしばしばトークン化と埋め込みの作成によって達成されます。現代のシステムは、文中の異なる単語の相対的な重要度を重み付けするために自己注意機構を採用するTransformerアーキテクチャを利用しています。これにより、モデルは長距離依存関係や、初期の再帰型ニューラルネットワーク (RNN)では管理が困難だった皮肉や慣用句などのニュアンスを処理できるようになります。
NLP技術は現代のソフトウェアに広く普及しており、企業や個人が日常的に運用を効率化し、ユーザーエクスペリエンスを向上させるために使用するツールを支えています。
NLPの範囲を理解するには、データサイエンスの領域における密接に関連する概念との違いを明確にすることが有用である:
以下の例は、NLPの概念がコンピュータビジョンとどのように相互作用するかを示しています。私たちは
ultralytics テキストプロンプトを理解するモデルをロードするためのパッケージ。自然言語を用いたカスタムクラスを定義することで、モデルの内部語彙(埋め込み)を利用して画像内のdetect 。
from ultralytics import YOLOWorld
# Load a model with vision-language capabilities
model = YOLOWorld("yolov8s-world.pt")
# Define NLP-based search terms (classes) for the model to find
# The model uses internal text embeddings to understand these descriptions
model.set_classes(["blue bus", "pedestrian crossing", "traffic light"])
# Run inference to detect objects matching the text descriptions
results = model.predict("city_scene.jpg")
# Show the results
results[0].show()
自然言語処理(NLP)アプリケーションの開発には、堅牢なライブラリが必要となることが多い。研究者は頻繁にPyTorchを利用している。 PyTorch カスタムニューラルアーキテクチャ構築にPyTorchを多用する一方、 教育用前処理タスクではNatural Language Toolkit (NLTK)が定番です。 本番環境向けテキスト処理では、その効率性からspaCyが広く採用されています。
AIが進化するにつれ、モダリティの融合が重要なトレンドとなっています。プラットフォームは、視覚と言語を相互接続されたデータストリームとして扱う統合ワークフローへと移行しています。Ultralytics はこのライフサイクルを簡素化し、データセットの管理、画像の注釈付け、最先端モデルのトレーニングを行うツールを提供します。 NLPが言語処理を担う一方、YOLO26のような高性能視覚モデルは、 リアルタイムエッジアプリケーションに必要な速度と精度で視覚データを処理し、 マルチモーダルAIシステムにシームレスな体験をもたらします。

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