畳み込みニューラルネットワークが分かりませんか?怖がらないでください、このかわいい写真を​​見ればわかりますよ!

畳み込みニューラルネットワークが分かりませんか?怖がらないでください、このかわいい写真を​​見ればわかりますよ!

この記事では、畳み込みニューラル ネットワーク (CNN) の基本原理を、関連する数学理論を省き、最も簡潔かつわかりやすい方法で説明します。

同時に、CNN ネットワークをゼロから構築するなどの問題に興味がある場合は、「Artificial Intelligence for Humans Volume 3: Deep Learning and Neural Networks」の第 10 章を読むことを著者は推奨しています。

さあ、CNNの旅を始めましょう——

ネットワーク構造

CNN モデルは通常、フィードフォワード ニューラル ネットワーク モデルに基づいて構築されるため、その構造を理解しておく必要があります。違いは、「非表示レイヤー」が次のレイヤーに置き換えられることです。

  • 畳み込み層
  • プーリングレイヤー

完全接続層(密層)

構造は次の図のようになります。

畳み込み

この段階では、入力画像はグリッドによってスキャンされ、ネットワークへの入力として渡されます。次に、ネットワークは入力画像に畳み込み層を適用し、3 つの画像を含む 3D キューブ構造に分割します。これら 3 つの画像フレームは、それぞれ元の画像の赤、緑、青の情報を表します。

次に、PhotoShop のフィルターを使用して特定の特徴を強調するのと同様に、画像に畳み込みフィルター (ニューロンとも呼ばれます) を適用します。たとえば、漫画「Doc And Mharti」では、Roberts クロス エッジ強調フィルターを使用した効果が次の図に示されています。

オリジナル画像

治療後

100 種類以上のフィルターを備えたニューラル ネットワークが複雑な特徴を選別する能力がいかに強力であるかは想像に難くなく、それが現実世界の物事を識別するのに大いに役立つでしょう。ニューラル ネットワークが画像に畳み込みフィルターを適用すると、特徴/活性化マップを取得できます。

特徴マップは、指定された領域内の特定のニューロンによってアクティブ化されます。たとえば、下の左側の画像にエッジ検出フィルターを追加すると、そのアクティブ化マップが右側の画像に表示されます。

これらの点は 0 の行を表します (これらの領域がエッジである可能性が高いことを示します)。 2 次元配列では、値「30」は、画像領域にエッジが存在する可能性が高いことを示します。

レイヤーをアクティブ化

活性化マップができたら、その中の活性化関数を使用できます。研究者の最初の関数である ReLU 活性化関数 (正規化線形ユニット) を例として使用してみましょう。しかし、シグモイド関数や双曲正接関数を使用すると最良のトレーニング結果が得られると信じている研究者もいますが、私はそうは思いません。

アクティベーション レイヤーを使用すると、システムに非線形性が導入され、入力と出力の一般性が向上します。 ReLU(x) 関数は、単純に max(0,x) またはアクティベーション マップ内の負の重みを返します。

プーリング層

次のベストプラクティスは通常、特徴マップにディーププーリング(またはその他のタイプのプーリング)を適用することです。プーリング層を適用する原理は、小さなグリッドで画像をスキャンし、各グリッド セルを、指定されたグリッド内の最適な値を含む単一のセルに置き換えることです。

これを実行する重要な理由の 1 つは、特定の特徴が入力の特定の領域にあることがわかれば、その特徴の正確な位置を無視してデータを一般化し、過剰適合を減らすことができることです。たとえば、トレーニングの精度が 99% に達したとしても、これまでに見たことのない新しいデータでテストすると、その精度は 50% にしかなりません。

出力層

***プーリング層の後は、完全に接続されたネットワークに渡される情報の一部である、残りのアクティベーション マップについて説明します。完全接続層が含まれており、前の層の各ニューロンの出力を完全接続層のニューロンに単純にマッピングし、出力にソフトマックス関数を適用します。これは、前述の ReLU 関数に似た活性化関数です。

画像を分類するためにニューラル ネットワークを使用するため、ここではソフトマックス関数を使用します。ソフトマックス出力は、合計が 1 になる確率のリストを返します。各確率は、特定の画像が特定の出力クラスに属する確率を表します。しかし、後で画像の予測や復元のタスクになると、線形活性化関数の方がうまく機能します。

これまでは、畳み込み層とプーリング層が 1 つずつという単純なケースのみを検討してきたことに注意してください。最高の精度を達成したい場合は、通常、複数の層を積み重ねる必要があります。各完全な反復の後、ネットワークを通じて計算された損失に基づいて重みが更新されます。

<<:  Ant Financialが機械学習ツールSQLFlowをオープンソース化、機械学習はSQLよりも簡単

>>:  AIがバリアフリー時代へ:手話認識・翻訳の応用が意味するものとは?

ブログ    
ブログ    
ブログ    

推薦する

アクセンチュアは、ジェネレーティブAIがビジネスにとって重要な破壊的要因であると強調

アクセンチュアがダボスで開催される世界経済フォーラム年次総会に先立ち発表した「2024 Pulse ...

機械学習の次元削減手法で「次元の呪い」を打破する

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

この記事では機械学習における3つの特徴選択手法を紹介します。

機械学習では特徴を選択する必要があり、人生でも同じではないでしょうか?特徴選択とは、利用可能な多数の...

2022 年に注目すべき音声技術の 10 大予測

2022年の音声技術に関する主な予測は次のとおりです。 [[434566]] AlexaやSiriの...

マルチモーダルディープラーニング:ディープラーニングを用いてさまざまな情報を統合する

ディープラーニングを使用して、さまざまなソースからの情報を統合します。マルチモーダルデータ私たちの世...

...

...

IEEE コンピュータ協会が 2023 年の技術トレンド予測評価を発表

コンピューターサイエンスとエンジニアリングの主要会員コミュニティである IEEE コンピューターソサ...

...

...

トヨタのAIの旅:車だけにとどまらない

今日の自動車メーカーは、市場での地位を今後も維持したいのであれば、強力な自動運転技術を確立しなければ...

...

Baidu Create 2018 ディープラーニング フロンティア テクノロジーと産業応用公開コースのハイライト

[51CTO.com からのオリジナル記事] 中国の開発者が集まる毎年恒例の盛大な集まりである Ba...

Amazon Lexについて

Amazon Lex は、音声とテキストを使用してあらゆるアプリケーションに会話型インターフェースを...