CNNに関して私を混乱させる質問がいくつかあります。
1)CNNを使用して抽出された特徴は、スケールと回転不変ですか?
2)データとの畳み込みに使用するカーネルは、すでに文献で定義されていますか?これらのカーネルの種類は何ですか?それはアプリケーションごとに異なりますか?
CNNに関して私を混乱させる質問がいくつかあります。
1)CNNを使用して抽出された特徴は、スケールと回転不変ですか?
2)データとの畳み込みに使用するカーネルは、すでに文献で定義されていますか?これらのカーネルの種類は何ですか?それはアプリケーションごとに異なりますか?
回答:
1)CNNを使用して抽出された特徴は、スケールおよび回転不変ですか?
CNN自体の機能は、スケールまたは回転不変ではありません。詳細については、「ディープラーニング」を参照してください。イアン・グッドフェロー、ヨシュア・ベンジオ、アーロン・クールヴィル。2016: http : //egrcc.github.io/docs/dl/deeplearningbook-convnets.pdf ; http://www.deeplearningbook.org/contents/convnets.html:
畳み込みは、スケールの変更や画像の回転など、他のいくつかの変換と自然に同等ではありません。これらの種類の変換を処理するには、他のメカニズムが必要です。
そのような不変条件を導入するのは、最大プーリング層です。
2)データとの畳み込みに使用するカーネルは、すでに文献で定義されていますか?これらのカーネルの種類は何ですか?それはアプリケーションごとに異なりますか?
カーネルは、ANNのトレーニングフェーズで学習されます。
私はあなたを混乱させるいくつかのことがあると思うので、最初に最初のものから。
上記は1次元信号の場合ですが、画像についても同じことが言えます。画像は単なる2次元信号です。その場合、方程式は次のようになります。
絵で、これは何が起こっているかです:
とにかく、心に留めておくべきことは、カーネルが、ディープニューラルネットワーク(DNN)のトレーニング中に実際に学習することです。カーネルは、入力を畳み込むものになります。DNNはカーネルを学習し、イメージ(または前のイメージ)の特定のファセットを引き出します。これは、ターゲットの目標の損失を下げるのに適しています。
これは理解するべき最初の重要なポイントです。伝統的に人々はカーネルを設計していましたが、ディープラーニングでは、ネットワークに最適なカーネルを決定させました。ただし、指定する1つのことは、カーネルの次元です。(これは、5x5、3x3などのハイパーパラメーターと呼ばれます)。
カプセルネットを提案しているGeoffrey Hintonを含む多くの著者は、この問題を定性的に解決しようとしています。この問題に定量的に対処しようとします。CNNですべての畳み込みカーネルを対称にする(8次の二面対称[Dih4]または90度増分回転対称など)ことにより、各畳み込み隠れ層の入力ベクトルと結果ベクトルのプラットフォームを提供します同じ対称特性(つまり、Dih4または90インクリメント回転対称など)と同期します。さらに、最初の平坦化レイヤーで各フィルターに同じ対称プロパティを持たせることにより(つまり、完全に接続されているが同じ対称パターンで共有する)、各ノードの結果値は定量的に同一であり、CNN出力ベクトルは同じになります同様に。変換同一CNN(またはTI-CNN-1)と呼びました。CNN(TI-CNN-2)内で対称入力または操作を使用して、変換が同一のCNNを構築できる他の方法もあります。TI-CNNに基づいて、ギア付き回転同一CNN(GRI-CNN)は、入力ベクトルを小さなステップ角だけ回転させた複数のTI-CNNによって構築できます。さらに、複数のGRI-CNNをさまざまな変換済み入力ベクトルと組み合わせることにより、定量的に同一のCNNを構成することもできます。
「対称要素演算子による変形的に同一で不変の畳み込みニューラルネットワーク」 https://arxiv.org/abs/1806.03636(2018年 6月)
「対称演算または入力ベクトルの組み合わせによる、変形的に同一で不変の畳み込みニューラルネットワーク」 https://arxiv.org/abs/1807.11156(2018年 7月)
「ギア付き回転同一および不変畳み込みニューラルネットワークシステム」 https://arxiv.org/abs/1808.01280(2018年 8月)