Main Content

RegressionOutputLayer

regressionLayer は推奨されません。代わりに、関数 trainnet を使用し、損失関数を "mse" に設定します。詳細については、バージョン履歴を参照してください。

説明

回帰層は、回帰タスクの半平均二乗誤差損失を計算します。

作成

regressionLayer を使用して回帰出力層を作成します。

プロパティ

すべて展開する

回帰出力

応答の名前。文字ベクトルの cell 配列、または string 配列として指定します。学習時に、学習データに従って応答名が自動的に設定されます。既定値は {} です。

データ型: cell

学習に使用される損失関数。'mean-squared-error' として指定します。

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

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

データ型: char | string

層への入力の数。1 として返されます。この層は単一の入力のみを受け入れます。

データ型: double

入力名。{'in'} として返されます。この層は単一の入力のみを受け入れます。

データ型: cell

層の出力の数。0 として返されます。この層には出力がありません。

データ型: double

層の出力の名前。{} として返されます。この層には出力がありません。

データ型: cell

すべて折りたたむ

回帰出力層を作成します。

'routput' という名前の回帰出力層を作成します。

layer = regressionLayer('Name','routput')
layer = 
  RegressionOutputLayer with properties:

             Name: 'routput'
    ResponseNames: {}

   Hyperparameters
     LossFunction: 'mean-squared-error'

回帰用の既定の損失関数は、平均二乗誤差です。

Layer 配列に回帰出力層を含めます。

layers = [ ...
    imageInputLayer([28 28 1])
    convolution2dLayer(12,25)
    reluLayer
    fullyConnectedLayer(1)
    regressionLayer]
layers = 
  5x1 Layer array with layers:

     1   ''   Image Input         28x28x1 images with 'zerocenter' normalization
     2   ''   2-D Convolution     25 12x12 convolutions with stride [1  1] and padding [0  0  0  0]
     3   ''   ReLU                ReLU
     4   ''   Fully Connected     1 fully connected layer
     5   ''   Regression Output   mean-squared-error

詳細

すべて展開する

バージョン履歴

R2017a で導入

すべて折りたたむ

R2024a: 非推奨

R2024a 以降、RegressionOutputLayer オブジェクトは非推奨となりました。代わりに、trainnet を使用し、損失関数を "mse" に設定してください。

RegressionOutputLayer オブジェクトのサポートを削除する予定はありません。ただし、関数 trainnet には次の利点があるため、代わりにこの関数を使うことを推奨します。

  • trainnetdlnetwork オブジェクトをサポートしています。このオブジェクトは、ユーザーが作成したり外部のプラットフォームからインポートしたりできる、さまざまなネットワーク アーキテクチャをサポートしています。

  • trainnet を使用すると、損失関数を簡単に指定できます。組み込みの損失関数を選択するか、カスタム損失関数を指定できます。

  • trainnetdlnetwork オブジェクトを出力します。このオブジェクトは、ネットワークの構築、予測、組み込み学習、可視化、圧縮、検証、およびカスタム学習ループをサポートする統合されたデータ型です。

  • trainnet は、通常、trainNetwork よりも高速です。

関数 trainNetworkRegressionOutputLayer オブジェクトを組み合わせた代表的な使用法と、代わりに関数 trainnet を使用するためのコードの更新方法を、次の表に示します。

非推奨推奨
net = trainNetwork(X,T,layers,options)layers には RegressionOutputLayer オブジェクトが含まれています。

net = trainnet(X,T,layers,"mse",options);
この例では、RegressionOutputLayer オブジェクトを使用せずに、layers で同じネットワークを指定しています。

net = trainNetwork(data,layers,options)layers には RegressionOutputLayer オブジェクトが含まれています。

net = trainnet(data,layers,"mse",options);
この例では、RegressionOutputLayer オブジェクトを使用せずに、layers で同じネットワークを指定しています。