主要内容

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

畳み込みニューラル ネットワークについて

畳み込みニューラル ネットワーク ((网络)は深層学習に広く使用されているツールです。イメージを入力とする場合に特に適していますが、テキスト、信号、およびその他の連続応答などの他の用途にも使用されます。他のタイプのニューラル ネットワークとは次のいくつかの点で異なっています。

畳み込みニューラル ネットワークは視覚皮質の生物学的構造からヒントを得ています。視覚皮質には単純型細胞と複雑型細胞が含まれています[1]。これらの細胞は、視野の小領域に基づいて活性化することがわかっています。これらの小領域は、受容野と呼ばれます。この研究結果からヒントを得て、畳み込み層のニューロンは、他のタイプのニューラル ネットワークのように全結合になるのではなく、その前の層の小領域に結合します。ニューロンは、イメージのこれらの小領域の外にある領域には反応しません。

これらの小領域は重なっている場合があります。したがって、康涅特のニューロンは、空間相関のある結果を生成します。一方、他のタイプのニューラル ネットワークでは、ニューロンは結合を共有せず、独立の結果を生成します。

また、全結合ニューロンを使用するニューラル ネットワークでは、入力のサイズが大きくなるにつれてパラメーター (重み) の数が急速に増えます。畳み込みニューラル ネットワークでは、結合の数を減らし、重みを共有して、ダウンサンプリングを行うことで、パラメーターの数を減らしています。

康涅特は畳み込み層、最大プーリング層または平均プーリング層、全結合層などの複数の層で構成されています。

康涅特の各層のニューロンは、3.次元に配置されており、3.次元の入力を 3.次元の出力に変換します。たとえば、イメージ入力では、最初の層 (入力層) がイメージを、イメージの高さ、幅、カラー チャネルを次元とする 3.次元の入力として保持します。最初の畳み込み層のニューロンが、これらのイメージの領域に結合し、これらのイメージを 3.次元の出力に変換します。各層の隠れユニット (ニューロン) は元の入力の非線形結合を学習します。これは特徴抽出と呼ばれます[2]。これらの学習された特徴は活性化とも呼ばれ、ある層から次の層への入力になります。最後に、学習した特徴はネットワークの最後にある分類器または回帰関数の入力になります。

康涅特のアーキテクチャは、含まれる層のタイプと数によって異なる可能性があります。含まれる層のタイプと数は、特定の用途またはデータによって変わります。たとえば、カテゴリカル応答がある場合、分類関数と分類層が必要です。一方、応答が連続的である場合は、ネットワークの最後に回帰層が必要です。畳み込み層が 1.つまたは 2.つしかない小規模なネットワークは、少量のグレースケール イメージ データを学習するには十分かもしれません。一方、数百万枚のカラー イメージを含むより複雑なデータについては、複数の畳み込み層と全結合層を持つ、より複雑なネットワークが必要になる場合があります。

MATLAB软件®の畳み込みニューラル ネットワークの層は次の方法で連結できます。

layers=[imageInputLayer([28 28 1])convolution2dLayer(5,20)reluLayer maxPooling2dLayer(2,'Stride',2)fullyConnectedLayer(10)softmaxLayer classificationLayer];

ネットワークの層を定義した後、関数培训选项を使用して学習オプションを指定しなければなりません。次に例を示します。

选项=培训选项(“sgdm”);

次に、関数列车网络を使用して、学習データでネットワークの学習を行います。データ、層、学習オプションは学習関数の入力になります。次に例を示します。

convnet=列车网络(数据、层、选项);

康涅特の層の詳細は、畳み込みニューラル ネットワークの層の指定を参照してください。学習パラメーターの設定は、パラメーターの設定と畳み込みニューラル ネットワークの学習を参照してください。

参照

[1] 胡贝尔,H。D维塞尔,T。“不”猫纹状体皮层单个神经元的感受野。《生理学杂志》。第148卷,第574-5911959页。

[2] 墨菲,K。P机器学习:概率的观点。马萨诸塞州剑桥:麻省理工出版社,2012年。

参考

|

関連するトピック