Feature Pyramid Network (FPN)
特徴ピラミッドネットワーク (FPN) がどのようにマルチスケールの物体検出を強化するか解説します。Ultralytics YOLO26が高度なFPNを使用して大小の物体を検出する仕組みを学びましょう。
Feature Pyramid Network (FPN) は、さまざまなスケールでのオブジェクト検出を向上させるために、現代の computer vision (CV) システムで使用される特殊なアーキテクチャコンポーネントです。画像分析における長年の課題、すなわち同じ画像内にある大きくて目立つ構造と、小さくて遠くにある詳細の両方を認識することを効果的に解決します。入力のマルチスケール表現(ピラミッドに概念的に似ています)を生成することにより、FPNはニューラルネットワークがすべての解像度レベルで豊富なセマンティック情報を抽出できるようにします。このアーキテクチャは通常、生の特徴を抽出する backbone と、オブジェクトのクラスとバウンディングボックスを予測する detection head の間に配置されます。
Feature Pyramid Networkの仕組み#
FPNの核となるイノベーションは、情報の処理方法にあります。従来の Convolutional Neural Networks (CNNs) は、入力画像が段階的にダウンサンプルされる特徴の階層を自然に作成します。これによりセマンティックな理解(画像に何があるかを知ること)が深まる一方で、空間解像度(正確にどこにあるかを知ること)が低下し、小さなオブジェクトが消えてしまうことがよくあります。
FPNは、以下の3ステップのプロセスを通じてこれに対処します。
-
Bottom-Up Pathway: これは、 Residual Network (ResNet) のようなネットワークの標準的なフィードフォワードパスです。ネットワークが画像を処理するにつれて、サイズは小さくなるがセマンティックな値が増加する feature maps が作成されます。
-
トップダウンパスウェイ: ネットワークは、より深い層からセマンティック的に豊富なフィーチャをアップサンプリングすることで、高解像度のピラミッドを構築します。このステップは、より大きな空間マップに強力なコンテキストを「幻視(ハルシネート)」させます。
-
ラテラルコネクション: ダウンサンプリング中に失われた鮮明な詳細を回復するために、FPNはラテラルコネクションを介して、アップサンプリングされたフィーチャとボトムアップパスウェイからの元の高解像度マップを融合します。
この組み合わせにより、すべてのレベルで強力なセマンティクス と 優れたローカリゼーションを持つピラミッドが生成され、すべてのオブジェクトサイズにわたって precision と recall が大幅に向上します。
物体検出アーキテクチャにおける重要性#
FPNは、現代の object detection architectures の基礎です。その導入前は、モデルは速度(最終層のみを使用)または精度(非常に低速な画像ピラミッドの処理)のいずれかを選択する必要がありました。FPNは、小さなオブジェクト検出機能を犠牲にすることなく real-time inference を可能にする、両方の長所を兼ね備えたソリューションを提供します。
この効率性は、FPNの原則(PANetなど)にインスピレーションを得た高度な集約ネットワークを利用して最先端のパフォーマンスを実現する YOLO26 などの高度なモデルにとって極めて重要です。このアーキテクチャにより、モデルがエッジデバイスに展開されるか、 Ultralytics Platform を介して強力なサーバーに展開されるかに関係なく、多様なデータセット全体で高い精度が維持されます。
実社会での応用#
FPNのマルチスケール機能は、安全性と精度が最優先される業界において不可欠です。
- AI in Automotive: 自動運転車は、近くにある大型トラックと、遠くにある小さな信号機や歩行者を同時に追跡する必要があります。FPNを使用すると、パーセプションスタックはこれらの異なるスケールを1回のパスで処理でき、タイムリーな意思決定が確保されます。 nuScenes などのデータセットは、これらの機能をベンチマークするためによく使用されます。
- Medical Image Analysis: 診断画像において、病変の検出にはサイズが大きく異なる異常を見つける必要があります。FPNを搭載したモデルは、 MRI scans において大きな臓器構造と小さく初期段階の腫瘍の両方を識別でき、放射線科医が正確な診断を下すのを支援します。
- AI in Agriculture: 精密農業は、ドローン画像からの作物や害虫の検出に依存しています。ドローンの高度が変化する可能性があるため、画像内の植物のサイズも変化します。FPNはモデルの汎用性を高め、カメラの高さに関係なく object counting を正確に実行します。
FPNと他のフィーチャアグリゲーターの比較#
標準的なFPNを、新しいアーキテクチャに見られる進化したバリエーションと区別しておくと役立ちます。
- FPN vs. PANet: FPNが特徴を豊かにするためにトップダウンパスを追加するのに対し、 Path Aggregation Network (PANet) はFPNの上にさらにボトムアップパスを追加します。これにより、ローレベル特徴の情報パスが短縮され、ローカリゼーションがさらに向上します。これは、YOLOモデルでよく適応されるテクニックです。
- FPN vs. BiFPN: EfficientDetに見られる Bi-directional Feature Pyramid Network (BiFPN) は、異なる特徴に学習可能な重みを導入し、1つの入力しか持たないノードを削除することで、効率性のためにネットワークを最適化します。
実践的な例#
ultralytics のような高度なライブラリは、FPN構築の複雑さを内部で処理します。YOLO26のようなモデルをロードすると、アーキテクチャにはパフォーマンスを最大化するためのこれらの特徴集約レイヤーが自動的に含まれます。
from ultralytics import YOLO
# Load the YOLO26 model, which uses advanced feature pyramid principles internally
# The 'n' suffix indicates the nano version, optimized for speed
model = YOLO("yolo26n.pt")
# Perform inference on an image containing objects of various sizes
# The model's neck (FPN-based) aggregates features to detect small and large items
results = model("https://ultralytics.com/images/bus.jpg")
# Display results to see bounding boxes around buses (large) and people (small)
results[0].show()





