resubEdge
R2026bアンサンブル分類モデルの再代入分類エッジ
説明
では、1 つ以上の名前と値の引数を使用して追加オプションを指定します。たとえば、損失の計算に使用する弱学習器のインデックスを指定したり、出力の集約レベルを選択したり、計算を並列に実行したりできます。edge = resubEdge(ens,Name=Value)
例
フィッシャーのアヤメのデータを分類するアンサンブルについて、再代入エッジを求めます。
標本データ セットを読み込みます。
load fisheririsAdaBoostM2 を使用して 100 本のブースティング分類木のアンサンブルに学習をさせます。
t = templateTree(MaxNumSplits=1); % Weak learner template tree object ens = fitcensemble(meas,species,"Method","AdaBoostM2","Learners",t);
再代入エッジを求めます。
edge = resubEdge(ens)
edge = 3.2486
入力引数
アンサンブル分類モデル。fitcensemble で学習させた ClassificationEnsemble または ClassificationBaggedEnsemble モデル オブジェクトとして指定します。
名前と値の引数
オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで、Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。
R2021a より前では、コンマを使用して名前と値をそれぞれ区切り、、Name を引用符で囲みます。
例: resubEdge(ens,Learners=[1 2 3 5],UseParallel="auto") は、アンサンブル内の 1 番目、2 番目、3 番目、および 5 番目の学習器を resubEdge で使用し、計算を並列に実行するように指定します。
resubEdge で使用するアンサンブル内の弱学習器のインデックス。範囲 [1:ens.NumTrained] の正の整数のベクトルとして指定します。既定では、この関数はすべての学習器を使用します。
例: Learners=[1 2 4]
データ型: single | double
出力の集約レベル。"ensemble"、"individual"、または "cumulative" として指定します。
| 値 | 説明 |
|---|---|
"ensemble" | 出力は、アンサンブル全体に対するスカラー値になります。 |
"individual" | 出力は、学習させた学習器ごとに 1 つの要素をもつベクトルになります。 |
"cumulative" | 出力は、学習器の入力リストから学習器 1:J を使用して要素 J が取得されたベクトルになります。 |
例: Mode="individual"
データ型: char | string
ワーカーの並列プールを使用して計算を並列実行するためのオプション。次のいずれかの値を指定します。
"off"— MATLAB® クライアントで逐次実行します。"auto"— 並列プールが開いている場合、または MATLAB が並列プールを自動的に作成できる場合は、その並列プールを使用します。並列プールが利用できない場合は、MATLAB クライアントでシリアル実行します。"on"— 並列プールが開いている場合、または MATLAB が並列プールを自動的に作成できる場合は、その並列プールを使用します。並列プールが利用できない場合は、エラーをスローします。
並列プールが開いておらず、自動プール作成が有効になっている場合、MATLAB は既定のクラスター プロファイルを使用して並列プールを開きます。MATLAB で並列プールを使用して計算を実行するには、Parallel Computing Toolbox™ が必要です。詳細については、自動並列サポートを使用した MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
R2026b より前: 並列実行するには、UseParallel を true に設定します。
例: UseParallel="auto"
データ型: char | string
詳細
"分類エッジ" は、分類マージンの加重平均値です。重みは ens.Prior のクラス確率です。
分類 "マージン" は、真のクラスの分類 "スコア" と偽のクラスの最大分類スコアの差です。マージンは、行列 ens.X と同じ行数をもつ列ベクトルです。
アンサンブルの場合、分類スコアは分類の信頼度をクラスで表したものです。スコアが高いほど、信頼度も高くなります。
アンサンブル アルゴリズムが異なれば、スコアの定義も違ってきます。さらに、スコアの範囲はアンサンブル タイプによって異なります。以下に例を示します。
AdaBoostM1スコアの範囲は –∞ ~ ∞ です。Bagスコアの範囲は0~1です。
拡張機能
resubEdge 関数は自動並列サポートに対応しています。計算を並列実行するには、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") による分類エッジ、損失、マージン、および予測の計算でその一部として使用されます。
以前のリリースでは、予測子に欠損値がある観測値は再代入と交差検証の計算で省略されていました。
入力モデル オブジェクトに学習させるときに既定以外のコスト行列を指定すると、関数 resubEdge で以前のリリースとは異なる値が返されます。
関数 resubEdge は、W プロパティに格納された観測値の重みを使用します。W プロパティの値を関数で使用する方法については変更されていません。ただし、既定以外のコスト行列をもつモデルについて入力モデル オブジェクトに格納されるプロパティの値が変更されたため、関数から異なる値が返されることがあります。
プロパティの値の変更に関する詳細については、Cost プロパティにユーザー指定のコスト行列を格納を参照してください。
ソフトウェアでコスト行列、事前確率、および観測値の重みを以前のリリースと同じように扱う場合は、誤分類コスト行列に応じた事前確率と観測値の重みの調整の説明に従って、既定以外のコスト行列の事前確率と観測値の重みを調整します。その後、分類モデルに学習させるときに、調整後の事前確率と観測値の重みを名前と値の引数 Prior と Weights を使用して指定し、既定のコスト行列を使用します。
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)