埋め込みとは何か、また、NLP、レコメンデーション、およびコンピュータビジョンのためにデータ内のセマンティックな関係をキャプチャすることにより、それらがAIをどのように強化するかを学びます。
埋め込みは、離散変数を密で低次元の連続ベクトル表現に変換するものであり、 人間のデータと機械の論理の間の基本的な変換装置として機能する。 人工知能(AI)の領域において、コンピュータは テキスト、画像、音声などの雑然とした非構造化データを 直感的に理解することはできない。 埋め込みは、こうした入力を高次元の数学的空間に存在する実数のリスト(ベクトル)に変換することでこの問題を解決する。従来の符号化がオブジェクトにランダムなIDを割り当てるだけなのに対し、埋め込みは学習を通じて習得されるため、「王」と「女王」といった語や、異なる2匹の猫の画像など、意味的に類似した項目がベクトル空間内で近接して配置されることが保証される。
埋め込みの作成には、特徴抽出用に設計されたニューラルネットワークに生データを入力する工程が含まれます。学習過程において、モデルは入力の重要な特性をコンパクトな数値形式に圧縮することを学びます。例えば、写真を分析するコンピュータビジョン(CV)モデルは、単にピクセルを見るだけでなく、形状、テクスチャ、色を多次元グラフ内の特定の座標にマッピングします。 類似性を測定する際、システムはコサイン類似度や ユークリッド距離といった指標を用いてこれらの座標間の距離を計算する。この数学的な近接性により、アルゴリズムは分類やクラスタリングといった複雑なタスクを高い効率で実行できる。
埋め込みは、現代のソフトウェア製品で使用される多くの知能的機能のエンジンとして機能する。
最先端のモデルのような YOLO26 効率的に頑健な画像埋め込みを生成するために使用できます。以下の例は、画像から特徴ベクトルを抽出する方法を示しています。 ultralytics Python パッケージ。
from ultralytics import YOLO
# Load a pre-trained YOLO26 classification model
model = YOLO("yolo26n-cls.pt")
# Generate embeddings for an image
# The embed() method returns the feature vector representing the image content
embedding_vector = model.embed("https://ultralytics.com/images/bus.jpg")
# Print the shape of the embedding (e.g., a vector of length 1280)
print(f"Embedding shape: {embedding_vector[0].shape}")
AIソリューションを効果的に実装するには、エンベディングを密接に関連する技術用語と区別することが有用である。
データセットのライフサイクル管理(カスタム埋め込み生成のためのアノテーションやモデルトレーニングを含む)を目指す開発者は、Ultralytics を活用できます。この包括的なツールは、データ管理からデプロイまでのワークフローを簡素化し、アプリケーションを支える埋め込みが高品質で適切に管理されたデータから導出されることを保証します。PyTorchやTensorFlowなどのフレームワークを使用する場合でも、 PyTorch や TensorFlowを使用する場合でも、高度なパターン認識システムを構築する上で、埋め込みを習得することは重要なステップです。