Transformer は CV 分野で CNN に代わる可能性がありますか?


現在、分類 (ViT)、検出 (DETR)、およびセグメンテーション (SETR) という 3 つの主要な画像問題に対する Transformer に基づくアプリケーションがすでに存在しており、すべて良好な結果を達成しています。では、将来、Transformer が CNN に取って代わることは可能でしょうか? Transformer は、NLP 分野での応用と同様に、CV 分野にも革命を起こすでしょうか? 将来的にはどのような研究アイデアが考えられますか?

パイセン:手法の動機から分析

この問いに答えるためには、単純に「存在が合理的」ではなく、私も使っている風見鶏を誰もが使っているので、その方法が提案する動機、つまりなぜそれが必要なのかということから分析するのが適切であると著者は考えています。
なぜCNNなのか?

まず、なぜ CNN が画像分野で広く使われているのかを理解する必要があり、まず、従来の手法、パターン認識ベースの手法、深層学習ベースの手法の 3 つの主要なポイントから始めることができます。

1. ビジュアル タスクで使用される従来の手法の大部分は、特定の分野で豊富な経験を持つ専門家に依存して、特定のタスクの最も代表的なデータ表現のセットを処理の入力特徴として設計し、特徴が区別できるようにします (通常は SIFT)。
第 2 に、一部の特徴抽出方法には人間の参加が必要であり、一部の古典的なエッジ検出演算子、水平検出、垂直検出などの一部の特徴抽出演算子は手動で設計されます。
しかし、一方で、専門家に頼って手動で機能を設計するには多くの事前知識が必要であり、モデルのパフォーマンスは設計するデータ表現にも大きく依存するため、時間と労力がかかるだけでなく、途中の複雑で変更可能なタスクに適した演算子を設計するには、一般化が必要です。
一方で、照明、撮影角度、オクルージョン、影、背景などのデータ収集環境や機器の影響により、これらの要因はモデル、つまり手動で設計されたモデルのパフォーマンスを大きく制限します。機能が堅牢ではありません。

2. パターン認識に基づく手法のほとんどは、ランダム フォレスト、サポート ベクター マシン、パーセプトロンなどの機械学習に関連する手法です。
従来の方法に対する機械学習の大きな利点は、純粋に手動による機能設計を回避でき、入力データ表現から出力マッピングまで一連のルールを学習できることです。
たとえば、AutoEncoder は、生成される結果は基本的にあいまいですが、ある入力セットから別のデータ セットの表現を学習できます。これらの方法には上記の利点がありますが、より適切なマッピング ルールのセットを効率的に学習する方法が鍵となります。
効率性を高めるために、複数の MLP を使用して入力データを表す特徴を学習するパーセプトロンを例に挙げます。しかし、これには明らかな欠陥があり、計算量が非常に多くなる一方で、入力を直接列ベクトルに平坦化すると、画像内のターゲットの元の構造とコンテキストが破壊されてしまいます。
これに基づいて、最適化を続け、より一般的な表現に拡張することができます。CNN、MLP は実際には CNN の特殊なケースです。

3. 画像認識分野における深層学習ベースの手法の最も典型的な応用は CNN です。CNN は階層的なデータ表現方法であり、高レベルの特徴表現は基礎となる特徴表現に依存し、より高度な意味情報を持つ特徴を浅いものから深いものまで抽象的に抽出します。
たとえば、最初の層はエッジ、角、線などの低レベルの特徴を抽出する傾向があり、2 番目の層は色やテクスチャなどの中レベルの特徴を抽出し、3 番目の層はより抽象的な高レベルの特徴を抽出します。セマンティクス。ネットワークの深さは、モデルがより抽象的な高度な特徴を抽出するのに役立ち、ネットワークの幅は、モデルがより豊富な特徴表現を抽出するのに役立ちます。
この接続主義は本質的に問題を解決するための優れた方法であり、各層は独自の単純な表現を学習しますが、最終的には接続を通じて強力な (強力な) 特徴表現能力を形成します。

