CNN ディープ ラーニングのガイド

公開: 2022-10-14

人間と機械のスキルのギャップを埋める人工知能の能力は劇的に向上しました。 プロもアマチュアも、素晴らしい結果を達成するために、フィールドの多くの面に焦点を当てています。 コンピューター ビジョンの分野は、そのような分野の 1 つです。

目次

米国での AI & ML プログラム

LJMU と IIITB の機械学習と AI の理学修士号 IIITB の機械学習と人工知能のエグゼクティブ PG プログラム
すべてのコースを調べるには、以下のページにアクセスしてください。
機械学習コース

この分野の目的は、コンピューターが人間と同じように世界を見て理解する能力を与え、この理解を画像とビデオの認識、画像の分析と分類、メディアの再現、レコメンデーション システム、自然言語処理などを含むさまざまなタスクに使用することです。 畳み込みニューラル ネットワークは、時間の経過とともにコンピューター ビジョンのディープ ラーニングの改善を開発および改良するために使用される主要なアルゴリズムです。 深層学習アルゴリズムについてもっと調べてみましょう!

世界のトップ大学から機械学習認定を取得します。 マスター、エグゼクティブ PGP、または上級認定プログラムを取得して、キャリアを加速させましょう。

畳み込みニューラル ネットワークとは

畳み込みニューラル ネットワーク (CNN) は、入力画像を取り込み、学習可能な重みやバイアスなど、画像内のさまざまな要素やオブジェクトに重要性を与え、それらを区別できる深層学習手法です。 比較的言えば、CNN は他の分類技術よりも大幅に少ない前処理を必要とします。 CNN にはこれらのフィルターとプロパティを学習する機能がありますが、原始的な手法では、フィルターは手作業で設計されています。

CNN のアーキテクチャは、視覚野がどのように構成されているかによって影響を受け、人間の脳のニューロンの接続ネットワークに似ています。 個々のニューロンは、受容野として知られるこの制約された視野領域でのみ刺激に反応します。 この一連の重なりが視野全体を覆っています。

畳み込みニューラル ネットワークのアーキテクチャ

畳み込みニューラル ネットワークのアーキテクチャは、従来のニューラル ネットワークのアーキテクチャとは異なります。 通常のニューラル ネットワークは入力を変換し、いくつかの隠れ層を通過させます。 各層は、その下の層のすべてのニューロンにリンクされた一連のニューロンで構成されます。 最後の完全に接続された出力層は、予測が表される場所です。

畳み込みニューラル ネットワークの構造は少し異なります。 レイヤーはまず、幅、高さ、奥行きの 3 次元で配置されます。 さらに、次の層のニューロンの一部のみが下の層のニューロンに接続されます。 次に、出力は単一の確率スコア ベクトルに凝縮され、畳み込み層と共にグループ化されます。

CNN は 2 つの部分で構成されています。

隠れ層からの特徴の抽出

ネットワークは、このセクションで一連の畳み込み操作とプーリング操作を実行して、特徴を検出します。 これは、トラの縞模様、2 つの耳、および 4 本の脚 (1 つの画像がある場合) をネットワークが識別する場所です。

セクション分類

この場合、これらの取得された機能に加えて、畳み込み層が分類器として機能します。 それらは、画像のオブジェクトがアルゴリズムの予測と一致する可能性を示します。

特徴の抽出

CNN の重要なコンポーネントの 1 つは畳み込みです。 2 つの関数を数学的に組み合わせて 3 つ目の関数を生成することを畳み込みと呼びます。 2 つのデータセットを結合します。 CNN の場合、フィルターまたはカーネルを使用して入力データに畳み込みを実行することにより、特徴マップが作成されます。 畳み込みは、入力上でフィルターを移動することによって実行されます。 各位置は行列乗算を実行し、出力を特徴マップに合計します。

操作ごとに異なるフィルターを使用して、入力に対していくつかの畳み込みを行います。 その結果、さまざまな特徴マップが生成されます。 畳み込みレイヤーの出力は、最終的にこれらすべての機能マップを使用して組み立てられます。

他のすべてのニューラル ネットワークと同様に、アクティベーション プロセスを使用して出力を非線形にし、アクティベーション関数を使用して畳み込みニューラル ネットワークで畳み込みの出力を送信します。

畳み込みニューラル ネットワークの種類

畳み込み層:

CNN の基本コンポーネントは畳み込み層です。 これは、ネットワーク上の計算負荷の大部分を担います。 このレイヤーは、2 つのマトリックス間の内積を作成します。一方はカーネル、つまり学習可能なパラメーターのコレクションであり、もう一方は受容野の制約された領域です。 写真と比べると、カーネルは空間的には小さいですが、深くなっています。 これは、画像が 3 つのチャネルで構成されている場合、カーネルの幅と高さが空間的に小さくなることを示しています。 ただし、深さは 3 つのチャネルすべてに上昇します。

カーネルは、フォワードパス中に画像の高さと幅を横切って移動し、その受容領域の画像表現を作成します。 その結果、アクティベーション マップと呼ばれる画像の 2 次元表現が作成され、画像内の各位置でのカーネルの応答が明らかになります。 ストライドは、カーネルのスライド可能なサイズの名前です。

