畳み込みニューラルネットワークにおけるパラメータ共有/重みの複製

畳み込みニューラルネットワークにおけるパラメータ共有/重みの複製

パラメータの共有や重みの複製は、ディープラーニングでは見落とされがちな領域です。しかし、この単純な概念を理解することは、畳み込みニューラル ネットワークの内部をより広く理解するのに役立ちます。畳み込みニューラル ネットワーク (CNN) は、ネットワークを介して供給される画像をアフィン変換に対して不変にすることができます。 この機能により、オフセット パターンを認識し、傾いた画像やわずかに歪んだ画像を識別することができます。

[[334801]]

アフィン不変性のこれらの特性は、CNN アーキテクチャの 3 つの主な特性によって導入されます。

  • 局所受容野
  • 重み共有(パラメータ共有)
  • 空間のサンプリング

この記事では、重み共有について説明し、CNN アーキテクチャにおける重み共有の用途と利点を理解します。この記事は、機械学習、特にディープラーニングに取り組んでいるあらゆるレベルの人々を対象としています。

導入

[[334802]]

まず、CNN の畳み込み層を頭の中で視覚化してみましょう。 。

CNN の畳み込み層 (conv 層) には、ニューロンとも呼ばれるユニットのグループが含まれています。

conv レイヤーには、レイヤー内にいくつかのフィルターも含まれており、これらは事前定義されたハイパーパラメータです。

レイヤー内のフィルターの数は、次のレイヤーへの入力として conv レイヤーによって作成されたアクティベーション/特徴マップの出力の深度次元を表します。

各フィルターには、レイヤー内の単一ユニットの局所受容野に対応する幅と高さが設定されています。入力データに適用されたフィルターは、畳み込み層の出力である特徴マップを生成します。

CNN のトレーニング段階では、フィルターの重み値を学習できます。畳み込み層の出力次元には深度コンポーネントがあり、出力の各セグメントをセグメント化すると、2D 特徴マップが得られます。単一の 2D 平面で使用されるフィルターには、同じ平面で使用されるすべてのフィルター間で共有される単一の重みが含まれます。

これの利点は、入力データの一部と入力データの別の部分で同じ特徴検出器が保持されることです。

畳み込み層の出力は特徴マップのセットであり、各特徴マップはユニット内の固定重みパラメータと入力データ間の畳み込み演算の結果です。

畳み込みニューラル ネットワーク レイヤーの基本的な特性は、入力レイヤーを介してレイヤーに入力される入力画像に対して行われたアフィン変換が、その特徴マップに反映されることです。

したがって、入力データのシフト、スキュー、または方向に対して、特徴マップは、入力データが受けた量だけシフト、スキュー、または方向付けられた出力を提供します。

理論を実践する

このセクションの目的は、畳み込みニューラル ネットワークで発生する重み共有の利点を明らかにすることです。

2 つの一般的な CNN アーキテクチャである LeNet と AlexNet の最初の畳み込み層で、異なる重み共有と重み共有を使用してトレーニング可能な重みの数を導出します。

実行する手順は次のとおりです。

1. 変換層の出力幅を取得する

(入力サイズ幅 - フィルタサイズ + (2 * パディング) / ストライド) + 1 = 畳み込み層の出力幅

  • 変換層のニューロン/ユニットの数を数える
  • 重み共有を使用しないトレーニング済みパラメータ(バイアスを含む)の数を数える
  • 重みを使用して共有されるトレーニングパラメータ(バイアスを含む)の数をカウントする

次の表は、畳み込み層内のトレーニング可能なパラメータ/重みの数を導出するために使用される AlexNet および LeNet CNN アーキテクチャからの情報を示しています。

アレックスネット

  • 変換層の出力幅: =((227-11)/4)+1=55(変換層の出力幅)
  • 畳み込み層のニューロン数/ユニット数 = 出力の高さ * 出力の幅 * 特徴マップの数 = 55*55*96 (畳み込み出力の数) = 290,400 ユニット
  • 畳み込み層のトレーニングパラメータまたは重みの数(重み共有を使用しない)= 290400 * ((11 * 11 * 3) + 1 バイアス) = ​​105,415,600
  • 重み共有を使用するトレーニングパラメータまたは重みの数 = 96 * ((11 * 11 * 3) + 1 バイアス) = ​​34944

