subset
構文
説明
関数 subset
を使用すると、大規模なアンサンブル データストアから典型的なアンサンブル データ セットを抽出できます。
subset
は、ソースデータが大きすぎて容易には特徴の処理および抽出ができない場合や、診断特徴デザイナーでデータをインポートして実験する場合に使用します。
subset
には、組み合わせることで縮小データ セットを作成できる、以下のオプションが用意されています。
インデックスによる指定 — インデックス ベクトルを指定して、特定のアンサンブル メンバーを抽出します。
クラスまたはアンサンブルのメンバー数による指定 — 各条件クラスまたはアンサンブル全体から選択するメンバーの数を指定します。また、最小クラスまたは最大クラスのサイズに基づいてメンバーの数を指定することもできます。このオプションは、アンサンブルのサイズを縮小するだけでなく、アンサンブル内のクラスのバランスをとり、モデル開発をより効率的にすることができます。
順序による指定 — メンバーを選択する順序を、元のデータの先頭から、またはランダムに指定します。
ホールドアウトによる指定 — 選択されたデータを学習アンサンブルとテスト アンサンブルに分割します。
インデックスによるサブセットの指定
は、sens
= subset(ens
,idx
)idx
のインデックスに対応するアンサンブル メンバーを抽出して、既存のアンサンブル データストア ens
のサブセットから新しいアンサンブル データストア sens
を作成します。
この構文は、特定のアンサンブル メンバーまたはアンサンブル メンバーのグループに対してアンサンブルの操作を実行する際に使用します。たとえば、この構文を使用して次のことが可能です。
特定の故障状態のアンサンブル メンバーのみを抽出する。
特定の特性をもつ単一のアンサンブル メンバーを抽出し、メンバーの動作を分離して調べる。
抽出するメンバーをインデックス ベクトル idx
を使用して指定します。その後、任意のデータ アンサンブルに使用する手法と同じ手法を使用して、抽出されたアンサンブルを操作できます。
クラスによるサブセットの指定
は、各クラスの sens
= subset(ens
,ConditionVariable=cvName
,NumMembers=numMembers
)numMembers
メンバーを含むサブセットを使用します。
は、最大クラスのみのサイズを縮小します。sens
= subset(ens
,ConditionVariable=cvName
,ImbalancedClass="largest",SampleSize=sampleSize
)sampleSize
は、最大クラスの縮小サイズを小数で表される割合またはメンバー数で指定します。この構文は、故障した機器よりも健全な機器を表すデータが多い場合に特に有効です。
は、アンサンブルのサイズを縮小する際に sens
= subset(___,SelectionOrder=selectionOrder
)subset
が保持するメンバーを指定します。この構文は、クラスによるサブセットの指定の構文グループで任意の入力引数を組み合わせて使用できます。
ラベルなしデータのサブセットの指定
は、sens
= subset(ens
,NumMembers=numMembers
)numMembers
メンバーを含むサブセットを抽出します。この構文は、条件値として使用できるラベルやクラスがデータに含まれていない場合や、クラス分布を考慮せずにアンサンブル全体を操作する場合に使用します。
は、アンサンブルのサイズを縮小する際に sens
= subset(ens
,NumMembers=numMembers
,SelectionOrder=selectionOrder
)subset
が保持するメンバーを指定します。
サブセットおよび残りのアンサンブルとインデックスを返す
アンサンブルを学習セットとテスト セットに分割
[
は、ホールドアウト検証用のランダムな分割を trainsub
,trainidx
,testsub
,testidx
] = subset(ens,Holdout=holdout
)holdout
を使用して指定します。これは、関数 cvpartition
を使用して整数または分数で表される割合になります。holdout
が整数の場合、cvpartition
は、テスト セットの観測値 holdout
をランダムに選択します。holdout
が範囲 (0,1) の値の場合、cvpartition
は holdout
*n 個の観測値をランダムに選択します。ここで、n は ens
のメンバー数です。
この構文は、学習セットとインデックスをそれぞれ trainsub
と trainidx
で返し、テスト セットとインデックスを testsub
と testidx
で返します。