Main Content

crossval

交差検証を使用した決定木

説明

cvmodel = crossval(model) は、当てはめた分類木である model から分割されたモデルを作成します。既定では、crossval は学習データに対して 10 分割の交差検証を使用して cvmodel を作成します。

cvmodel = crossval(model,Name,Value) は、1 つ以上の Name,Value ペア引数で指定される追加オプションを使用して、分割されたモデルを作成します。

すべて折りたたむ

電離層データの分類モデルを作成した後で、交差検証済みモデルを作成します。kfoldLoss を使用してモデルの品質を評価します。

load ionosphere
tree = fitctree(X,Y);
cvmodel = crossval(tree);
L = kfoldLoss(cvmodel)
L = 0.1083

入力引数

すべて折りたたむ

分類モデル。ClassificationTree オブジェクトとして指定します。分類木オブジェクトの作成には関数 fitctree を使用します。

名前と値の引数

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

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

例: cvmodel = crossval(model,'Holdout',0.2)

交差検証分割。'CVPartition' と、関数 cvpartition によって作成された cvpartition オブジェクトから構成されるコンマ区切りのペアとして指定します。crossval は、cvpartition を使用してデータをサブセットに分割します。

次の 4 つのオプション、'CVPartition''Holdout''KFold' または 'Leaveout' のいずれか 1 つだけを使用することができます。

ホールドアウト検証に使用するデータの比率。'Holdout' と範囲 (0,1) のスカラー値から構成されるコンマ区切りのペアとして指定します。

次の 4 つのオプション、'CVPartition''Holdout''KFold' または 'Leaveout' のいずれか 1 つだけを使用することができます。

例: 'Holdout',0.3

データ型: single | double

交差検証済みモデルで使用する分割数。'KFold' と 1 より大きい正の整数値から構成されるコンマ区切りのペアとして指定します。

次の 4 つのオプション、'CVPartition''Holdout''KFold' または 'Leaveout' のいずれか 1 つだけを使用することができます。

例: 'KFold',3

データ型: single | double

Leave-one-out 法の交差検証のフラグ。'Leaveout''on' または 'off' で構成されるコンマ区切りのペアとして指定します。Leave-one-out 法は 'KFold' の特別なケースであり、分割数が観測値の個数と等しくなります。

次の 4 つのオプション、'CVPartition''Holdout''KFold' または 'Leaveout' のいずれか 1 つだけを使用することができます。

例: 'Leaveout','on'

出力引数

すべて折りたたむ

分割されたモデル。ClassificationPartitionedModel オブジェクトとして返されます。

ヒント

"kfold" メソッドおよび kfoldLoss などの cvmodel のプロパティを使用して交差検証されたデータでの model の予測パフォーマンスを評価します。

代替方法

最初に決定木を作成することなく、データから直接交差検証ツリーを作成できます。それには、fitctree に、これらの 5 つのオプションの 1 つを含めます。それらは、'CrossVal''KFold''Holdout''Leaveout' または 'CVPartition' です。

拡張機能

バージョン履歴

R2011a で導入