Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

crossval

アンサンブルの交差検証

構文

cvens = crossval(ens)
cvens = crossval(ens,Name,Value)

説明

cvens = crossval(ens) は、アンサンブル分類 ens から交差検証を使用したアンサンブルを作成します。既定の設定は 10 分割交差検証です。

cvens = crossval(ens,Name,Value) は、1 つ以上の Name,Value ペア引数によって指定される追加オプションを使用して、交差検証を使用したアンサンブルを作成します。Name1,Value1,…,NameN,ValueN のように、複数の名前と値のペアの引数を任意の順番で指定できます。

入力引数

ens

関数 fitcensemble で作成されたアンサンブル分類。

名前と値の引数

オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで Name は引数名、Value は対応する値です。名前と値の引数は他の引数の後ろにする必要がありますが、ペアの順序は関係ありません。

R2021a より前では、名前と値をそれぞれコンマを使って区切り、Name を引用符で囲みます。

cvpartition

クラス cvpartition の分割。交差検証の分割を設定します。

名前と値のペア cvpartitionholdoutkfold、または leaveout から 1 つだけを使用します。

holdout

ホールドアウト検証は、データの指定部分をテストし、データの残りの部分を学習に使用します。0 から 1 までの数値スカラーを指定します。交差検証ツリーの作成では、次の 4 つのオプション、'kfold''holdout''leaveout' または 'cvpartition' のいずれか 1 つだけを使用することができます。

kfold

交差検証の分割数。1 より大きい正の数値スカラー。

名前と値のペア 'kfold''holdout''leaveout' または 'cvpartition' から 1 つだけを使用します。

leaveout

'on' の場合は、Leave-one-out 法の交差検証を指定します。

名前と値のペア 'kfold''holdout''leaveout' または 'cvpartition' から 1 つだけを使用します。

nprint

出力頻度、正の整数のスカラー。このパラメーターを使用して、交差検証学習集合の学習を観測します。

既定値: 'off'、出力なし

出力引数

cvens

クラス ClassificationPartitionedEnsemble の交差検証を使用したアンサンブル分類。

すべて展開する

フィッシャーのアヤメのデータについて、交差検証を使用した分類モデルを作成し、kfoldLoss メソッドを使用してその品質を評価します。

フィッシャーのアヤメのデータセットを読み込みます。

load fisheriris

AdaBoostM2 を使用して 100 本のブースティング分類木のアンサンブルに学習をさせます。

t = templateTree('MaxNumSplits',1); % Weak learner template tree object
ens = fitcensemble(meas,species,'Method','AdaBoostM2','Learners',t);

ens から交差検証済みのアンサンブルを作成し、すべての分割で平均した分類誤差を求めます。

rng(10,'twister') % For reproducibility
cvens = crossval(ens);
L = kfoldLoss(cvens)
L = 0.0533

代替方法

最初にアンサンブルを作成することなく、データから直接交差検証を使用したアンサンブルを作成できます。それには、fitcensemble に、これらの 5 つのオプションの 1 つを含めます。それらは、'crossval''kfold''holdout''leaveout' または 'cvpartition' です。

拡張機能