主要内容

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

アンサンブル品質テスト

アンサンブルの予測品質を学習データでの性能に基づいて評価することはできません。アンサンブルには”過学習”の傾向があり,予測力の推定が過度に楽観的になります。つまり,分類の場合のresubLoss(回帰の場合はresubLoss)の結果では通常,新しいデータの場合より誤差が小さくなります。

アンサンブル品質をより正確に把握できるようにするには,次のいずれかの方式を使用します。

  • 独立した検定セットでアンサンブルを評価します(十分な学習データがあるときに適しています)。

  • 交差検証によってアンサンブルを評価します(十分な学習データがないときに適しています)。

  • out-of-bagデータでアンサンブルを評価します(バギングアンサンブルをfitcensembleまたはfitrensembleで作成する場合に適しています)。

この例では,アンサンブル品質を評価する3つの方式をすべて使用できるように,バギングアンサンブルを使用します。

20の予測子を指定して人為的なデータセットを生成します。各エントリは0 ~ 1の乱数です。初期分類は, X 1 + X 2 + X 3. + X 4 + X 5 > 2 5 の場合は Y 1 ,それ以外の場合は Y 0 です。

rng (1,“旋风”%的再现性X =兰特(2000年,20);Y = sum(X(:,1:5),2) > 2.5;

さらに,結果にノイズを追加するため,分類の10%をランダムに入れ替えます。

idx = randsample(2000、200);(idx) = ~ Y (idx);

独立した検定セット

独立した学習セットと検定セットのデータを作成します。坚持オプションを使用してcvpartitionを呼び出すことにより,データの70%を学習セットに使用します。

cvpart = cvpartition (Y,“坚持”, 0.3);Xtrain = X(培训(cvpart):);Ytrain = Y(培训(cvpart):);Xtest = X(测试(cvpart):);欧美= Y(测试(cvpart):);

学習データから200本の木によるバギング分類アンサンブルを作成します。

t = templateTree (“复制”,真正的);%用于随机预测器选择的重现性袋= fitcensemble (Xtrain Ytrain,“方法”“包”“NumLearningCycles”, 200,“学习者”, t)
包= ClassificationBaggedEnsemble ResponseName: 'Y' CategoricalPredictors: [] ClassNames: [0 1] ScoreTransform: 'none' NumObservations: 1400 NumTrained: 200 Method: ' bag ' LearnerNames: {'Tree'} ReasonForTermination: '在完成请求的训练周期数后正常终止。'userobsforlearner: [1400x200 logical]属性,方法

検定データの損失(誤分類)をアンサンブルに含まれている学習済みの木の本数の関数としてプロットします。

图绘制(损失(包,Xtest,欧美,“模式”“累积”)包含(树木的数量) ylabel (“测试分类错误”

图中包含一个坐标轴。轴包含一个线型对象。

交差検証

5分割交差検証された,バギングアンサンブルを生成します。

简历= fitcensemble (X, Y,“方法”“包”“NumLearningCycles”, 200,“Kfold”5,“学习者”, t)
cv = ClassificationPartitionedEnsemble CrossValidatedModel: 'Bag' PredictorNames: {1x20 cell} ResponseName: 'Y' NumObservations: 2000 KFold: 5 Partition: [1x1 cvpartition] NumTrainedPerFold: [200 200 200 200 200] ClassNames: [0 1] ScoreTransform: 'none'属性,方法

交差検証損失をアンサンブル内の木の本数の関数として調べます。

图绘制(损失(包,Xtest,欧美,“模式”“累积”)举行情节(kfoldLoss(简历,“模式”“累积”),“r”。)举行包含(树木的数量) ylabel (分类错误的)传说(“测试”交叉验证的“位置”“不”

图中包含一个坐标轴。轴线包含2个线型对象。这些对象表示测试、交叉验证。

交差検証により,独立集合の場合と同等の推定値が得られます。

out-of-bag推定

out-of-bag推定の損失曲線を生成し,他の曲線と共にプロットします。

图绘制(损失(包,Xtest,欧美,“模式”“累积”)举行情节(kfoldLoss(简历,“模式”“累积”),“r”。)情节(oobLoss(包,“模式”“累积”),“k——”)举行包含(树木的数量) ylabel (分类错误的)传说(“测试”交叉验证的的包的“位置”“不”

图中包含一个坐标轴。轴线包含3个线型对象。这些对象代表Test, Cross-validation, Out of bag。

out-of-bag推定でも,他の手法と同等の結果が示されています。

参考

|||||||

関連するトピック