ドキュメンテーション

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

resubPredict

クラス: ClassificationNaiveBayes

単純ベイズ分類器の再代入ラベルを予測

説明

label = resubPredict(Mdl) は、予測子データ Mdl.X を使用して、学習させた単純ベイズ分類器 Mdl の予測クラス ラベルのベクトル (label) を返します。

[label,Posterior,Cost] = predict(Mdl) はさらに、事後確率(Posterior) と Mdl.X 観測値 (行) に対応する予測 (推定)誤分類コスト(Cost) を返します。

入力引数

すべて展開する

完全な学習済み単純ベイズ分類器。fitcnb で学習させた ClassificationNaiveBayes モデルとして指定します。

出力引数

すべて展開する

予測クラス ラベル。categorical ベクトル、文字配列、logical ベクトル、数値ベクトル、または文字ベクトルの cell 配列として返されます。

label:

  • Mdl に学習させた、観測されたクラス ラベル (Y) と同じデータ型です。(string 配列は文字ベクトルの cell 配列として扱われます)。

  • 長さは X の行数と同じです。

  • 推定誤分類コスト (Cost) が最低になるクラスです。

数値行列として返されるクラス事後確率Posterior は、Mdl.X の行数に等しい行と、学習データ (size(Mdl.ClassNames,1)) の個々のクラスの数に等しい列をもちます。

Posterior(j,k) は、Mdl.X の行 j の観測が与えられたクラス k (たとえばクラス Mdl.ClassNames(k)) の予測事後確率です。

データ型: double

数値行列として返される予測誤分類コストCost は、Mdl.X の行数に等しい行と、学習データ (size(Mdl.ClassNames,1)) の個々のクラスの数に等しい列をもちます。

Cost(j,k) はクラス k 内 (たとえばクラス Mdl.ClassNames(k)) で予測されるMdl.X の行 j の観測値の予測誤分類コストです。

すべて展開する

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

load fisheriris
X = meas;    % Predictors
Y = species; % Response

単純ベイズ分類器を学習させます。クラスの順序を指定することをお勧めします。ラベルが与えられる場合、各予測子は条件付きで正規分布すると仮定します。

Mdl = fitcnb(X,Y,...
    'ClassNames',{'setosa','versicolor','virginica'});

MdlClassificationNaiveBayes 分類器です。

学習標本のラベルを予測します。10 件の観測値の結果を表示します。

label = resubPredict(Mdl);
rng(1); % For reproducibility
idx = randsample(size(X,1),10);
table(Y(idx),label(idx),'VariableNames',...
    {'TrueLabel','PredictedLabel'})
ans=10×2 table
     TrueLabel      PredictedLabel
    ____________    ______________

    'setosa'         'setosa'     
    'versicolor'     'versicolor' 
    'virginica'      'virginica'  
    'setosa'         'setosa'     
    'versicolor'     'versicolor' 
    'setosa'         'setosa'     
    'versicolor'     'versicolor' 
    'versicolor'     'versicolor' 
    'setosa'         'setosa'     
    'setosa'         'setosa'     

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

load fisheriris
X = meas;    % Predictors
Y = species; % Response

単純ベイズ分類器を学習させます。クラスの順序を指定することをお勧めします。ラベルが与えられる場合、各予測子は条件付きで正規分布すると仮定します。

Mdl = fitcnb(X,Y,...
    'ClassNames',{'setosa','versicolor','virginica'});

MdlClassificationNaiveBayes 分類器です。

事後確率と学習データの予測誤分類コストを推定します。10 件の観測値の結果を表示します。

[label,Posterior,MisclassCost] = resubPredict(Mdl);
rng(1); % For reproducibility
idx = randsample(size(X,1),10);
Mdl.ClassNames
ans = 3x1 cell array
    {'setosa'    }
    {'versicolor'}
    {'virginica' }

table(Y(idx),label(idx),Posterior(idx,:),'VariableNames',...
    {'TrueLabel','PredictedLabel','PosteriorProbability'})
ans=10×3 table
     TrueLabel      PredictedLabel              PosteriorProbability           
    ____________    ______________    _________________________________________

    'setosa'         'setosa'                   1     3.8821e-16     5.5878e-24
    'versicolor'     'versicolor'      1.2516e-54              1     4.5001e-06
    'virginica'      'virginica'      5.5646e-188     0.00058232        0.99942
    'setosa'         'setosa'                   1     4.5352e-20     3.1301e-27
    'versicolor'     'versicolor'      5.0002e-69        0.99989     0.00010716
    'setosa'         'setosa'                   1     2.9813e-18     2.1524e-25
    'versicolor'     'versicolor'      4.6313e-60        0.99999     7.5413e-06
    'versicolor'     'versicolor'     7.9205e-100        0.94293       0.057072
    'setosa'         'setosa'                   1      1.799e-19     6.0606e-27
    'setosa'         'setosa'                   1     1.5426e-17     1.2744e-24

MisclassCost(idx,:)
ans = 10×3

    0.0000    1.0000    1.0000
    1.0000    0.0000    1.0000
    1.0000    0.9994    0.0006
    0.0000    1.0000    1.0000
    1.0000    0.0001    0.9999
    0.0000    1.0000    1.0000
    1.0000    0.0000    1.0000
    1.0000    0.0571    0.9429
    0.0000    1.0000    1.0000
    0.0000    1.0000    1.0000

PosteriorMisclassCost の列の順序は Mdl.ClassNames 内のクラスの順序に一致します。

詳細

すべて展開する

参照

[1] Hastie, T., R. Tibshirani, and J. Friedman. The Elements of Statistical Learning, Second Edition. NY: Springer, 2008.