resubPredict
R2026b再代入によるアンサンブル分類の観測値の分類
構文
説明
では、1 つ以上の名前と値の引数を使用して追加オプションを指定します。たとえば、損失の計算に使用する弱学習器のインデックスや計算を並列に実行するかどうかを指定できます。label = resubPredict(ens,Name=Value)
例
アンサンブル分類について、fisheriris データの誤分類の総数を調べます。
フィッシャーのアヤメのデータ セットを読み込みます。
load fisheririsAdaBoostM2 を使用して 100 本のブースティング分類木のアンサンブルに学習をさせます。
t = templateTree(MaxNumSplits=1); % Weak learner template tree object ens = fitcensemble(meas,species,"Method","AdaBoostM2","Learners",t);
誤分類の総数を求めます。
Ypredict = resubPredict(ens); % The predictions Ysame = strcmp(Ypredict,species); % True when Ypredict and species are equal sum(~Ysame) % Number of different predictions
ans = 5
入力引数
アンサンブル分類モデル。fitcensemble で学習させた ClassificationEnsemble または ClassificationBaggedEnsemble モデル オブジェクトとして指定します。
名前と値の引数
オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで、Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。
R2021a より前では、コンマを使用して名前と値をそれぞれ区切り、、Name を引用符で囲みます。
例: resubPredict(ens,Learners=[1 2 3 5],UseParallel="auto") は、アンサンブル内の 1 番目、2 番目、3 番目、および 5 番目の学習器を resubPredict で使用し、計算を並列に実行するように指定します。
resubPredict で使用するアンサンブル内の弱学習器のインデックス。範囲 [1:ens.NumTrained] の正の整数のベクトルとして指定します。既定では、この関数はすべての学習器を使用します。
例: Learners=[1 2 4]
データ型: single | double
ワーカーの並列プールを使用して計算を並列実行するためのオプション。次のいずれかの値を指定します。
"off"— MATLAB® クライアントで逐次実行します。"auto"— 並列プールが開いている場合、または MATLAB が並列プールを自動的に作成できる場合は、その並列プールを使用します。並列プールが利用できない場合は、MATLAB クライアントでシリアル実行します。"on"— 並列プールが開いている場合、または MATLAB が並列プールを自動的に作成できる場合は、その並列プールを使用します。並列プールが利用できない場合は、エラーをスローします。
並列プールが開いておらず、自動プール作成が有効になっている場合、MATLAB は既定のクラスター プロファイルを使用して並列プールを開きます。MATLAB で並列プールを使用して計算を実行するには、Parallel Computing Toolbox™ が必要です。詳細については、自動並列サポートを使用した MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
R2026b より前: 並列実行するには、UseParallel を true に設定します。
例: UseParallel="auto"
データ型: char | string
出力引数
詳細
アンサンブルの場合、分類スコアは分類の信頼度をクラスで表したものです。スコアが高いほど、信頼度も高くなります。
アンサンブル アルゴリズムが異なれば、スコアの定義も違ってきます。さらに、スコアの範囲はアンサンブル タイプによって異なります。以下に例を示します。
AdaBoostM1スコアの範囲は –∞ ~ ∞ です。Bagスコアの範囲は0~1です。
拡張機能
resubPredict 関数は自動並列サポートに対応しています。計算を並列実行するには、UseParallel 引数を "on" または "auto" に設定します。
詳細については、自動並列サポートを使用した MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
UseParallel は GPU 配列では使用できません。
使用上の注意および制限:
UseParallelは GPU 配列では使用できません。
詳細については、GPU での MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
バージョン履歴
R2011a で導入UseParallel の名前と値の引数では、従来の true または false の代わりに、"off"、"auto"、または "on" を指定できるようになりました。この変更により、並列実行で並列プールを使用するタイミングをより細かく制御できます。UseParallel の名前と値の引数を true または false として指定することは非推奨です。
目的に応じてコードを更新する方法を次の表に示します。
| 目的 | 非推奨 | 推奨 |
|---|---|---|
MATLAB クライアントで実行されるコードを作成する。 | UseParallel=false | UseParallel="off" |
| 並列プール上で実行され、並列プールが利用できない場合は MATLAB クライアントで実行される、移植可能なコードを作成する。 | UseParallel=true | UseParallel="auto" |
| 並列プール上で実行され、並列プールが利用できない場合はエラーを返すコードを作成する。 | 該当なし | UseParallel="on" |
true 値、および false 値のサポートを削除する予定はありません。
R2023b 以降では、次の分類モデルのオブジェクト関数において、予測子に欠損値がある観測値が再代入 ("resub") と交差検証 ("kfold") による分類エッジ、損失、マージン、および予測の計算でその一部として使用されます。
以前のリリースでは、予測子に欠損値がある観測値は再代入と交差検証の計算で省略されていました。
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)