Main Content

additionLayer

説明

加算層は、複数のニューラル ネットワーク層からの入力を要素単位で加算します。

作成時に層への入力の数を指定します。層への入力の名前は 'in1','in2',...,'inN' になります。N は入力の数です。connectLayers または disconnectLayers を使用して層の結合または切り離しを行うときには、入力名を使用します。加算層へのすべての入力の次元は同じでなければなりません。

作成

説明

layer = additionLayer(numInputs) は、numInputs 個の入力を要素単位で加算する加算層を作成します。この関数は、NumInputs プロパティも設定します。

layer = additionLayer(numInputs,'Name',name) は、Name プロパティも設定します。

プロパティ

すべて展開する

層への入力の数。2 以上の正の整数として指定します。

入力の名前は 'in1','in2',...,'inN' になります。ここで、NNumInputs です。たとえば、NumInputs が 3 である場合、入力の名前は 'in1','in2' および 'in3' になります。関数 connectLayers または disconnectLayers を使用して層の結合または切り離しを行うときには、入力名を使用します。

層の名前。文字ベクトルまたは string スカラーとして指定します。Layer 配列入力の場合、関数 trainnet および関数 dlnetwork は、名前が "" の層に自動的に名前を割り当てます。

AdditionLayer オブジェクトは、このプロパティを文字ベクトルとして格納します。

データ型: char | string

入力名。{'in1','in2',...,'inN'} として指定します。ここで、N は層の入力の数です。

データ型: cell

この プロパティ は読み取り専用です。

層からの出力の数。1 として返されます。この層には単一の出力のみがあります。

データ型: double

この プロパティ は読み取り専用です。

出力名。{'out'} として返されます。この層には単一の出力のみがあります。

データ型: cell

すべて折りたたむ

空のニューラル ネットワーク dlnetwork オブジェクトを作成します。さらに、2 つの入力があり、名前が 'add' である加算層を追加します。

net = dlnetwork;
layer = additionLayer(2,'Name','add');
net = addLayers(net,layer);

ニューラル ネットワークに 2 つの ReLU 層を追加し、これらの層を加算層に結合します。加算層は、ReLU 層の出力の総和を出力します。

layer = reluLayer('Name','relu1');
net = addLayers(net,layer);
net = connectLayers(net,'relu1','add/in1');

layer = reluLayer('Name','relu2');
net = addLayers(net,layer);
net = connectLayers(net,'relu2','add/in2');

更新されたネットワークをプロットで可視化します。

plot(net)

アルゴリズム

すべて展開する

拡張機能

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

GPU コード生成
GPU Coder™ を使用して NVIDIA® GPU のための CUDA® コードを生成します。

バージョン履歴

R2017b で導入

すべて展開する