さらに、CNN には、コンボリューション カーネルを共有することで特徴を抽出するという非常に重要な機能もあります。そのため、パラメータの量を大幅に削減して冗長な計算を回避し、ネットワーク モデルの計算の効率を向上させることができます。一方で、畳み込みとプーリングの組み合わせにより、ネットワークは特定のシフト不変性と等変性を持ちます。
もちろん、分類タスクの場合は、ネットワークが翻訳不変性の特性を備えていることが望まれ、セグメンテーション タスクの場合は、ネットワークが翻訳やその他の変動性を備えていることが望まれますが、これらはすべて将来のことなので、ここでは詳しく説明しません。したがって、これは、CNN がより適切なマッピング ルールのセットを効率的に学習する方法の鍵となります。

CNN には非常に多くの利点がありますが、最初は一夜にして達成できるものでも、完璧なものでもありません。

画像セグメンテーションを例にとると、完全な畳み込みニューラル ネットワーク FCN が提案される前は、ほとんどの CNN ベースの手法はパッチワイズ、つまり画像ブロックを入力として CNN に入力して対応するカテゴリを予測することに基づいていました。十分なコンテキスト情報が不足している。

では、なぜ FCN がこれほど影響力があり、マイルストーン ネットワークとさえ呼ぶことができるのかというと、セマンティック セグメンテーションなどの集中的なタスクにとって最も重要であるパッチ単位、ピクセル単位を真に実現しているからです。

もちろん、FCN にも粗いセグメンテーション結果など、多くの欠点がありますが、その考えに基づいて多くの拡張を行うことを妨げるものではありません。
たとえば、近年提案されているセグメンテーションに関する論文の多くは改善を目的としており、エンコーダを改善し、より強力な畳み込みモジュールを使用してより代表的な特徴を抽出することを主張する人もいます。
一部の人々は、より正確な位置決めを達成するために、エンコーダのダウンサンプリング プロセス中に空間詳細情報の損失を補うためにジャンプ接続操作を導入するなど、デコーダの改善に熱心です。ジャンプ方法は別の問題であり、Unet への直接接続があります。 。
次に、セマンティック ギャップやバックグラウンド ノイズを使用してこれらのギャップを妨害し、突破し、複数の畳み込みを使用して除去し、高レベルの機能の強力なセマンティクスと低レベルの機能の豊富な詳細を組み合わせて融合を導きます。曖昧さを排除し、背景の騒音を抑えるために注意を払う人もたくさんいます。

コーデックに加えて、特徴ピラミッドのアイデアを借りて、複数のレイヤーの結果を組み合わせて出力を融合し、より洗練された特徴表現を取得することもできます。モデル自体を捨てた後は、完全教師あり、半教師あり、自己教師あり、少数ショット学習、オムショット学習、さらには教師なし領域など、タスク自体から始めることもできます。突破する。

分類、検出などの他の視覚的なタスクや、超解像、ノイズ除去などの低レベルのタスクも比較できます。問題は、ではどうやってそれを解決できるのかということです。

なぜ変圧器なのか?

ここまで、CNNがなぜ提案されたのか、その利点はどこにあるのかを簡単にまとめました。
CNN は上記のような利点を持っていますが、たとえば、コンボリューション カーネルやフィルターを使用して抽象的な高度な特徴を継続的に抽出するため、理論的にはその受容野は画像全体をカバーできるはずですが、実際の受容野は多くの研究で示されています。理論的な受容野よりも小さい. これは、特徴を捕捉するためにコンテキスト情報を最大限に活用するのに役立たない. より深い畳み込み層を積み重ね続けることはできますが、明らかにモデルが肥大化して計算量が急激に増加します、本来の意図に反します。
トランスフォーマーの利点は、注意を使用してグローバル コンテキスト情報をキャプチャし、ターゲットへの長距離依存性を確立し、それによってより強力な特徴を抽出できることです。

したがって、CNN をやみくもに放棄する必要はなく、考え方を変えて 2 つを組み合わせたり、transformer を特徴抽出器として使用したり、CNN のいくつかの利点を組み合わせて既存の問題を解決したりすることもできるかもしれません。
この方向の次の考え方について、著者は、変圧器が新鮮になった後、つまり、変圧器を使用して各タスクを置き換えた後、将来の作業は 2 つを組み合わせてより良い、またはより良いものを達成することになるのではないかと推測しています。より妥当な結果が得られるので、様子を見ましょう。

