crossChannelNormalizationLayer
チャネル単位の局所応答正規化層
説明
チャネル単位の局所応答 (クロスチャネル) 正規化層は、チャネル単位の正規化を行います。
作成
構文
説明
はチャネル単位の局所応答正規化層を作成し、layer
= crossChannelNormalizationLayer(windowChannelSize
)WindowChannelSize
プロパティを設定します。
プロパティ
クロス チャネル正規化
WindowChannelSize
— チャネル ウィンドウのサイズ
16 以下の正の整数
チャネル ウィンドウのサイズ。各要素の正規化に使用されるチャネルの数を制御します。16 以下の正の整数として指定します。
WindowChannelSize
が偶数の場合、ウィンドウは非対称になります。前の floor((w-1)/2)
個のチャネルと後続の floor(w/2)
個のチャネルが確認されます。たとえば、WindowChannelSize
が 4 の場合、層は、1 つ前のチャネルの近傍、および次の 2 つのチャネルの近傍によって、各要素を正規化します。
例: 5
Alpha
— 正規化の α ハイパーパラメーター
0.0001 (既定値) | 数値スカラー
正規化の α ハイパーパラメーター (乗数項)。数値スカラーとして指定します。
例: 0.0002
Beta
— 正規化の β ハイパーパラメーター
0.75 (既定値) | 数値スカラー
正規化の β ハイパーパラメーター。数値スカラーとして指定します。Beta
の値は 0.01 以上でなければなりません。
例: 0.8
K
— 正規化の K ハイパーパラメーター
2 (既定値) | 数値スカラー
正規化の K ハイパーパラメーター。数値スカラーとして指定します。K
の値は 10-5 以上でなければなりません。
例: 2.5
層
NumInputs
— 入力の数
1
(既定値)
この プロパティ は読み取り専用です。
層への入力の数。1
として返されます。この層は単一の入力のみを受け入れます。
データ型: double
InputNames
— 入力名
{'in'}
(既定値)
この プロパティ は読み取り専用です。
入力名。{'in'}
として返されます。この層は単一の入力のみを受け入れます。
データ型: cell
NumOutputs
— 出力の数
1
(既定値)
この プロパティ は読み取り専用です。
層からの出力の数。1
として返されます。この層には単一の出力のみがあります。
データ型: double
OutputNames
— 出力名
{'out'}
(既定値)
この プロパティ は読み取り専用です。
出力名。{'out'}
として返されます。この層には単一の出力のみがあります。
データ型: cell
例
局所応答正規化層の作成
5 チャネルのウィンドウによって各要素が正規化されており、正規化の加算定数 が 1 である、チャネル単位の正規化用の局所応答正規化層を作成します。
layer = crossChannelNormalizationLayer(5,K=1)
layer = CrossChannelNormalizationLayer with properties: Name: '' Hyperparameters WindowChannelSize: 5 Alpha: 1.0000e-04 Beta: 0.7500 K: 1
Layer
配列に局所応答正規化層を含めます。
layers = [ ...
imageInputLayer([28 28 1])
convolution2dLayer(5,20)
reluLayer
crossChannelNormalizationLayer(3)
fullyConnectedLayer(10)
softmaxLayer]
layers = 6x1 Layer array with layers: 1 '' Image Input 28x28x1 images with 'zerocenter' normalization 2 '' 2-D Convolution 20 5x5 convolutions with stride [1 1] and padding [0 0 0 0] 3 '' ReLU ReLU 4 '' Cross Channel Normalization cross channel normalization with 3 channels per element 5 '' Fully Connected 10 fully connected layer 6 '' Softmax softmax
アルゴリズム
クロス チャネル正規化層
チャネル単位の局所応答 (クロスチャネル) 正規化層は、チャネル単位の正規化を行います。
この層では、チャネル単位の局所応答正規化を実行します。通常は ReLU 活性化層の後に配置されます。この層は、各要素を、一定数の隣接し合うチャネルからの要素 (正規化ウィンドウの要素) を使用して取得する正規化済みの値に置き換えます。つまり、入力の各要素 に対して、関数 trainnet
は、正規化された値 を次を使用して計算します。
ここで、K、α、および β は正規化でのハイパーパラメーターで、ss は正規化ウィンドウの要素の二乗和です[1]。関数 crossChannelNormalizationLayer
の引数 windowChannelSize
を使用して、正規化ウィンドウのサイズを指定しなければなりません。また、名前と値のペアの引数 Alpha
、Beta
、および K
を使用して、ハイパーパラメーターを指定できます。
前述の正規化式は[1]に記載されている式と少し異なります。alpha
の値と windowChannelSize
を乗算すると、等価な式を求めることができます。
層の入力形式と出力形式
層配列内または層グラフ内の層は、形式を整えた dlarray
オブジェクトとして後続の層にデータを渡します。dlarray
オブジェクトの形式は文字列で、各文字はデータ内の対応する次元を表します。この形式には次の文字が 1 つ以上含まれています。
"S"
— 空間"C"
— チャネル"B"
— バッチ"T"
— 時間"U"
— 指定なし
たとえば、4 次元配列として表された 2 次元イメージ データがあり、最初の 2 つの次元がイメージの空間次元に対応し、3 番目の次元がイメージのチャネルに対応し、4 番目の次元がバッチ次元に対応している場合、このイメージ データは "SSCB"
(空間、空間、チャネル、バッチ) という形式で記述できます。
functionLayer
オブジェクトを使用するか、関数 forward
と関数 predict
を dlnetwork
オブジェクトと共に使用して、カスタム層の開発などの自動微分ワークフローで、これらの dlarray
オブジェクトを操作できます。
次の表は、CrossChannelNormalizationLayer
オブジェクトでサポートされている入力形式、および対応する出力形式を示しています。ソフトウェアが nnet.layer.Formattable
クラスを継承していないカスタム層、または Formattable
プロパティが 0
(false
) に設定された FunctionLayer
オブジェクトに層の出力を渡す場合、その層は形式を整えていない dlarray
オブジェクトを受け取り、この表に示された形式に従って次元が並べられます。ここには一部の形式のみを示します。層では、追加の "S"
(空間) 次元または "U"
(未指定) 次元をもつ形式など、追加の形式がサポートされている場合があります。
入力形式 | 出力形式 |
---|---|
|
|
|
|
|
|
dlnetwork
オブジェクトでは、CrossChannelNormalizationLayer
オブジェクトもこれらの入力形式と出力形式の組み合わせをサポートします。
入力形式 | 出力形式 |
---|---|
|
|
|
|
|
|
参照
[1] Krizhevsky, A., I. Sutskever, and G. E. Hinton. "ImageNet Classification with Deep Convolutional Neural Networks." Advances in Neural Information Processing Systems. Vol 25, 2012.
拡張機能
C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。
GPU コード生成
GPU Coder™ を使用して NVIDIA® GPU のための CUDA® コードを生成します。
バージョン履歴
R2016a で導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)