このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
シーケンス入力層
シーケンス入力層は、ネットワークにシーケンス データを入力します。
输入大小
- - - - - -入力のサイズ入力のサイズ。正の整数または正の整数のベクトルとして指定します。
ベクトル シーケンス入力の場合、输入大小
は特徴の数に対応するスカラーです。
2.次元イメージ シーケンス入力の場合、输入大小
は3要素から成るベクトル[w c h]
です。ここで、h
はイメージの高さ、w
はイメージの幅、c
はイメージのチャネル数です。
3.次元イメージ シーケンス入力の場合、输入大小
は 4.要素から成るベクトル[h w d c]
です。ここで、h
はイメージの高さ、w
はイメージの幅、d
はイメージの深さ、c
はイメージのチャネル数です。
例:100
归一化
- - - - - -データ正規化“没有”
(既定値) |“零中心”
|“zscore”
|“rescale-symmetric”
|“重新缩放01”
|関数ハンドルデータが入力層を通じて順伝播されるたびに適用するデータ正規化。次のいずれかに指定します。
“零中心”
- - - - - -意思是
によって指定された平均を減算します。
“zscore”
- - - - - -意思是
によって指定された平均を減算し,StandardDeviation
で除算します。
“rescale-symmetric”
- - - - - -分钟
および马克斯
によってそれぞれ指定された最小値と最大値を使用して、範囲 [-1, 1] に入力を再スケーリングします。
“重新缩放01”
- - - - - -分钟
および马克斯
によってそれぞれ指定された最小値と最大値を使用して、範囲 [0, 1] に入力を再スケーリングします。
“没有”
——入力データを正規化しません。
関数ハンドル——指定した関数を使用してデータを正規化します。関数は,Y = func (X)
という形式でなければなりません。ここで,X
は入力データ、出力Y
は正規化データです。
ヒント
既定では、学習時に正規化統計量が自動的に計算されます。学習時に時間を節約するため、正規化に必要な統計量を指定し、培训选项
で“ResetInputNormalization”
オプションを假
に設定します。
入力データにパディングが含まれている場合、この層は、入力データの正規化時にパディング値を無視します。
规格化维度
- - - - - -正規化の次元“汽车”
(既定値) |“频道”
|“元素”
|“所有”
正規化の次元。次のいずれかに指定します。
“汽车”
– 学習オプションが假
の場合、いずれかの正規化統計量 (意思是
、StandardDeviation
、分钟
、または马克斯
)を指定し,統計量に一致する次元に対して正規化を行います。そうでない場合,学習時に統計量を再計算し,チャネル単位の正規化を適用します。
“频道”
– チャネル単位の正規化。
“元素”
– 要素単位の正規化。
“所有”
——スカラーの統計量を使用してすべての値を正規化します。
意思是
- - - - - -ゼロ中心正規化および Zスコア正規化の平均[]
(既定値) |数値配列|数値スカラーゼロ中心正規化および Zスコア正規化の平均。数値配列または空として指定します。
意思是
プロパティを指定する場合、归一化
は“零中心”
または“zscore”
でなければなりません。意思是
が[]
の場合、学習時に平均が計算されます。
学習を行わずにネットワークを作成する場合(装配网络
を使用してネットワークを組み立てる場合など)、このプロパティを設定できます。
データ型:仅有一个的
|双重的
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
StandardDeviation
- - - - - -標準偏差[]
(既定値) |数値配列|数値スカラーzスコア正規化に使用される標準偏差。数値配列、数値スカラー、または空として指定します。
ベクトル シーケンス入力の場合、StandardDeviation
はチャネルごとの標準偏差から成る输入大小
行1列のベクトル,数値スカラー,または[]
でなければなりません。
2.次元イメージ シーケンス入力の場合、StandardDeviation
は输入大小
と同じサイズの数値配列,チャネルごとの標準偏差から成る1 x 1 x输入大小(3)
の配列、数値スカラー、または[]
でなければなりません。
3.次元イメージ シーケンス入力の場合、StandardDeviation
は输入大小
と同じサイズの数値配列,チャネルごとの標準偏差から成る1 x 1 x 1 x输入大小(4)
の配列、または数値スカラーでなければなりません。
StandardDeviation
プロパティを指定する場合、归一化
は“zscore”
でなければなりません。StandardDeviation
が[]
の場合、学習時に標準偏差が計算されます。
学習を行わずにネットワークを作成する場合(装配网络
を使用してネットワークを組み立てる場合など)、このプロパティを設定できます。
データ型:仅有一个的
|双重的
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
分钟
- - - - - -再スケーリングの最小値[]
(既定値) |数値配列|数値スカラー再スケーリングの最小値。数値配列または空として指定します。
分钟
プロパティを指定する場合、归一化
は“rescale-symmetric”
または“重新缩放01”
でなければなりません。分钟
が[]
の場合,学習時に最小値が計算されます。
学習を行わずにネットワークを作成する場合(装配网络
を使用してネットワークを組み立てる場合など)、このプロパティを設定できます。
データ型:仅有一个的
|双重的
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
马克斯
- - - - - -再スケーリングの最大値[]
(既定値) |数値配列|数値スカラー再スケーリングの最大値。数値配列または空として指定します。
马克斯
プロパティを指定する場合、归一化
は“rescale-symmetric”
または“重新缩放01”
でなければなりません。马克斯
が[]
の場合,学習時に最大値が計算されます。
学習を行わずにネットワークを作成する場合(装配网络
を使用してネットワークを組み立てる場合など)、このプロパティを設定できます。
データ型:仅有一个的
|双重的
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
名称
- - - - - -層の名前''
(既定値) |文字ベクトル|一串スカラー層の名前。文字ベクトルまたは 一串スカラーとして指定します。層グラフに層を含めるには、層に空ではない一意の名前を指定しなければなりません。この層が含まれる系列ネットワークに学習させて名称
を''
に設定すると,学習時に層に名前が自動的に割り当てられます。
データ型:烧焦
|一串
努明普茨
- - - - - -入力の数層の入力の数。この層には入力がありません。
データ型:双重的
InputNames
- - - - - -入力名{}
(既定値)層の入力名。この層には入力がありません。
データ型:细胞
NumOutputs
- - - - - -出力の数層の出力の数。この層には単一の出力のみがあります。
データ型:双重的
输出名称
- - - - - -出力名{'out'}
(既定値)層の出力名。この層には単一の出力のみがあります。
データ型:细胞
名前が“seq1”
、入力サイズが 12のシーケンス入力層を作成します。
层=sequenceInputLayer(12,“名字”,“seq1”)
layer = SequenceInputLayer with properties: Name: 'seq1' InputSize: 12 Hyperparameters Normalization: 'none' NormalizationDimension: 'auto'
シーケンス入力層を层
配列に含めます。
inputSize = 12;numHiddenUnits = 100;numClasses = 9;层= [...sequenceInputLayer(inputSize)lstmLayer(numHiddenUnits,“输出模式”,“最后一次”)软连接层(numClasses)
layers=5x1带层的层阵列:1''序列输入12维序列输入2''LSTM LSTM带100个隐藏单元3''完全连接9完全连接层4''Softmax Softmax 5''分类输出crossentropyex
名前が“seq1”
の224行224列のRGBイメージのシーケンスに対して,シーケンス入力層を作成します。
层=sequenceInputLayer([224 224 3],“名字”,“seq1”)
layer=SequenceInputLayer,具有以下属性:名称:“seq1”InputSize:[224 224 3]超参数规范化:“无”规范化维度:“自动”
要标记的序列分類について深層学習 LSTMネットワークに学習をさせます。
[1]および[2]に記載のある日本元音データセットを読み込みます。XTrain
は、LPCケプストラム係数に対応する 12の特徴をもつ可変長の 270個のシーケンスが含まれる 单间牢房配列です。Y
は、ラベル 1、2、...、9 の 明确的ベクトルです。XTrain
のエントリは行列で、行数が 12 (特徴ごとに 1.行) で、列数が可変 (タイム ステップごとに 1.列) です。
[XTrain,YTrain]=日本全球应变数据;
最初の時系列をプロットで可視化します。各ラインは特徴に対応しています。
图绘制(XTrain{1}”)标题(“培训观察1”) numFeatures = size(XTrain{1},1);传奇(“功能”+字符串(1:numFeatures),“位置”,“northeastoutside”)
LSTMネットワークアーキテクチャを定義します。入力サイズを12 (入力データの特徴の数) に指定します。100 個の隠れユニットを含み、シーケンスの最後の要素を出力するように LSTM 層を指定します。最後に、サイズが 9 の全結合層を含めることによって 9 個のクラスを指定し、その後にソフトマックス層と分類層を配置します。
inputSize = 12;numHiddenUnits = 100;numClasses = 9;层= [...sequenceInputLayer(inputSize)lstmLayer(numHiddenUnits,“输出模式”,“最后一次”)软连接层(numClasses)
layers=5×1带层的层阵列:1''序列输入12维序列输入2''LSTM LSTM带100个隐藏单元3''完全连接9完全连接层4''Softmax Softmax 5''分类输出crossentropyex
学習オプションを指定します。ソルバーを“亚当”
、“GradientThreshold”
を 1.に指定します。ミニバッチ サイズを 27、エポックの最大回数を 70に設定します。
ミニバッチが小さく,シーケンスが短いため,学習にはCPUが適しています。“ExecutionEnvironment”
を“cpu”
に設定します。GPUが利用できる場合、GPUで学習を行うには、“ExecutionEnvironment”
を“汽车”
(既定値) に設定します。
maxEpochs = 70;miniBatchSize = 27个;选择= trainingOptions (“亚当”,...“ExecutionEnvironment”,“cpu”,...“MaxEpochs”,maxEpochs,...“MiniBatchSize”,小批量,...“GradientThreshold”1....“冗长”错误的...“阴谋”,“培训进度”);
学習オプションを指定して LSTMネットワークに学習させます。
net=列车网络(XTrain、YTrain、图层、选项);
テスト セットを読み込み、シーケンスを話者別に分類します。
[XTest,YTest]=日本世界统计数据;
テスト データを分類します。学習に使用されるサイズと同じミニバッチ サイズを指定します。
XTest YPred =分类(净,“MiniBatchSize”, miniBatchSize);
予測の分類精度を計算します。
acc=sum(YPred==YTest)。/numel(YTest)
acc=0.9514
要标记的序列分類用の LSTMネットワークを作成するには、シーケンス入力層、LSTM層、全結合層、ソフトマックス層、および分類出力層を含む層配列を作成します。
シーケンス入力層のサイズを入力データの特徴の数に設定します。全結合層のサイズをクラスの数に設定します。シーケンス長を指定する必要はありません。
LSTM層では、隠れユニットの数と出力モード“最后一次”
を指定します。
numFeatures=12;numHiddenUnits=100;NumClass=9;图层=[...sequenceInputLayer numFeatures lstmLayer (numHiddenUnits,“输出模式”,“最后一次”) fulllyconnectedlayer (numClasses) softmaxLayer classificationLayer;
要标记的序列分類について LSTMネットワークに学習をさせ、新しいデータを分類する方法の例については、深層学習を使用したシーケンスの分類を参照してください。
sequence-to-sequence分類用のLSTMネットワークを作成するには,sequence-to-label分類の場合と同じアーキテクチャを使用しますが,LSTM層の出力モードを“序列”
に設定します。
numFeatures=12;numHiddenUnits=100;NumClass=9;图层=[...sequenceInputLayer numFeatures lstmLayer (numHiddenUnits,“输出模式”,“序列”) fulllyconnectedlayer (numClasses) softmaxLayer classificationLayer;
顺序对一回帰用の LSTMネットワークを作成するには、シーケンス入力層、LSTM層、全結合層、および回帰出力層を含む層配列を作成します。
シーケンス入力層のサイズを入力データの特徴の数に設定します。全結合層のサイズを応答の数に設定します。シーケンス長を指定する必要はありません。
LSTM層では、隠れユニットの数と出力モード“最后一次”
を指定します。
numFeatures = 12;numHiddenUnits = 125;numResponses = 1;层= [...sequenceInputLayer numFeatures lstmLayer (numHiddenUnits,“输出模式”,“最后一次”)完全连接层(numResponses)回归层];
sequence-to-sequence回帰用のLSTMネットワークを作成するには,sequence-to-one回帰の場合と同じアーキテクチャを使用しますが,LSTM層の出力モードを“序列”
に設定します。
numFeatures = 12;numHiddenUnits = 125;numResponses = 1;层= [...sequenceInputLayer numFeatures lstmLayer (numHiddenUnits,“输出模式”,“序列”)完全连接层(numResponses)回归层];
顺序对顺序回帰について LSTMネットワークに学習をさせて、新しいデータを予測する方法の例については、深層学習を使用した 顺序对顺序回帰を参照してください。
出力モードが“序列”
の追加のLSTM層をLSTM層の前に挿入すると,LSTMネットワークを深くできます。過適合を防止するために,LSTM層の後にドロップアウト層を挿入できます。
要标记的序列分類ネットワークでは、最後の LSTM層の出力モードは“最后一次”
でなければなりません。
numFeatures=12;numHiddenUnits1=125;numHiddenUnits2=100;NumClass=9;图层=[...sequenceInputLayer(numFeatures)lstmLayer(numHiddenUnits1,“输出模式”,“序列”) dropoutLayer (0.2) lstmLayer (numHiddenUnits2“输出模式”,“最后一次”) dropoutLayer(0.2) fulllyconnectedlayer (numClasses) softmaxLayer classificationLayer];
顺序对顺序分類ネットワークでは、最後の LSTM層の出力モードは“序列”
でなければなりません。
numFeatures=12;numHiddenUnits1=125;numHiddenUnits2=100;NumClass=9;图层=[...sequenceInputLayer(numFeatures)lstmLayer(numHiddenUnits1,“输出模式”,“序列”) dropoutLayer (0.2) lstmLayer (numHiddenUnits2“输出模式”,“序列”) dropoutLayer(0.2) fulllyconnectedlayer (numClasses) softmaxLayer classificationLayer];
ビデオや医用画像データなどのイメージのシーケンスを含むデータ用の深層学習ネットワークを作成します。
イメージのシーケンスをネットワークに入力するには,シーケンス入力層を使用します。
畳み込み演算を各タイム ステップに個別に適用するには、まずシーケンス折りたたみ層を使用してイメージのシーケンスをイメージの配列に変換します。
これらの演算の実行後にシーケンス構造を復元するには、シーケンス展開層を使用してこのイメージの配列をイメージ シーケンスに変換し直します。
イメージを特徴ベクトルに変換するには,フラット化層を使用します。
その後、ベクトル シーケンスを LSTM層と BiLSTM層に入力できます。
ネットワークアーキテクチャの定義
28 x 28のグレースケールイメージのシーケンスを10個のクラスに分類する分類用のLSTMネットワークを作成します。
次のネットワークアーキテクチャを定義します。
入力サイズ[28 28 1]
のシーケンス入力層。
20個の 5.行 5.列のフィルターを持つ、畳み込み層、バッチ正規化層、および 雷卢層のブロック。
最後のタイム ステップのみを出力する、200個の隠れユニットを持つ LSTM層。
サイズが10(クラス数)の全結合層と,その後に配置するソフトマックス層と分類層。
畳み込み演算をタイムステップごとに個別に実行するには,畳み込み層の前にシーケンス折りたたみ層を含めます。LSTM層はベクトルシーケンス入力を想定しています。シーケンス構造を復元し,畳み込み層の出力を特徴ベクトルのシーケンスに形状変更するには,畳み込み層とLSTM層の間にシーケンス展開層とフラット化層を挿入します。
inputSize=[28 28 1];filterSize=5;numFilters=20;numHiddenUnits=200;NumClass=10;layers=[...sequenceInputLayer (inputSize“名字”,“输入”)序列折叠层(“名字”,“折”)卷积2dlayer(filterSize、NumFilter、,“名字”,“conv”)批处理规范化层(“名字”,‘bn’) reluLayer (“名字”,“雷卢”)序列展开层(“名字”,“展开”)压扁层(“名字”,“平”)第一层(numhidden单位,“输出模式”,“最后一次”,“名字”,“lstm”)完全连接层(NumClass,“名字”,“俱乐部”) softmaxLayer (“名字”,“softmax”)分类层(“名字”,“分类”));
層を層グラフに変換し、シーケンス折りたたみ層のminiBatchSize
出力をシーケンス展開層の対応する入力に結合します。
lgraph=层图形(层);lgraph=连接层(lgraph,“折/ miniBatchSize”,“展开/小批量大小”);
関数情节
を使用して最終的なネットワーク アーキテクチャを表示します。
图形绘图(lgraph)
序列输入层
は既定でゼロ中心正規化にチャネル単位の正規化を使用将来のリリースで動作変更
R2019b以降では、序列输入层
は既定でゼロ中心正規化にチャネル単位の正規化を使用します。以前のバージョンでは,この層は要素単位の正規化を使用します。この動作を再現するには,この層の规格化维度
オプションを“元素”
に設定します。
序列输入层
は,正規化時にパディング値を無視します。R2020aでの動作変更
R2020a以降では,序列输入层
オブジェクトは正規化時に入力データのパディング値を無視します。これは、序列输入层
の归一化
オプションを使用すると学習結果がデータの操作の影響を受けなくなることを意味します。たとえば、“零中心”
正規化を実行すると、学習結果はデータの平均の影響を受けなくなります。
パディングされたシーケンスで学習させた場合、計算された正規化係数は以前のバージョンと異なる場合があるため、異なる結果が生成される可能性があります。
[1] M.Kudo,J.Toyama和M.Shimbo.“使用通过区域的多维曲线分类”,《模式识别快报》,第20卷,第11-13期,第1103-1111页。
[2] UCI机器学习知识库:日语元音数据集。https://archive.ics.uci.edu/ml/datasets/Japanese+Vowels
ベクトル シーケンス入力の場合、特徴の数はコード生成時に定数でなければなりません。
コード生成では,関数ハンドルを使用して指定される“正常化”
はサポートされません。
使用上の注意および制限:
GPU编码器™ を使用して 库达®またはc++コードを生成するには,最初に深層ニューラルネットワークを構築して学習させなければなりません。ネットワークの学習と評価が完了したら,コードジェネレーターを構成してコードを生成し,NVIDIA®または 臂®GPUプロセッサを使用するプラットフォームに畳み込みニューラル ネットワークを展開できます。詳細については、GPU编码器を使用した深層学習(GPU编码器)を参照してください。
この層向けに,NVIDIA CUDA深層ニューラルネットワークライブラリ(cuDNN)またはNVIDIA TensorRT™高性能推論ライブラリを利用するコードを生成できます。
cuDNNライブラリはベクトルおよび 2.次元イメージ シーケンスをサポートします。坦索特ライブラリはベクトル入力シーケンスのみをサポートします。
ベクトル シーケンス入力の場合、特徴の数はコード生成時に定数でなければなりません。
イメージ シーケンス入力の場合、高さ、幅、およびチャネル数は、コード生成時に定数でなければなりません。
コード生成では,関数ハンドルを使用して指定される“正常化”
はサポートされません。
第一层
|双层膜
|gruLayer
|分类与更新房地产
|预测和更新房地产
|重置状态
|sequenceFoldingLayer
|flattenLayer
|sequenceUnfoldingLayer
|ディープ ネットワーク デザイナー|特征输入层
次の MATLABコマンドに対応するリンクがクリックされました。
コマンドを MATLABコマンド ウィンドウに入力して実行してください。网状物ブラウザーは MATLABコマンドをサポートしていません。
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。