コンピュータビジョンにおけるVision Transformer(ViT)の能力をご覧ください。ViTがグローバルな画像コンテキストを捉え、CNNを上回る方法を学びます。
ヴィジョン・トランスフォーマー(ViT)とは ディープラーニングアーキテクチャであり オリジナルのTransformerモデルの原理を画像のシーケンスに直接適用した深層学習アーキテクチャである。もともとは 自然言語処理(NLP)のために導入された、 Transformerは、モデルが入力データの異なる部分の重要性を重み付けするメカニズムを使用することで、この分野に革命をもたらした。 Transformerは、モデルが入力データの異なる部分の重要性を計量することを可能にするメカニズムを使用することで、この分野に革命をもたらした。ViTはGoogle Researchが論文で提案した。 「の論文の中で提案された。 標準的な 畳み込みニューラルネットワーク(CNN) で提案された。局所的なフィルターを使ってピクセルを処理するCNNとは異なり、ViTは画像を固定サイズのパッチのシーケンスとして扱う。 ViTは画像を固定サイズのパッチの連続として扱い、最初の層から自己注意を用いてグローバルな文脈と長距離依存関係を捉えることができる。 自己注意を用いている。
ViTのアーキテクチャーは、機械が視覚情報を処理する方法の大きな転換を意味する。ワークフロー は、画像を、文中の単語と同様に処理できるより小さな構成要素に分解することを含む。
どちらのアーキテクチャも現代のコンピュータ・ビジョン(CV)の基本であるが コンピュータ・ビジョン(CV)の基本であるが、両者は異なる 誘導バイアスに依存している。CNNは畳み込み演算 CNNは、局所的な相互作用と並進不変性(位置に関係なく物体を認識すること)を優先する畳み込み演算を利用する。これにより CNNは少ないデータセットで非常に効率的である。対照的に、ViTは画像固有の構造をあまり持たず、以下のような膨大なデータセットから直接パターンを学習する。 のような巨大なデータセットから直接パターンを学習する。 ImageNet。
ViTは一般に、非常に大量のデータで訓練された場合に優れている。 をモデル化できるからである。しかし、このグローバルなスコープは、多くの場合、学習に必要な計算量が多くなり、リソースに制約のある環境では推論速度が遅くなるという代償を払うことになる。 リソースに制約のある エッジ・デバイスでは、推論速度が遅くなる。ハイブリッド・モデル RT-DETRのようなハイブリッドモデルは、効率的な特徴抽出のためのCNN を組み合わせることで、このギャップを埋めようとしている。 Transformerエンコーダを組み合わせることで、このギャップを埋めようとしている。
ビジョントランスフォーマーは、シーンの全体的な文脈を理解することが、低レベルのテクスチャの詳細よりも重要な領域で成功を収めている。 領域で成功を収めている。
について ultralytics パッケージは、RT-DETR (Real-Time Detection)のようなTransformerベースのアーキテクチャをサポートしています。
Transformer)のようなTransformerベースのアーキテクチャをサポートしています。
オブジェクト検出.のようなCNNベースのモデルが
推奨される YOLO11 リアルタイム・アプリケーションでは
RT-DETR 、高い精度とグローバルなコンテキストが優先される場合に、堅牢な代替手段を提供する。
from ultralytics import RTDETR
# Load a pretrained RT-DETR model (Transformer-based architecture)
model = RTDETR("rtdetr-l.pt")
# Perform inference on an image to detect objects
results = model("https://ultralytics.com/images/bus.jpg")
# Display the results with bounding boxes
results[0].show()
今後の展望としては、効率性の革新が極めて重要である。Ultralytics 現在 を開発中である。 を開発中だ。これは、CNNのスピードを維持しながら、トランスフォーマーに関連する高精度を実現することを目的としている。さらに Ultralytics プラットフォームは、様々な環境でこれらの高度なモデルをトレーニングし、展開するためのワークフローを合理化します。 クラウドサーバーからエッジハードウェアまで、さまざまな環境にわたってこれらの高度なモデルをトレーニングし、展開するためのワークフローを合理化する。主なフレームワーク PyTorchや TensorFlowは引き続き ViTバリアントのサポートを拡大し続け、この分野のさらなる研究を推進している。