Ultralytics YOLO11機械学習における特徴抽出のパワーを発見。効率的な検出と分析のテクニックを学びましょう。
特徴量抽出は機械学習(ML)における基礎的なプロセスであり、大規模な生データセットを管理可能な重要な属性(特徴量)の集合へと変換する。高解像度画像、音声ファイル、テキストコンテンツなどの生データは、その膨大な量と冗長性のため、アルゴリズムが効率的に処理するには不向きであることが多い。 特徴抽出はこの問題を解決し、入力データを最も情報量の多い要素に凝縮します。予測モデリングに必要な本質的な情報を保持しつつ、ノイズや無関係な詳細を排除するのです。この削減は次元性の呪いを軽減するために不可欠であり、モデルが計算効率を維持し、新規データへ良好に汎化できることを保証します。
従来の機械学習では、専門家が有用なパターンを識別するアルゴリズムを手動で設計する必要がありました。例えば、画像内のキーポイントを検出するための スケール不変特徴変換(SIFT) などが挙げられます。しかし、現代の 深層学習(DL)はこのプロセスを自動化することで 革命をもたらしました。
ニューラルネットワーク、特に 畳み込みニューラルネットワーク(CNN)は、特徴抽出を階層的に行うために バックボーンと呼ばれる特殊な構成要素を利用する。データがネットワーク層を通過するにつれて:
これらの学習済み表現は特徴マップに保存され、 その後検出ヘッドに渡されて物体検出や分類などのタスクを実行する。
特徴抽出は、多くの高度なAI機能を支える基盤技術であり、生データから実用的な知見へと変換する役割を担い、様々な産業分野で活用されています。
Ultralytics のような最先端モデルは、強力な特徴抽出バックボーンをアーキテクチャに直接統合しています。推論を実行すると、モデルはバウンディングボックスとクラスを予測する前に、画像を自動的に処理して関連する特徴を抽出します。
以下の例は、モデルの構造を検査するか標準的な予測を実行することで、基盤となる特徴抽出機能にアクセスする方法を示しています:
from ultralytics import YOLO
# Load a pretrained YOLO26 model, which includes a learned feature extraction backbone
model = YOLO("yolo26n.pt")
# Perform inference on an image
# The model internally extracts features to locate and classify objects
results = model("https://ultralytics.com/images/bus.jpg")
# Display the resulting bounding boxes
results[0].show()
特徴抽出をデータサイエンスパイプライン内の類似概念と区別することは、ワークフローにおける位置付けを理解する上で有用である。
特徴抽出を習得することで、開発者はPyTorchのようなフレームワークを活用できる PyTorch や TensorFlow といったフレームワークを活用し、精度が高いだけでなく エッジデプロイメントに十分な効率性を備えたモデルを構築できる。