Main Content

mse

半平均二乗誤差

R2019b 以降

説明

半平均二乗誤差演算は、回帰タスクのネットワーク予測とターゲット値の間の半平均二乗誤差損失を計算します。

この損失は、次の式で計算されます。

loss=12Ni=1M(XiTi)2

ここで、Xi はネットワーク予測、Ti はターゲット値、M は X に含まれる (すべての観測値の) 応答の総数、N は X に含まれる観測値の総数です。

メモ

関数 trainnet を使用し、平均二乗誤差損失に基づいてネットワークに学習させるには、損失関数を "mse" に設定します。

loss = mse(Y,targets) は、回帰問題に関する予測 Y とターゲット値 targets の間の半平均二乗誤差損失を計算します。入力 Y は、形式を整えた dlarray でなければなりません。出力 loss は、形式を整えていない dlarray スカラーです。

Y が、形式を整えていない dlarray である場合、loss = mse(Y,targets,'DataFormat',FMT) は、次元形式 FMT も指定します。

すべて折りたたむ

半平均二乗誤差は、ネットワーク予測がターゲット値とどの程度一致しているかを評価します。

入力予測を、高さと幅が 6、チャネル数が 1 の乱数値による単一の観測値として作成します。

height = 6;
width = 6;
channels = 1;
observations = 1;

Y = rand(height,width,channels,observations);
Y = dlarray(Y,'SSCB')

ターゲット値を、入力データ Y と同じ次元の順序をもつ数値配列として作成します。

targets = ones(height,width,channels,observations);

予測とターゲットの間の半平均二乗誤差を計算します。

loss = mse(Y,targets)
loss =

  1x1 dlarray

    5.2061

入力引数

すべて折りたたむ

予測。形式を整えた dlarray、形式を整えていない dlarray、または数値配列として指定します。Y が、形式を整えた dlarray でない場合、DataFormat オプションを使用して次元形式を指定しなければなりません。

Y が数値配列の場合、targetsdlarray でなければなりません。

ターゲット応答。形式を整えた (または形式を整えていない) dlarray、あるいは数値配列として指定します。

targets の各次元のサイズは、Y の対応する次元のサイズと一致していなければなりません。

targets が、形式を整えた dlarray の場合、その形式は Y の形式と同じでなければなりません。Y の形式を整えていない場合、その形式は DataFormat の形式と同じでなければなりません。

targets が、形式を整えていない dlarray または数値配列の場合、関数は、Y の形式または DataFormat の値を targets に適用します。

ヒント

形式を整えた dlarray オブジェクトは、"S" (空間)、"C" (チャネル)、"B" (バッチ)、"T" (時間)、"U" (指定なし) の順序となるように、基となるデータの次元を自動的に並べ替えます。さらに、Y が、形式を整えた dlarray の場合、Ytargets の次元が必ず一致するように、形式を整えた dlarray として targets を指定します。

データの次元の説明。文字ベクトルまたは string スカラーとして指定します。

データ形式は文字列で、各文字は対応するデータ次元のタイプを表します。

各文字は以下のとおりです。

  • "S" — 空間

  • "C" — チャネル

  • "B" — バッチ

  • "T" — 時間

  • "U" — 指定なし

たとえば、シーケンスのバッチを含み、1 番目、2 番目、および 3 番目の次元がそれぞれチャネル、観測値、およびタイム ステップに対応する配列があるとします。この配列の形式を "CBT" (チャネル、バッチ、時間) として指定できます。

"S" または "U" のラベルが付いた次元については、複数回指定できます。"C""B""T" のラベルについては、1 回のみ使用できます。ソフトウェアは、2 番目の次元の後ろにある大きさが 1 の "U" 次元を無視します。

入力データが、形式を整えた dlarray オブジェクトでない場合は、FMT オプションを指定しなければなりません。

詳細については、Deep Learning Data Formatsを参照してください。

データ型: char | string

出力引数

すべて折りたたむ

半平均二乗誤差損失。形式を整えていない dlarray スカラーとして返されます。出力 loss の基となるデータ型は、入力 Y と同じです。

アルゴリズム

すべて折りたたむ

半平均二乗誤差損失

関数 mse は、回帰問題の半平均二乗誤差損失を計算します。詳細については、RegressionOutputLayer のリファレンス ページに記載された回帰出力層の定義を参照してください。

深層学習配列の形式

深層学習のほとんどのネットワークと関数は、入力データの各次元に対して異なる方法で演算を行います。

たとえば、LSTM 演算は入力データの時間次元を反復処理し、バッチ正規化演算は入力データのバッチ次元を正規化します。

ラベルが付いた次元をもつ入力データ、または追加のレイアウト情報をもつ入力データを指定するには、"データ形式" を使用します。

データ形式は文字列で、各文字は対応するデータ次元のタイプを表します。

各文字は以下のとおりです。

  • "S" — 空間

  • "C" — チャネル

  • "B" — バッチ

  • "T" — 時間

  • "U" — 指定なし

たとえば、シーケンスのバッチを含み、1 番目、2 番目、および 3 番目の次元がそれぞれチャネル、観測値、およびタイム ステップに対応する配列があるとします。この配列の形式を "CBT" (チャネル、バッチ、時間) として指定できます。

形式を整えた入力データを作成するには、dlarray オブジェクトを作成し、2 番目の引数を使用して形式を指定します。

形式を整えていないデータを使用して追加のレイアウト情報を指定するには、引数 FMT を使用して形式を指定します。

詳細については、Deep Learning Data Formatsを参照してください。

拡張機能

バージョン履歴

R2019b で導入