一般に、それぞれの技術の提案は、その時々の環境に多かれ少なかれ影響を受けながら、問題を見つけ、問い、解決し続けることを繰り返しながら、一歩一歩進んでいきます。
マクロの観点から見ると、対象テクノロジーがより速く、より良く開発される最も重要な理由の 1 つは、その普遍性です。
個人的には、これは非常に重要だと思います。普遍性とは、参入障壁が低いことを意味します。こうすることで、より多くの人がこの輪に流れ込み、「バブル」はさらに大きくなります。資本がその費用を負担し、本当に専門家が資金を提供します。注目されることによってのみ、研究、既存のテクノロジーを突破し、知識の限界を継続的に広げ、人類に利益をもたらすためにテクノロジーを利用するための十分な資金と動機を得ることができます。
もちろん、そこには多くの人や物が混在しているはずだが、マクロの方向性を正しく捉え、システムが比較的完璧であれば、「バブル」の幻滅は避けられ、健全な右肩上がりの発展は維持できるだろう。全体として。結局のところ、何事にも両面があり、開発は諸刃の剣なのです。
私たちは、巨大な企業や組織が、より大きな責任を負い、この時代のリーダーであり翼となり、システムの檻の下で、急ぐのではなく、健全で上向きの道にこの時代を導いてくれることを願うばかりです。野菜市場での「共同購入」などのネギ伐採活動も、本当の意味での「善のための技術」のはずだ。

Qi Guojun: CNN と Transformer には、視覚情報の処理においてそれぞれ長所と短所があります。

CNN ネットワークには、低レベルの特徴と視覚構造の抽出において比較的大きな利点があります。これらの低レベルの特徴は、パッチ レベルでキーポイント、ライン、およびいくつかの基本的な画像構造を構成します。これらの基礎となる特徴には明らかな幾何学的特徴があり、多くの場合、平行移動や回転などの変換における一貫性や共分散に焦点が当てられます。
たとえば、CNN 畳み込みフィルターによって検出されたキー ポイント、オブジェクトの境界、および視覚要素を構成するその他の基本単位は、平行移動などの空間変換の下で同時に変換 (共変) される必要があります。この種の共変動を扱う場合、CNN ネットワークは自然な選択です。
しかし、これらの基本的な視覚要素を検出するとき、高レベルの視覚的意味情報は、これらの要素がオブジェクトを形成するためにどのように相互に関連しているか、オブジェクト間の空間的位置関係がどのようにシーンを構成しているかに多くの場合より注意を向けます。現時点では、これらの要素間の関係を扱うには、トランスの方がより自然で効果的です。
これら 2 つの側面の観点から、低レベルのビジョンの処理における CNN の利点と、視覚要素とオブジェクト間の関係の処理におけるトランスフォーマーの利点を組み合わせることは、非常に有望な方向性となるはずです。

ちょっとした一般事項: 十分な大きさのパラメーター + 優れたトレーニング方法により、3 層ニューラル ネットワークはあらゆる非線形関数を近似できます。

分類、検出、セグメンテーションにおけるトランスフォーマーの応用を簡単に見てみましょう: (1)分類 ViT : 画像は 16x16 ワードの価値があります: 大規模な画像認識のためのトランスフォーマー

画像は固定サイズのパッチに分割され、単語としてトランスフォーマーのエンコーダーに送信され、途中で畳み込み演算は行われず、分類カテゴリを予測するためにクラス トークンが追加されます。
(2) DETR の検出: トランスを使用したエンドツーエンドの物体検出

最初に CNN を使用して特徴を抽出し、次に最終的な特徴マップの各点を単語と見なします。これにより、特徴マップはシーケンス単語になり、検出の出力はたまたま集合オブジェクトになるため、トランスフォーマーは適切ですこのタスクのために。
(3) Split SETR : トランスフォーマーを使用したシーケンス間の観点からセマンティック セグメンテーションを再考する

