Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

mse

半平均二乗誤差

R2019b 以降

説明

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

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

loss=12Ni=1M(XiTi)2

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

メモ

この関数は、dlarray データとして保存された予測とターゲットの間の半平均二乗誤差損失を計算します。trainNetwork で使用するために、layerGraph オブジェクト内または Layer 配列内で半平均二乗誤差損失を計算する場合は、regressionLayer を使用します。

関数 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 で導入