レネット

  • 変換層の出力幅: =(((28–5)/1)+1=24(変換層の出力幅)
  • 畳み込み層のニューロン数/ユニット数 = 出力の高さ * 出力の幅 * 特徴マップの数 = 24*24*6 (畳み込み出力の数) = 3,456 ユニット
  • 畳み込み層内のトレーニング可能なパラメータまたは重みの数(重み共有を使用しない)= 3456 * ((5 * 5 * 1) + 1 バイアス) = ​​89,856
  • 重み共有を使用してトレーニングされたパラメータまたは重みの数 = 6 * ((5 * 5 * 1) + 1 バイアス) = ​​156

要約する

[[334803]]

明らかに、パラメータ共有により、Conv レイヤーの重みの数を減らすことができます。

パラメータ共有は、ネットワーク内のすべての conv レイヤーに使用されます。

パラメータの共有によりトレーニング時間が短縮されます。これは、バックプロパゲーション中に実行する必要がある重みの更新回数を減らすことによる直接的な利点です。

繰り返しになりますが、パラメータ共有は、畳み込み層内の平面内のユニットのフィルターと入力データとの間の畳み込みの結果として特徴マップが生成されるときに発生します。 このレイヤー プレーン内のすべてのユニットは同じ重みを共有します。そのため、重み/パラメーター共有と呼ばれます。

<<:  米メディア:人工知能(AI)は、人間の推論の欠点を伴わずにコンピューティングの利点を実現する

>>:  Microsoft Megvii の顔認識は 100% 動作不能! 写真の「見えないマント」で写真のプライバシー データを保護

ブログ    
ブログ    
ブログ    

推薦する

AR テクノロジーは自動車メーカーにとって次の焦点となるのでしょうか?

現在、拡張現実(AR)技術はもはや新しい製品ではありませんが、その適用範囲が限られているため、ARは...

...

自動運転車の未来に関するレポート:乗用車の95%が消滅し、7兆ドルの旅行市場に4つの大きなチャンスがある

[[199334]]自動運転車は20年以内に世界経済を劇的に変え、保険、メディア、セキュリティ、物流...

Google、写真を撮るだけで皮膚疾患を検出するAIツールの新機能を発表

5月19日、Googleの開発者会議I/O 2021が開幕した。完全オンライン形式を採用し、Goog...

この「アンケート」で初めて AI が人間を上回る、Microsoft が SuperGLUE でトップ

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

科学者たちはロボットを使って体外でマウスの脳神経を操作します! 1分以内に通信接続

この記事はLeiphone.comから転載したものです。転載する場合は、Leiphone.com公式...

...

大規模言語モデルの詳細な分析: トレーニングから大規模モデルの展開まで

導入データサイエンスの分野が進歩するにつれ、複雑な自然言語を処理および生成できる高度な AI システ...

...

H100推理が8倍に急上昇! NVIDIAは10以上のモデルをサポートするオープンソースのTensorRT-LLMを正式に発表した。

GPU が不足している人々は、その苦境に別れを告げようとしています。 NVIDIA は現在、H10...

...

大学入試の願書記入や学校選びの際、人工知能を専攻するならこれらの学校を選ばなければなりません!

すでに非常に人気がある人工知能は、大学入試の願書が記入されるにつれて、間違いなく人気が続くでしょう。...

Google は、99% のプログラマーに勝る AutoML を Kaggle プラットフォームに統合しました。

今後、Kaggle のコンペティションに参加する際には、AutoML を直接送信して、参加する AI...

ビッグデータとリアルタイム分析のためのアルゴリズム分類

今日、ビッグデータ技術の発展と進歩により、大量のデータを収集および送信するための新しい、より効率的な...

人工知能の応用、開発、影響についての考察

ケンブリッジ大学人工知能研究センターは、人工知能によってもたらされる新しい能力とそれが直面するリスク...