このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
カスタム基準を使用した逐次特徴選択
inmodel=顺序FS(有趣,X,y)
inmodel=顺序FS(有趣,X,Y,Z,…)
[inmodel,history]=顺序FS(fun,X,…)
[]=顺序FS(。。。,参数1
,瓦尔1
,参数2
,瓦尔2
,...)
inmodel=顺序FS(有趣,X,y)
は、データ行列X
から特徴的なサブセットを選択します。そして、予測に改善が見られなくなるまで連続して特徴を選択し、Y
のデータを最大限予測します。X
の行は観測値に対応し、列は変数または特徴量に対応します。Y
はX
の各観測値に対する応答値の列ベクトルまたはクラス ラベルです。X
とY
の行数は同じでなければなりません。享乐
は、特徴量の選択と停止時期の決定に使用される規準を定義する関数への関数ハンドルです。出力inmodel
は最終的に選択された特徴量を示す 必然的ベクトルです。
顺序
は、空の特徴セットから開始して、まだ選択されていない特徴を 1.つずつ連続的に追加して候補特徴のサブセットを作成します。候補特徴のサブセットのそれぞれについて、顺序
は享乐
を繰り返し呼び出し 10分割交差検証を実行します。この呼び出しでは、X
とY
の異なる学習 サブセット (XTRAIN
と钇
)、およびX
とY
の検定サブセット (克斯特
と伊泰斯特
) を次のように使用します。
标准=乐趣(XTRAIN、ytrain、XTEST、ytest)
XTRAIN
と钇
にはX
とY
の行の同じサブセットが含まれ、克斯特
と伊泰斯特
には行の相補サブセットが含まれます。XTRAIN
と克斯特
には、現在の候補特徴セットに対応するX
の列から受け取ったデータが含まれます。
享乐
は呼び出されるごとに、スカラー値标准
を必ず返します。通常、享乐
ではXTRAIN
と钇
を使用してモデルの学習またはあてはめを行い、そのモデルを使用して克斯特
の値を予測し、伊泰斯特
からのそれらの予測値の何らかの距離の尺度、つまり"損失"を返します。与えられた候補特徴セットに対する交差検証計算では、顺序
は享乐
からの戻り値を総和し、それをテスト観測総数で割ります。そしてこの平均値を使用して、候補特徴サブセットのそれぞれを評価します。
一般的な損失測定値には、回帰モデルの二乗誤差の総和 (この場合、顺序
は平均二乗誤差を計算)、および分類モデルの誤分類された観測総数 (この場合、顺序
は誤分類率を計算) が含まれます。
メモ
顺序
は享乐
がすべての検定セットについて返した値の総和を、テストの観測総数で割ります。したがって、享乐
はその出力値をテストの観測総数で割る必要はありません。
候補特徴サブセットのそれぞれについて平均の标准
値を計算した後、顺序
は平均規準値を最小にする候補特徴サブセットを選択します。このプロセスは、特徴量を追加してもそれ以上規準値が減少しなくなるまで続けられます。
inmodel=顺序FS(有趣,X,Y,Z,…)
は、X
、Y
、Z
, ...など、入力変数の数に制限はありません。.顺序
はX
、Y
、Z
などに特別の解釈をせず、X
の列にある特徴だけを選択します。列ベクトルの場合も行列の場合も、すべてのデータ入力は同じ行数でなければなりません。顺序
は、X
、Y
、Z
, ... の学習サブセットとテスト サブセットを使用して次のように享乐
を呼び出します。
标准=乐趣(XTRAIN,YTRAIN,ZTRAIN,…,XTEST,YTEST,ZTEST,…)
顺序
は、XTRAIN
、钇
、ZTRAIN
、...,克斯特
、伊泰斯特
、ZTEST
などを作成しますが、そのためにX
、Y
、Z
などの行のサブセットを選択します。.享乐
はスカラー値标准
を返さなければなりませんが、その値の計算はどのような方法で行ってもかまいません。必然的ベクトルinmodel
の要素はX
の列に対応し、最終的に選択された特徴量を示します。
[inmodel,history]=顺序FS(fun,X,…)
は、各ステップにおいて選択された特徴に関する情報を返します。历史
はスカラー構造体で、次のフィールドがあります。
暴击
— 各ステップにおいて計算される規準値を含むベクトル。
在里面
— ステップ我
で選択された特徴量を、行我
にもつ 必然的行列。
[]=顺序FS(。。。,
は、次の表に示すオプション パラメーターの名前と値のペアを指定します。参数1
,瓦尔1
,参数2
,瓦尔2
,...)
パラメーター | 値 |
---|---|
“cv” |
特徴サブセットの各候補に対する規準を計算するために使用する検定方法。
既定値は いわゆる"ラッパー法"では、学習アルゴリズムを実装する関数 |
“麦克雷普斯” |
交差検証用のモンテカルロ反復回数を示す正の整数。既定値は |
“方向” |
連続探索の方向。既定の設定は |
“keepin” |
含まれなければならない特徴量を指定する 必然的ベクトル、または列番号のベクトル。既定値は空です。 |
“禁止” |
除外されなければならない特徴量を指定する 必然的ベクトル、または列番号のベクトル。既定値は空です。 |
“nfeatures” |
|
“零模式” |
ヌル モデル ( |
“选项” |
並列計算を行うには、并行计算工具箱™ が必要です。 |
ノイズのある特徴量を分類するために逐次特徴選択を実行します。
加载Fisherris rng(“默认值”)%以获得再现性X=randn(150,10);X(:,[1 3 5 7])=MEA;y=物种;c=Cv(y,'k',10);opts=statset('Display','iter');fun=@(XT,yT,XT,yT)损失(fitcecoc(XT,yT),XT,yT);[fs,history]=sequentialfs(fun,X,y,'cv',c,'options',opts)开始前向顺序特征选择:包含初始列:无不能包含的列:无步骤1,添加列5,标准值0.002667步骤2,添加列7,标准值0.0022222步骤3,添加列1,标准值0.00177778步骤4,添加列3,标准值0.000888889包含的最终列:1 3 5 7 fs=1×10逻辑数组1 0 1 0 0 0 0 0历史=带字段的结构:In:[4×10逻辑]标准:[0.0027 0.0022 0.0018 8.8889e-04]历史。In ans=4×10逻辑数组0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0