预测
学習済み深層学習ニュ,ラルネットワ,クを使用した応答の予測
構文
説明
1つのCPUまたは1つのGPUで深層学習用の学習済みニューラルネットワークを使用して予測を実行できます。GPUを使用するには并行计算工具箱™とサポートされているGPUデバイスが必要です。サポトされているデバスにいては,Gpu計算の要件(并行计算工具箱)を参照してください。名前と値の引数ExecutionEnvironment
を使用して,ハ,ドウェア要件を指定します。
この関数を使用して,学習済みのSeriesNetwork
オブジェクトまたはDAGNetwork
オブジェクトを使用して応答を予測します。dlnetwork
オブジェクトを使用した応答の予測にいては,预测
を参照してください。
[
は,前述の入力引数を使用して多出力ネットワ,クの日元…,
预测,预测___)米
出力の応答を予測します。出力Yj
はネットワ,ク出力net.OutputNames (j)
に対応します。分類出力層のカテゴリカル出力を返すには,ReturnCategorical
オプションを1
(正确)に設定します。
___=预测(___,
は,1以上の名前と値の引数で指定された追加オプションを使用して,応答を予測します。名称=值
)
ヒント
関数
预测
を使用し,回帰ネットワークを使用して応答を予測したり,多出力ネットワークを使用してデータを分類したりします。単出力の分類ネットワ,クを使用してデ,タを分類するには,関数分类
を使用します。長さが異なるシーケンスで予測を行うと,ミニバッチのサイズが,入力データに追加されるパディングの量に影響し,予測値が変わることがあります。さまざまな値を使用して,ネットワ,クに最適なものを確認してください。ミニバッチのサ电子邮箱ズとパディングのオプションを指定するには,
MiniBatchSize
オプションとSequenceLength
オプションをそれぞれ使用します。dlnetwork
オブジェクトを使用した応答の予測にいては,预测
を参照してください。
例
学習済みの畳み込みニュ,ラルネットワ,クを使用した数値応答の予測
事前学習済みのネットワ,クdigitsRegressionNet
を読み込みます。このネットワ,クは,手書き数字の回転角度を予測する回帰畳み込みニュ,ラルネットワ,クです。
负载digitsRegressionNet
ネットワ,ク層を表示します。ネットワ,クの出力層は回帰層です。
层=净。层
图层数组:1' imageinput'图像输入28x28x1图像,'zerocenter'归一化2' conv_1'二维卷积8个3x3x1卷积,stride[1 1],填充'same' 3 'batchnorm_1'批量归一化8通道批量归一化4 'relu_1' ReLU ReLU 5 'avgpool2d_1'二维平均池化2x2平均池化,stride[2 2],填充[0 0 0 0 0]6 'conv_2'二维卷积16个3x3x8卷积,stride[1 1],填充'same' 7 'batchnorm_2'批量归一化16个批量归一化通道8 'relu_2' ReLU ReLU 9 'avgpool2d_2'二维平均池化2x2平均池化与stride[2 2]和填充[0 0 0 0 0]10 'conv_3'二维卷积32 3x3x16卷积与stride[1 1]和填充'same' 11 'batchnorm_3'批归一化与stride[1 1]和填充'same' 14 'batchnorm_4'批归一化与32通道批归一化15 'relu_4' ReLU ReLU 16'dropout' dropout 20% dropout 17 'fc'全连接1全连接层18 'regressionoutput'回归输出均方误差与响应' response '
テスト▪▪メ▪▪ジを読み込みます。
XTest = digitTest4DArrayData;
関数预测
を使用して,入力デ,タの応答を予測します。
YTest =预测(net,XTest);
いくかのテストメジを,それらの予測と共にランダムに表示します。
numPlots = 9;idx = randperm(size(XTest,4),numPlots);sz = size(XTest,1);Offset = sz/2;图tiledlayout (“流”)为i = 1:numPlots nexttile imshow(XTest(:,:,:,idx(i))) title(“观察”+ idx(i))稍等在情节(抵消* [1-tand(欧美(idx (i))) 1 +罐内(欧美(idx (i)))),(深圳0),“r——”)举行从结束
学習済みLSTMネットワ,クを使用したシ,ケンスの数値応答の予測
事前学習済みのネットワ,クfreqNet
を読み込みます。このネットワ,クは,波形の周波数を予測するLSTM回帰ニュ,ラルネットワ,クです。
负载freqNet
ネットワ,ク層を表示します。ネットワ,クの出力層は回帰層です。
网层
ans = 4x1带有层的层数组:1 'sequenceinput'序列输入3维序列输入2 'lstm' lstm lstm 100个隐藏单元3 'fc'全连接1全连接层4 'regressionoutput'回归输出均方误差与响应' response '
テストシ,ケンスを読み込みます。
负载WaveformDataX =数据;
関数预测
を使用して,入力デ,タの応答を予測します。ネットワークは,各ミニバッチの最短シーケンス長に切り捨てられたシーケンスを使用して学習が行われているため,SequenceLength
オプションを“最短”
に設定してテストシ,ケンスも切り捨てます。
Y = predict(net,X,SequenceLength=“最短”);
最初のいくかの予測をプロットに可視化します。
图tiledlayout (2, 2)为nexttile stackedplot(X{i}',DisplayLabels=“通道”+ (1:3)) xlabel(“时间步”)标题(“预测频率:”+字符串(Y (i)))结束
入力引数
网
- - - - - -学習済みネットワ,ク
SeriesNetwork
オブジェクト|DAGNetwork
オブジェクト
学習済みネットワ,ク。SeriesNetwork
またはDAGNetwork
オブジェクトとして指定します。事前学習済みのネットワ,クをインポートする (たとえば、関数googlenet
を使用する),またはtrainNetwork
を使用して独自のネットワ,クに学習させることによって,学習済みネットワ,クを取得できます。
dlnetwork
オブジェクトを使用した応答の予測にいては,预测
を参照してください。
图片
- - - - - -イメージデータ
デ,タストア|数値配列|表格
。次のいずれかとして指定します。
デタ型 | 説明 | 使用例 | |
---|---|---|---|
デ,タストア | ImageDatastore |
ディスクに保存されたメジのデタストア | @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ |
AugmentedImageDatastore |
サイズ変更,回転,反転,せん断,平行移動を含む,ランダムなアフィン幾何学的変換を適用するデータストア | @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ |
|
TransformedDatastore |
カスタム変換関数を使用して,基になるデ,タストアから読み取ったデ,タのバッチを変換するデ,タストア |
|
|
CombinedDatastore |
2 .以上の基になるデタストアからデタを読み取るデタストア |
|
|
カスタムミニバッチデ,タストア | デ,タのミニバッチを返すカスタムデ,タストア | 他のデ,タストアでサポ,トされていない形式のデ,タを使用して予測を行います。 詳細は,カスタムミニバッチデ,タストアの開発を参照してください。 |
|
数値配列 | 数値配列として指定された▪▪メ▪▪ジ | メモリに収まり,なおかサズ変更などの追加の処理を必要としないデタを使用して予測を行います。 | |
表格 | 表として指定されたaapl . exe .メ | 表に格納されたデ,タを使用して予測を行います。 |
複数の入力をもTransformedDatastore
オブジェクトまたはCombinedDatastore
オブジェクトでなければなりません。
ヒント
ビデオデタのようなメジのシケンスの場合,入力引数序列
を使用します。
デ,タストア
デ,タストアは;デ,タストアは、メモリに収まらないデータがある場合や、入力データのサイズを変更したい場合に使用します。
以下のデタストアは,メジデタ用の预测
と直接互換性があります。
カスタムミニバッチデ,タストア。詳細は,カスタムミニバッチデ,タストアの開発を参照してください。
ImageDatastore
オブジェクトを使用すると,事前取得を使用してJPGまたはPNGイメージファイルのバッチ読み取りを行うことができる点に注意してください。メ,ジの読み取りにカスタム関数を使用する場合,ImageDatastore
オブジェクトは事前取得を行いません。
ヒント
@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @augmentedImageDatastore
を使用します。
関数imageDatastore
のreadFcn
オプションは通常,速度が大幅に低下するため,前処理またはサesc escズ変更に使用しないでください。
関数变换
および结合
を使用して,予測を行うための他の組み込みデ,タストアを使用できます。これらの関数は,デ,タストアから読み取られたデ,タを,分类
に必要な形式に変換できます。
デ,タストア出力に必要な形式は,ネットワ,クア,キテクチャによって異なります。
ネットワ,クア,キテクチャ | デ,タストア出力 | 出力の例 |
---|---|---|
単一入力 | 表またはcell配列。最初の列は予測子を指定します。 表の要素は,スカラー,行ベクトルであるか,数値配列が格納された1行1列の细胞配列でなければなりません。 カスタムデ,タストアは表を出力しなければなりません。 |
数据=读取(ds) data = 4×1 table Predictors __________________ {224×224×3 double} {224×224×3 double} {224×224×3 double} {224×224×3 double} |
数据=读取(ds) Data = 4×1 cell array {224×224×3 double} {224×224×3 double} {224×224×3 double} {224×224×3 double} |
||
複数入力 | 少なくとも 最初の 入力の順序は,ネットワ,クの |
数据=读取(ds) Data = 4×2 cell array {224×224×3 double} {128×128×3 double} {224×224×3 double} {128×128×3 double} {224×224×3 double} {128×128×3 double} {224×224×3 double} {128×128×3 double} |
予測子の形式は,デ,タのタ,プによって異なります。
デタ | 形式 |
---|---|
2次元 | H×w×cの数値配列。ここで,h、w、および c は、それぞれイメージの高さ、幅、およびチャネル数です。 |
3次元 | H×w×d×cの数値配列。ここで,h、w、d、および c は、それぞれイメージの高さ、幅、深さ、およびチャネル数です。 |
詳細にいては,深層学習用のデ,タストアを参照してください。
数値配列
メモリに収まり,なおかつ拡張などの追加の処理を必要としないデータの場合,イメージのデータセットを数値配列として指定できます。
数値配列のサ。
デタ | 形式 |
---|---|
2次元 | h×w×c×Nの数値配列。ここで,h、w、および c は、それぞれイメージの高さ、幅、およびチャネル数です。N はイメージの数です。 |
3次元 | h×w×d×c×Nの数値配列。ここで,h、w、d、および c は、それぞれイメージの高さ、幅、深さ、およびチャネル数です。N はイメージの数です。 |
表格
デ,タストアまたは数値配列の代わりに,メ,ジを表で指定することもできます。
表で指定した場合,表の各行は観測値に対応します。
イメージ入力の場合,予測子は表の最初の列に格納し,次のいずれかとして指定しなければなりません。
@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @文字ベクトルとして指定します。
1行1列のcell配列。ここで,h, w,およびcは,それぞれメ,ジの高さ,幅,およびチャネル数に対応します。
ヒント
複素数値のデ,タをネットワ,クに入力するには,入力層のSplitComplexInputs
オプションが1
でなければなりません。
デ,タ型:单
|双
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
|表格
複素数のサポ,ト:あり
序列
- - - - - -シ,ケンスデ,タまたは時系列デ,タ
デ,タストア|数値配列のcell配列|数値配列
シ,ケンスデ,タまたは時系列デ,タ。次のいずれかとして指定します。
デタ型 | 説明 | 使用例 | |
---|---|---|---|
デ,タストア | TransformedDatastore |
カスタム変換関数を使用して,基になるデ,タストアから読み取ったデ,タのバッチを変換するデ,タストア |
|
CombinedDatastore |
2 .以上の基になるデタストアからデタを読み取るデタストア |
|
|
カスタムミニバッチデ,タストア | デ,タのミニバッチを返すカスタムデ,タストア | 他のデ,タストアでサポ,トされていない形式のデ,タを使用して予測を行います。 詳細は,カスタムミニバッチデ,タストアの開発を参照してください。 |
|
数値配列またはcell配列 | 数値配列として指定した,単一のシ,ケンス。または数値配列のcell配列として指定した、シーケンスのデータ セット | メモリに収まり,なおかつカスタム変換などの追加の処理を必要としないデータを使用して,予測を行います。 |
デ,タストア
デ,タストアは,シ,ケンスと応答のミニバッチを読み取ります。デ,タストアは、データがメモリに収まらない場合や、データに変換を適用したい場合に使用します。
以下のデ,タストアは,シ,ケンスデ,タ用の预测
と直接互換性があります。
カスタムミニバッチデ,タストア。詳細は,カスタムミニバッチデ,タストアの開発を参照してください。
関数变换
および结合
を使用して,予測を行うための他の組み込みデ,タストアを使用できます。これらの関数は,デ,タストアから読み取られたデ,タを,预测
に必要な表または单元格配列形式に変換できます。たとえば,ArrayDatastore
オブジェクトおよびTabularTextDatastore
オブジェクトをそれぞれ使用して,インメモリ配列およびCSVファイルから読み取ったデータの変換と結合を行うことができます。
デ,タストアは,表またはcell配列でデ,タを返さなければなりません。カスタムミニバッチデ,タストアは,表を出力しなければなりません。
デ,タストア出力 | 出力の例 |
---|---|
表格 |
数据=读取(ds) data = 4×2表预测 __________________ { 12×50双}{12×50双}{12×50双}{12×50双} |
细胞配列 |
数据=读取(ds) Data = 4×2 cell array {12×50 double} {12×50 double} {12×50 double} {12×50 double} |
予測子の形式は,デ,タのタ,プによって異なります。
デタ | 予測子の形式 |
---|---|
ベクトルシ,ケンス | C行s列の行列。ここで,c はシーケンスの特徴の数、s はシーケンス長です。 |
1次元メジシケンス | H x c x sの配列。ここで,h および c はそれぞれイメージの高さおよびチャネル数に対応します。s はシーケンス長です。 ミニバッチ内の各シ,ケンスは,同じシ,ケンス長でなければなりません。 |
2次元メジシケンス | 高x宽x c x sの配列。ここで,h、w、および c はそれぞれイメージの高さ、幅、およびチャネル数に対応します。s はシーケンス長です。 ミニバッチ内の各シ,ケンスは,同じシ,ケンス長でなければなりません。 |
3次元メジシケンス | 高x宽x深x c x sの配列。ここで,h、w、d、および c は、それぞれイメージの高さ、幅、深さ、およびチャネル数に対応します。s はシーケンス長です。 ミニバッチ内の各シ,ケンスは,同じシ,ケンス長でなければなりません。 |
予測子が表で返される場合,数値スカラーまたは数値行ベクトルが要素に含まれているか,数値配列が格納された1行1列の细胞配列が要素に含まれていなければなりません。
詳細にいては,深層学習用のデ,タストアを参照してください。
数値配列またはcell配列
メモリに収まり,なおかつカスタム変換などの追加の処理を必要としないデータの場合,単一のシーケンスを数値配列として指定するか,シーケンスのデータセットを数値配列の细胞配列として指定することができます。
细胞配列入力の場合、细胞配列は,数値配列から成るN行1列の细胞配列でなければなりません。ここで,nは観測値の数です。シケンスを表す数値配列のサズと形状は,シケンスデタのタプによって異なります。
入力 | 説明 |
---|---|
ベクトルシ,ケンス | C行s列の行列。ここで,c はシーケンスの特徴の数、s はシーケンス長です。 |
1次元メジシケンス | H×c×sの配列。ここで,h および c はそれぞれイメージの高さおよびチャネル数に対応します。s はシーケンス長です。 |
2次元メジシケンス | H×w×c×sの配列。ここで,h、w、および c は、それぞれイメージの高さ、幅、およびチャネル数に対応します。s はシーケンス長です。 |
3次元メジシケンス | c d w h××××。ここで,h、w、d、および c は、それぞれ 3 次元イメージの高さ、幅、深さ、およびチャネル数に対応します。s はシーケンス長です。 |
ヒント
複素数値のデ,タをネットワ,クに入力するには,入力層のSplitComplexInputs
オプションが1
でなければなりません。
デ,タ型:单
|双
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
|细胞
複素数のサポ,ト:あり
特性
- - - - - -特徴デ,タ
デ,タストア|数値配列|表格
特徴デ,タ。次のいずれかとして指定します。
デタ型 | 説明 | 使用例 | |
---|---|---|---|
デ,タストア | TransformedDatastore |
カスタム変換関数を使用して,基になるデ,タストアから読み取ったデ,タのバッチを変換するデ,タストア |
|
CombinedDatastore |
2 .以上の基になるデタストアからデタを読み取るデタストア |
|
|
カスタムミニバッチデ,タストア | デ,タのミニバッチを返すカスタムデ,タストア | 他のデ,タストアでサポ,トされていない形式のデ,タを使用して予測を行います。 詳細は,カスタムミニバッチデ,タストアの開発を参照してください。 |
|
表格 | 表として指定された特徴デ,タ | 表に格納されたデ,タを使用して予測を行います。 | |
数値配列 | 数値配列として指定された特徴デ,タ | メモリに収まり,なおかつカスタム変換などの追加の処理を必要としないデータを使用して,予測を行います。 |
デ,タストア
デ,タストアは,特徴デ,タと応答のミニバッチを読み取ります。デ,タストアは、データがメモリに収まらない場合や、データに変換を適用したい場合に使用します。
以下のデ,タストアは,特徴デ,タ用の预测
と直接互換性があります。
カスタムミニバッチデ,タストア。詳細は,カスタムミニバッチデ,タストアの開発を参照してください。
関数变换
および结合
を使用して,予測を行うための他の組み込みデ,タストアを使用できます。これらの関数は,デ,タストアから読み取られたデ,タを,预测
に必要な表または单元格配列形式に変換できます。詳細にいては,深層学習用のデ,タストアを参照してください。
複数の入力があるネットワ,クの場合,デ,タストアはTransformedDatastore
オブジェクトまたはCombinedDatastore
オブジェクトでなければなりません。
デ,タストアは,表またはcell配列でデ,タを返さなければなりません。カスタムミニバッチデ,タストアは,表を出力しなければなりません。デ,タストア出力の形式は,ネットワ,クア,キテクチャによって異なります。
ネットワ,クア,キテクチャ | デ,タストア出力 | 出力の例 |
---|---|---|
単入力層 | 少なくとも1の列をもtable cell。最初の列は予測子を指定します。 表の要素は,スカラー,行ベクトルであるか,数値配列が格納された1行1列の细胞配列でなければなりません。 カスタムミニバッチデ,タストアは,表を出力しなければなりません。 |
1 .表: 数据=读取(ds) data = 4×2表预测 __________________ { 24×24×1双}{1双}{24×1双}{24×1双} |
1の入力があるネットワクのcell配列: 数据=读取(ds) Data = 4×1 cell array {24×1 double} {24×1 double} {24×1 double} {24×1 double} |
||
多入力層 | 少なくとも 最初の 入力の順序は,ネットワ,クの |
2の入力があるネットワクのcell配列: 数据=读取(ds) Data = 4×3 cell array {24×1 double} {28×1 double} {24×1 double} {28×1 double} {24×1 double} {28×1 double} {24×1 double} {28×1 double} |
予測子は,c行1列の列ベクトルでなければなりません。ここで,cは特徴の数です。
詳細にいては,深層学習用のデ,タストアを参照してください。
表格
メモリに収まり,なおかつカスタム変換などの追加の処理を必要としない特徴データの場合,特徴データと応答を表として指定できます。
表の各行は観測値に対応します。表格の列での予測子の配置は、タスクのタイプによって異なります。
タスク | 予測子 |
---|---|
特徴分類 | 1以上の列でスカラとして指定された特徴。 |
数値配列
メモリに収まり,なおかつカスタム変換などの追加の処理を必要としない特徴データの場合,特徴データを数値配列として指定できます。
数値配列は,n行numFeatures
列の数値配列でなければなりません。ここで,nは観測値の数,numFeatures
は入力デ,タの特徴の数です。
ヒント
複素数値のデ,タをネットワ,クに入力するには,入力層のSplitComplexInputs
オプションが1
でなければなりません。
デ,タ型:单
|双
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
|表格
複素数のサポ,ト:あり
X1,…,XN
- - - - - -複数の入力をもcell配列
数値配列|细胞配列
複数の入力をもcell配列。
►メ,ジ,シ,ケンス,および特徴の予測子入力の場合,予測子の形式は,图片
、序列
,または特性
のそれぞれの引数の説明に記載されている形式と一致しなければなりません。
複数の入力をもネットワクに学習させる方法を説明する例にいては,イメージデータおよび特徴データにおけるネットワークの学習を参照してください。
複素数値のデ,タをネットワ,クに入力するには,入力層のSplitComplexInputs
オプションが1
でなければなりません。
デ,タ型:单
|双
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
|细胞
複素数のサポ,ト:あり
混合
- - - - - -混在デ,タ
TransformedDatastore
|CombinedDatastore
|カスタムミニバッチデ,タストア
混在デ,タ。次のいずれかとして指定します。
デタ型 | 説明 | 使用例 |
---|---|---|
TransformedDatastore |
カスタム変換関数を使用して,基になるデ,タストアから読み取ったデ,タのバッチを変換するデ,タストア |
|
CombinedDatastore |
2 .以上の基になるデタストアからデタを読み取るデタストア |
|
カスタムミニバッチデ,タストア | デ,タのミニバッチを返すカスタムデ,タストア | 他のデ,タストアでサポ,トされていない形式のデ,タを使用して予測を行います。 詳細は,カスタムミニバッチデ,タストアの開発を参照してください。 |
関数变换
および结合
を使用して,予測を行うための他の組み込みデ,タストアを使用できます。これらの関数は,デ,タストアから読み取られたデ,タを,预测
に必要な表または单元格配列形式に変換できます。詳細にいては,深層学習用のデ,タストアを参照してください。
デ,タストアは,表またはcell配列でデ,タを返さなければなりません。カスタムミニバッチデ,タストアは,表を出力しなければなりません。デ,タストア出力の形式は,ネットワ,クア,キテクチャによって異なります。
デ,タストア出力 | 出力の例 |
---|---|
入力の順序は,ネットワ,クの |
数据=读取(ds) Data = 4×3 cell array {24×1 double} {28×1 double} {24×1 double} {28×1 double} {24×1 double} {28×1 double} {24×1 double} {28×1 double} |
►メ,ジ,シ,ケンス,および特徴の予測子入力の場合,予測子の形式は,图片
、序列
,または特性
のそれぞれの引数の説明に記載されている形式と一致しなければなりません。
複数の入力をもネットワクに学習させる方法を説明する例にいては,イメージデータおよび特徴データにおけるネットワークの学習を参照してください。
ヒント
数値配列をデ,タストアに変換するには,arrayDatastore
を使用します。
名前と値の引数
オプションの引数のペアをName1 = Value1,…,以=家
として指定します。ここで,的名字
は引数名で,价值
は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。
R2021aより前では,コンマを使用して名前と値の各ペアを区切り,的名字
を引用符で囲みます。
例:MiniBatchSize = 256
はミニバッチのサesc escズを256に指定します。
MiniBatchSize
- - - - - -ミニバッチのサ@ @ズ
128
(既定値) |正の整数
予測に使用するミニバッチのサ@ @ズ。正の整数として指定します。ミニバッチのサ@ @ズが大きくなるとより多くのメモリが必要になりますが、予測時間が短縮される可能性があります。
長さが異なるシーケンスで予測を行うと,ミニバッチのサイズが,入力データに追加されるパディングの量に影響し,予測値が変わることがあります。さまざまな値を使用して,ネットワ,クに最適なものを確認してください。ミニバッチのサ电子邮箱ズとパディングのオプションを指定するには,MiniBatchSize
オプションとSequenceLength
オプションをそれぞれ使用します。
デ,タ型:单
|双
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
加速度
- - - - - -パフォ,マンスの最適化
“汽车”
(既定値) |“墨西哥人”
|“没有”
パフォ,マンスの最適化。次のいずれかとして指定します。
“汽车”
—入力ネットワクとハドウェアリソスに適した最適化の回数を自動的に適用します。“墨西哥人”
- mex関数をコンパ电子邮箱ルして実行します。このオプションはgpuの使用時にのみ利用できます。GPUを使用するには并行计算工具箱とサポートされているGPUデバイスが必要です。サポトされているデバスにいては,Gpu計算の要件(并行计算工具箱)を参照してください。并行计算工具箱または適切なGPUが利用できない場合,エラーが返されます。“没有”
-すべての高速化を無効にします。
加速度
が“汽车”
の場合,matlab®は互換性のある最適化を複数適用し,mex関数を生成しません。
“汽车”
オプションおよび“墨西哥人”
オプションは,パフォ,マンス上のメリットがありますが,初期実行時間が長くなります。互換性のあるパラメ,タ,を使用した後続の呼び出しは,より高速になります。新しい入力デ,タを使用して関数を複数回呼び出す場合は,パフォ,マンスの最適化を使用してください。
“墨西哥人”
オプションは,関数の呼び出しに使用されたネットワークとパラメーターに基づいて墨西哥人関数を生成し,実行します。複数のmex関数を一度に1のネットワクに関連付けることができます。ネットワークの変数をクリアすると,そのネットワークに関連付けられている墨西哥人関数もクリアされます。
“墨西哥人”
オプションは,単一のgpuの使用時に利用できます。
“墨西哥人”
オプションを使用するには,C / c++コンパイラがインストールされ,GPU编码器™界面深度学习库サポートパッケージがなければなりません。Matlabでアドオンエクスプロラを使用してサポトパッケジをンストルします。設定手順にいては,墨西哥の設定(GPU编码器)を参照してください。GPU编码器は不要です。
“墨西哥人”
オプションは,サポ,トされている層(GPU编码器)ペ,ジにリストされている層を含むネットワ,クをサポ,トしています。ただし,sequenceInputLayer
オブジェクトとfeatureInputLayer
オブジェクトを除きます。
“墨西哥人”
オプションを使用する場合,MATLAB编译器™はネットワ,クの展開をサポ,トしません。
ExecutionEnvironment
- - - - - -ハ,ドウェアリソ,ス
“汽车”
(既定値) |“图形”
|“cpu”
|“multi-gpu”
|“平行”
ハ,ドウェアリソ,ス。次のいずれかとして指定します。
“汽车”
—利用可能な場合はgpuを使用し,そうでない場合はCPUを使用します。“图形”
- gpuを使用します。GPUを使用するには并行计算工具箱とサポートされているGPUデバイスが必要です。サポトされているデバスにいては,Gpu計算の要件(并行计算工具箱)を参照してください。并行计算工具箱または適切なGPUが利用できない場合,エラーが返されます。“cpu”
—CPUを使用します。“multi-gpu”
——既定のクラスタープロファイルに基づいてローカルの並列プールを使用して,1つのマシンで複数のGPUを使用します。現在の並列プールがない場合,使用可能なGPUの数と等しいプールサイズの並列プールが起動されます。“平行”
—既定のクラスタプロファルに基づいてロカルまたはリモトの並列プルを使用します。現在の並列プールがない場合,既定のクラスタープロファイルを使用して1つのプールが起動されます。プルからgpuにアクセスできる場合,固有のgpuを持ワカのみが計算を実行します。プルにgpuがない場合,代わりに使用可能なすべてのCPUワカで計算が実行されます。
さまざまな実行環境をどのような場合に使用するかの詳細は,并行、gpu和云中扩展深度学习を参照してください。
“图形”
、“multi-gpu”
,および“平行”
のオプションを使用するには,并行计算工具箱が必要です。深層学習にgpuを使用するには,サポトされているgpuデバスもなければなりません。サポトされているデバスにいては,Gpu計算の要件(并行计算工具箱)を参照してください。これらのいずれかのオプションの選択時に并行计算工具箱または適切なGPUを利用できない場合,エラーが返されます。
ExecutionEnvironment
を“multi-gpu”
または“平行”
に設定し,再帰層を含むネットワ,クを使用して並列に予測を行うには,SequenceLength
オプションを“最短”
または“最长”
に設定しなければなりません。
状态
パラメタをもカスタム層を含むネットワクは,並列の予測をサポトしていません。
ReturnCategorical
- - - - - -カテゴリカルラベルを返すオプション
0
(假)(既定値) |1
(真正的)
カテゴリカルラベルを返すオプション。0
(错误)または1
(正确)として指定します。
ReturnCategorical
が1
(正确)の場合,関数は分類出力層のカテゴリカルラベルを返します。そうでない場合,関数は分類出力層の予測スコアを返します。
SequenceLength
- - - - - -シ,ケンスのパディングまたは切り捨てを行うオプション
“最长”
(既定値) |“最短”
|正の整数
入力シ,ケンスのパディング,切り捨て,または分割を行うオプション。次のいずれかに指定します。
“最长”
—各ミニバッチで,最長のシケンスと同じ長さになるようにシケンスのパディングを行います。このオプションを使用するとデータは破棄されませんが,パディングによってネットワークにノイズが生じることがあります。“最短”
—各ミニバッチで,最短のシケンスと同じ長さになるようにシケンスの切り捨てを行います。このオプションを使用するとパディングは追加されませんが,デ,タが破棄されます。正の整数——各ミニバッチについて,そのミニバッチ内で最も長いシーケンスに合わせてシーケンスをパディングした後,指定した長さのより小さいシーケンスに分割します。分割が発生すると,追加のミニバッチが作成されます。指定したシーケンス長によってデータのシーケンスを均等に分割できない場合,最後のシーケンスを含むミニバッチの長さは指定した長さより短くなります。シ,ケンス全体がメモリに収まらない場合は,このオプションを使用します。または,
MiniBatchSize
オプションをより小さい値に設定して,ミニバッチごとのシ,ケンス数を減らしてみます。
入力シ,ケンスのパディング,切り捨て,および分割の効果の詳細は,シ,ケンスのパディング,切り捨て,および分割を参照してください。
デ,タ型:单
|双
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
|字符
|字符串
SequencePaddingDirection
- - - - - -パディングまたは切り捨ての方向
“正确”
(既定値) |“左”
パディングまたは切り捨ての方向。次のいずれかに指定します。
“正确”
—シケンスの右側に対してパディングまたは切り捨てを行います。シーケンスは同じタイムステップで始まり,シーケンスの末尾に対して切り捨てまたはパディングの追加が行われます。“左”
—シケンスの左側に対してパディングまたは切り捨てを行います。シーケンスが同じタイムステップで終わるように,シーケンスの先頭に対して切り捨てまたはパディングの追加が行われます。
再帰層は1タOutputMode
プロパティが“最后一次”
の場合,最後のタ。シ,ケンスデ,タの左側に対してパディングまたは切り捨てを行うには,SequencePaddingDirection
オプションを“左”
に設定します。
序列对序列ネットワ,クの場合(各再帰層に,いてOutputMode
プロパティが“序列”
である場合),最初のタイムステップでパティングを行うと,それ以前のタイムステップの予測に悪影響を与える可能性があります。シ,ケンスの右側に対してパディングまたは切り捨てを行うには,SequencePaddingDirection
オプションを“正确”
に設定します。
入力シ,ケンスのパディング,切り捨て,および分割の効果の詳細は,シ,ケンスのパディング,切り捨て,および分割を参照してください。
SequencePaddingValue
- - - - - -シ,ケンスをパディングする値
0
(既定値) |スカラ
入力シ,ケンスをパディングする値。スカラ,として指定します。
このオプションは,SequenceLength
が“最长”
または正の整数の場合にのみ有効です。ネットワ,ク全体にエラ,が伝播される可能性があるため,南
でシ,ケンスをパディングしないでください。
デ,タ型:单
|双
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
出力引数
Y
-予測応答
数値配列| category配列| cell配列
予測応答。数値配列、categorical 配列、または cell 配列として返されます。Y
の形式は,問題のタ。
次の表は,回帰問題の形式にいて説明しています。
タスク | 形式 |
---|---|
2次元 |
|
3次元 |
|
序列对一回帰 | N行r列の行列。ここで,N はシーケンスの数、R は応答の数です。 |
序列对序列回帰 | 数値シケンスのN行1列のcell配列。ここで,nはシ,ケンスの数です。シ,ケンスはr行の行列で,rは応答の数です。 観測値が1; |
特徴回帰 | N行r列の行列。Nは観測値の数,rは応答の数です。 |
観測値が1;序列
を行列にすることができます。この場合,Y
は応答の行列です。
ReturnCategorical
が0
(错误)で,ネットワ,クの出力層が分類層である場合,Y
は予測された分類スコアになります。次の表は,分類タスクのスコアの形式にいて説明しています。
タスク | 形式 |
---|---|
メ,ジ分類 | N行k列の行列。Nは観測値の数,kはクラスの数です。 |
从序列到标签分類 | |
特徴分類 | |
序列对序列分類 | 行列のN行1列のcell配列。Nは観測値の数です。シ,ケンスはk行の行列で,kはクラスの数です。 |
ReturnCategorical
が1
(正确)であり,ネットワ,クの出力層が分類層である場合,Y
は直言ベクトルまたは直言ベクトルの细胞配列になります。次の表は,分類タスクのラベルの形式にいて説明しています。
タスク | 形式 |
---|---|
メ,ジ分類または特徴分類 | ラベルのN行1列の分类ベクトル。Nは観測値の数です。 |
从序列到标签分類 | |
序列对序列分類 | ラベルのカテゴリカルシケンスのN行1列のcell配列。Nは観測値の数です。 観測値が1; |
日元…,
—複数の出力をもネットワクの予測スコアまたは予測応答
数値配列| category配列| cell配列
複数の出力をもネットワクの予測スコアまたは予測応答。数値配列、categorical 配列、または cell 配列として返されます。
各出力Yj
は,ネットワ,ク出力net.OutputNames (j)
に対応し,出力引数Y
で説明されている形式になります。
アルゴリズム
関数trainNetwork
を使用してネットワ,クに学習させる場合や,DAGNetwork
オブジェクトおよびSeriesNetwork
オブジェクトと共に予測関数または検証関数を使用する場合,ソフトウェアは単精度浮動小数点演算を使用して,これらの計算を実行します。学習,予測,および検証のための関数には,trainNetwork
、预测
、分类
,および激活
が含まれます。CPUとgpuの両方を使用してネットワ,クに学習させる場合,単精度演算が使用されます。
代替方法
単一の分類層のみをも分类
を使用して,学習済みのネットワ,クから予測クラスと予測スコアを計算できます。
ネットワ,ク層から活性化を計算するには,関数激活
を使用します。
LSTMネットワ,クなどの再帰型ネットワ,クでは,classifyAndUpdateState
およびpredictAndUpdateState
を使用してネットワ,クの状態の予測および更新を実行できます。
参照
[1]工藤,美一,富山俊,新保真。“使用穿过区域的多维曲线分类”模式识别信20,没有。11-13(1999年11月):1103-11。https://doi.org/10.1016/s0167 - 8655 (99) 00077 - x.
[2] UCI机器学习库:日语元音数据集。https://archive.ics.uci.edu/ml/datasets/Japanese+Vowels.
拡張機能
C/ c++コ,ド生成
MATLAB®Coder™を使用してCおよびc++コドを生成します。
使用上の注意および制限:
c++コ,ド生成は,以下の構文をサポ,トします。
Y = predict(净,图像)
(ここで,图片
は数値配列)Y =预测(净,序列)
(ここで,序列
はcell配列)Y =预测(净,特征)
(ここで,特性
は数値配列)(日元…,Y米预测,预测__)
(前述の構文のいずれかを使用)__ = predict(__,Name=Value)
(前述の構文のいずれかを使用)
数値入力の場合,入力のサ。サ▪▪ズはコ▪▪ド生成時に固定しなければなりません。
ベクトルシ,ケンス入力の場合,特徴の数はコ,ド生成時に定数でなければなりません。シケンスの長さは可変サズにできます。
イメージシーケンス入力の場合,高さ,幅,およびチャネル数は,コード生成時に定数でなければなりません。
コ,ド生成では,名前と値のペアの引数
MiniBatchSize
、ReturnCategorical
、SequenceLength
、SequencePaddingDirection
,およびSequencePaddingValue
のみがサポ,トされています。すべての名前と値のペアはコンパ@ @ル時の定数でなければなりません。コ,ド生成では,名前と値のペア
SequenceLength
のオプションとして“最长”
と“最短”
のみがサポ,トされています。ReturnCategorical
が1
(真正的)であり,GCC C / c++コンパイラの8.2版本以降を使用している場合,-Wstringop-overflow
の警告が表示されることがあります。英特尔®Mkl-dnnタ,ゲット用のコ,ド生成では,
SequenceLength =“最长”
、SequencePaddingDirection =“左”
,およびSequencePaddingValue = 0
の名前と値の引数の組み合わせがサポ,トされません。
深層学習ニュ,ラルネットワ,ク用のコ,ドの生成の詳細は,MATLAB Coderを使用した深層学習コ,ド生成のワ,クフロ,(MATLAB编码器)を参照してください。
Gpuコ,ド生成
GPU编码器™を使用してNVIDIA GPU®のためのCUDA®コードを生成します。
使用上の注意および制限:
Gpuコ,ド生成は,以下の構文をサポ,トします。
Y = predict(净,图像)
(ここで,图片
は数値配列)Y =预测(净,序列)
(ここで,序列
はcell配列または数値配列)Y =预测(净,特征)
(ここで,特性
は数値配列)(日元…,Y米预测,预测__)
(前述の構文のいずれかを使用)__ = predict(__,Name=Value)
(前述の構文のいずれかを使用)
数値入力の場合,入力のサ。サ▪▪ズはコ▪▪ド生成時に固定しなければなりません。
Gpuコ,ド生成では,関数
预测
へのgpuArray
入力はサポ,トされません。cuDNNラブラリはベクトルおよび2次元メジシケンスをサポトします。TensorRTラブラリはベクトル入力シケンスのみをサポトします。手臂®
计算库
用于GPUは再帰型ネットワ,クをサポ,トしていません。ベクトルシ,ケンス入力の場合,特徴の数はコ,ド生成時に定数でなければなりません。シケンスの長さは可変サズにできます。
イメージシーケンス入力の場合,高さ,幅,およびチャネル数は,コード生成時に定数でなければなりません。
コ,ド生成では,名前と値のペアの引数
MiniBatchSize
、ReturnCategorical
、SequenceLength
、SequencePaddingDirection
,およびSequencePaddingValue
のみがサポ,トされています。すべての名前と値のペアはコンパ@ @ル時の定数でなければなりません。コ,ド生成では,名前と値のペア
SequenceLength
のオプションとして“最长”
と“最短”
のみがサポ,トされています。関数
预测
のgpuコド生成では,半精度浮動小数点デタ型として定義されている入力がサポトされます。詳細にいては,一半
(GPU编码器)を参照してください。ReturnCategorical
が1
(真正的)に設定され,GCC C / c++コンパイラの8.2版本以降を使用している場合,-Wstringop-overflow
の警告が表示されることがあります。
自動並列サポ,ト
并行计算工具箱™を使用して自動的に並列計算を実行することで,コードを高速化します。
計算を並列実行するには,ExecutionEnvironment
オプションを“multi-gpu”
または“平行”
に設定します。
詳細は,并行、gpu和云中扩展深度学习を参照してください。
Gpu配列
并行计算工具箱™を使用してグラフィックス処理装置(GPU)上で実行することにより,コードを高速化します。
入力デ,タが以下の場合,
ExecutionEnvironment
オプションは“汽车”
または“图形”
でなければなりません。gpuArray
gpuArray
オブジェクトを含むcell配列gpuArray
オブジェクトを含む表gpuArray
オブジェクトを含むcell配列を出力するデ,タストアgpuArray
オブジェクトを含む表を出力するデ,タストア
詳細にいては,Gpuでのmatlab関数の実行(并行计算工具箱)を参照してください。
バ,ジョン履歴
R2016aで導入R2022b:SequenceLength
オプションを整数として指定した場合,予測関数は,分割を行う前に最も長いシーケンスに合わせてミニバッチをパディングする
R2022b以降,関数预测
、分类
、predictAndUpdateState
、classifyAndUpdateState
,および激活
を使用してシ,ケンスデ,タで予測を行うときに,SequenceLength
オプションが整数である場合,各ミニバッチ内で最も長いシーケンスに合わせてシーケンスがパディングされた後,指定したシーケンス長でシーケンスが分割されてミニバッチが作成されます。SequenceLength
によってミニバッチのシ,ケンスを均等に分割できない場合,最後に分割されたミニバッチの長さはSequenceLength
より短くなります。この動作によって,パディング値しか含まれないタイムステップが予測に影響するのを防ぐことができます。
以前のリリ,スでは,SequenceLength
の倍数に最も近く,かつミニバッチ長以上の長さとなるように,シーケンスのミニバッチをパディングしてから,データが分割されていました。この動作を再現するには,ミニバッチの長さがSequenceLength
の適切な倍数となるように,入力デ,タを手動でパディングします。sequence-to-sequenceのワークフローでは,さらに,パディング値に対応するタイムステップを出力から手動で削除しなければならない場合があります。
Matlabコマンド
次のmatlabコマンドに対応するリンクがクリックされました。
コマンドをmatlabコマンドウィンドウに入力して実行してください。Webブラウザ,はMATLABコマンドをサポ,トしていません。
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。