ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

kfoldLoss

分割された回帰モデルの交差検証損失

構文

L = kfoldLoss(cvmodel)
L = kfoldLoss(cvmodel,Name,Value)

説明

L = kfoldLoss(cvmodel) は、cvmodel の交差検証損失を返します。

L = kfoldLoss(cvmodel,Name,Value) では、1 つ以上の Name,Value のペア引数で指定された追加オプションを使用して、交差検証損失を返します。Name1,Value1,…,NameN,ValueN のように、複数の名前と値のペアの引数を任意の順番で指定できます。

入力引数

cvmodel

クラス RegressionPartitionedModel のオブジェクト。関数 fitrtree と共に交差検証オプションの 1 つを使用して、obj を作成します。それらは、'CrossVal''KFold''Holdout''Leaveout' または 'CVPartition' です。または、crossval を使用して回帰木から obj を作成します。

名前と値のペアの引数

オプションの Name,Value 引数のコンマ区切りペアを指定します。Name は引数名で、Value は対応する値です。Name は引用符で囲まなければなりません。Name1,Value1,...,NameN,ValueN のように、複数の名前と値のペアの引数を、任意の順番で指定できます。

'folds'

1 から obj.KFold までの分割のインデックス。予測にはこれらの分割のみを使用します。

既定値: 1:obj.KFold

'lossfun'

損失関数の関数ハンドル、または平均二乗誤差を意味する 'mse'。関数ハンドル fun を渡す場合、kfoldLoss でこの関数を次のように呼び出します。

fun(Y,Yfit,W)

ここで、YYfitW は、すべて同じ長さの数値ベクトルです。

  • Y は、観測された応答です。

  • Yfit は予測された応答です。

  • W は観測の重みです。

戻り値 fun(Y,Yfit,W) はスカラーでなければなりません。

既定値: 'mse'

'mode'

以下のいずれかに該当します。

  • 'average'L は、すべての分割における平均損失です。

  • 'individual'L は、分割外データで学習した分割内の観測値の個別の損失を示すベクトルです。

既定値: 'average'

出力引数

L

分割外のデータで学習した木による予測と比較した場合の、1 つの分割内の観測値間の損失 (平均二乗誤差)。mode'individual' の場合、L は損失のベクトルです。mode'average' の場合、L は平均損失を示します。

分割された再帰モデルを作成し、分割の交差検証損失を調べます。

load carsmall
XX = [Cylinders Displacement Horsepower Weight];
YY = MPG;
cvmodel = fitrtree(XX,YY,'crossval','on');
L = kfoldLoss(cvmodel,'mode','individual')

L =
   44.9635
   11.8525
   18.2046
    9.2965
   29.4329
   54.8659
   24.6446
    8.2085
   19.7593
   16.7394

代替方法

kfoldLoss の代わりに cvloss を呼び出すことで、交差検証ツリー モデルの作成を回避できます。調査を 1 回以上行う場合は、交差検証ツリーで時間を節約できます。