ViT を画像のエンコーダーとして使用し、CNN デコーダーを追加してセマンティック マップの予測を完了します。
もちろん、変流器ベースのモデルは、分類、検出、セグメント化における上記の用途に限定されませんが、基本的には同じ考え方です。
たとえば、「ViT-FRCNN: Toward Transformer-Based Object Detection」は、ViT モデルと RCNN モデルを組み合わせて検出を実現する作品です。CV のトランスフォーマーに関する詳細については、最新のレビュー記事「ビジュアル トランスフォーマーに関する調査」を参照してください。

私の謙虚な考えをいくつか紹介します。

(1) CNN は、畳み込み層を継続的に蓄積することにより、ローカル情報からグローバル情報への画像の抽出を完了します。継続的に蓄積される畳み込み層は、画像全体をカバーするまで徐々に受容野を拡大しますが、変換器はローカル情報からの画像の抽出を想定しません。が開始され、最初からグローバルな情報を取得できるため、学習はより困難になりますが、長期的な依存関係を学習する能力はトランスフォーマーの方が強いです。

さらに、ViT の分析から、前の層の「受容野」(論文では平均注意距離)は異なるものの、一般に小さいにもかかわらず、後の層の「受容野」はどんどん大きくなっており、これは次のことを示しています。 ViT も学習される CNN と同じパラダイム。

(2) CNN には、変換不変性などの画像問題に対する自然な帰納的バイアスと、CNN のバイオニック特性があり、これにより CNN は画像問題に対して容易になりますが、対照的に、transformer にはこの利点がないため、学習は困難です。非常に困難であり、より良いトレーニング結果を達成するには、多くの場合、より大規模なデータセット (ViT) またはより強力なデータ拡張 (DeiT) が必要です。
幸いなことに、トランスフォーマーの移行効果はより優れており、大規模なデータ セットの事前学習モデルを小規模なデータ セットに適切に移行できます。ViT 氏のもう 1 つのことは、トランスフォーマーのスケーリング能力が非常に強力であるため、パラメーターの量をさらに増やすと、より良い結果が得られる可能性があるということです(驚くべき GPT モデルなど)。

(3) 現時点では、作業の大部分が依然としてトランスフォーマーと既存の CNN 作業を組み合わせていることがわかります。たとえば、ViT は実際にはハイブリッド アーキテクチャを備えています (ResNet によって提案された特徴マップを ViT にフィードします)。
検出やセグメンテーションなどの問題については、CNN 手法は非常に成熟しており、すぐにトランスフォーマーに置き換えるのは困難ですが、現在の作業は、速度と効果の両方を考慮した CNN とトランスフォーマーの混合です
さらに、より大きな解像度の画像が入力されると、トランスフォーマーの計算が非常に大きくなるため、ViT の入力はピクセルではなく小さなパッチになることも考慮する必要があります。トランスエンコーダーは1/32フィーチャーで、計算上の考慮事項はありますが、エフェクトに影響するはずなので、その後の改良作業でDETRを変形させます。
短期的には、CNN とトランスフォーマーは引き続き連携するはずです。最新の論文「オブジェクト検出のためのトランスフォーマーベースのセット予測の再考」では、既存の CNN 検出モデルとトランスフォーマーのアイデアを組み合わせて、DETR よりも優れた結果を達成しています (トレーニングの収束速度も高速です)。

(4) ここで、ニューラル ネットワークの本質、つまり問題に適合する複雑な非線形システムにたどり着きますCNN であれ、RNN であれ、トランスフォーマーであれ、それは単に問題に当てはめただけであり、どちらが良いとか悪いということはありません。

限定的な問題であれば高い低いの差はあるかもしれませんが、データ量が増えてくると問題の効果は最終的には計算量やモデルのパラメータに依存するのではないかと考えています。パラメータが十分に大きく、さらに重要なことに、適切なトレーニング方法が見つかった場合、3 層ニューラル ネットワークは任意の非線形関数を近似できることが証明されているため、どのモデルよりも重要です。

今後のことはなんとも言えませんが、まだまだ期待できそうです!

元のリンク:

【1】https://www.zhihu.com/question/437495132/answer/1656908750

【2】https://www.zhihu.com/question/437495132/answer/1658559732

【3】https://www.zhihu.com/question/437495132/answer/1656610825

おすすめ

転載: blog.csdn.net/bruce__ray/article/details/131144125