プーリング層:

このレイヤーは、データの処理に必要な計算能力を削減するだけです。 これは、強調表示されたマトリックスの次元をさらに縮小することによって実現されます。 このレイヤーの近隣の小さな部分から支配的な特徴を抽出しようとします。

Average-pooling と Max-pooling は、2 つの異なるタイプのプーリング戦略です。

単純にプーリング領域内のすべての値の中で最も高い値を取る最大プーリングとは対照的に、平均プーリングはプーリング領域内のすべての値を平均化します。

レイヤーをプールした後、画像の主要な要素を含むマトリックスができました。このマトリックスの次元はさらに小さいため、次の段階で非常に役立ちます。

完全に接続された層:

畳み込み層の出力によって提供される高レベルの特性の非線形順列を学習する安価な方法は、全結合層を追加することです。 その領域では、全結合層が線形ではない可能性のある関数を学習しています。

マルチレベル パーセプトロンに適した形式に変換した後、入力画像を列ベクトルに平坦化します。 フィードフォワード ニューラル ネットワークが平坦化された出力を受け取り、トレーニングの反復ごとにバックプロパゲーションが使用されます。 モデルは、Softmax 分類法を使用して、多くのエポックにわたって支配的で特定の低レベルの特徴を識別することにより、画像を分類できます。

非線形層:

畳み込みは線形操作であり、画像は線形ではないため、非線形性レイヤーは、アクティベーション マップに非線形性を追加するために、畳み込みレイヤーの直後に頻繁に含まれます。

非線形操作にはさまざまな形式がありますが、最も一般的なものは次のとおりです。

シグモイド

シグモイド非線形性の数式は () = 1/(1+e ) です。 実数値を 0 から 1 の範囲に分解します。シグモイドの勾配は、アクティベーションが末尾にある場合にほぼゼロになります。これは非常に好ましくないシグモイドの特徴です。 局所勾配が小さくなりすぎると、バックプロパゲーションは効果的に勾配を殺します。 さらに、ニューロンへの入力が完全に正であるとします。 その場合、シグモイド出力は完全に正または完全に負のいずれかになり、重みの勾配更新のジグザグ ダイナミクスが発生します。

タン

Tanh は、実数値を範囲 [-1, 1] に圧縮します。 シグモイド ニューロンと同様に、活性化は飽和しますが、それらとは異なり、その出力はゼロ中心です。

ReLU

Rectified Linear Unit (ReLU) は、最近非常に人気が高まっています。 関数 ()=max (0,) 計算を実行します。 別の言い方をすれば、アクティベーションはゼロしきい値で存在するだけです。 ReLU は収束を 6 倍高速化し、sigmoid や tanh よりも信頼性が高くなります。

残念ながら、ReLU はトレーニング中に脆くなる可能性があり、これが欠点です。 強い勾配は、ニューロンがそれ以上更新されないようにすることで更新できます。 ただし、適切な学習率を選択することで、これを機能させることができます。

人気の機械学習と人工知能のブログ

IoT: 歴史、現在、未来 機械学習のチュートリアル: ML を学ぶ アルゴリズムとは? シンプル&イージー
インドのロボット工学エンジニアの給与:すべての役割 機械学習エンジニアの 1 日: 彼らは何をしているのか? IoT(モノのインターネット)とは
順列と組み合わせ:順列と組み合わせの違い 人工知能と機械学習のトップ 7 トレンド R による機械学習: 知っておくべきすべてのこと

UpGrad で CNN ディープ ラーニングのガイドを開始する

LJMU と協力して、UpGrad で機械学習と人工知能の理学修士号を取得します。

証明書プログラムは、業界関連のトピックを提供することにより、現在および将来の技術的役割のために学生を準備します。 このプログラムでは、実際のプロジェクト、複数のケーススタディ、および主題の専門家によって提供される国際的な学術も非常に強調されています。

サインアップすることで、ネットワーク監視、勉強会、360 度の学習サポートなど、UpGrad 独自の機能を利用できます。

CNN の深層学習アルゴリズムとは?

CNN が動作する方法は、画像を取得し、画像内のさまざまな項目に応じて重みを割り当て、それらを互いに分離することです。 他の深層学習アルゴリズムと比較して、CNN はデータの前処理をほとんど必要としません。

CNN とディープ ラーニングの違いは何ですか?

ディープラーニングは、実際よりもプロフェッショナルに聞こえるようにマーケティングで使用されることがよくあります。 深層ニューラル ネットワークには、CNN をはじめ、さまざまな種類があります。 CNN は、画像識別での多数の有利な用途のために好まれています。

CNN が完全接続型よりも優れているのはなぜですか?

畳み込みには密な接続がなく、すべての入力ノードがすべての出力ノードに影響を与えるわけではありません。 これにより、畳み込み層はより柔軟に学習できるようになりました。 さらに、レイヤーごとの重みが少なくなるため、画像データなどの高次元の入力にメリットがあります。

CNN は画像のみに使用されますか?

はい。 CNN を使用して、任意の 2D および 3D 配列のデータを処理できます。