このページ最新ではありませ。をクリックし,英语のの最新版版を参照参照し。
顺序F
カスタム基準を使用した逐次特徴選択
构文
inModel = sequentialfs(fun,x,y)
inModel = sequentialfs(fun,x,y,z,...)
[inmodel,history] = sequentialfs(fun,X,...)
[] = sequentialfs(...,,,param1
,,,,val1
,,,,param2
,,,,val2
,...))
说明
inModel = sequentialfs(fun,x,y)
は,データ行列X
から特徴サブセット选択し。,予测改善が见られなくなるまで连続连続してて选択选択选択y
のデータ最大限予测。。X
の行値にし,列変数特徴量に対応します。y
はX
の各値応答の列ベクトルクラスラベルです。X
とy
の行数同じでなけれなりません。fun
は,と停止时期决定使用されるを定义するする关数へへの关数关数ハンドル出力一世nmodel
は最終的に選択された特徴量を示す logical ベクトルです。
顺序F
,空セットから开始して,まだ选択され特徴特徴特徴特徴特徴をををををををつずつつずつつずつつずつつずつつずつ的にに追加追加してて候补候补特徴のサブセットを顺序F
はfun
を繰り返し呼び出し 10 分割交差検証を実行します。この呼び出しでは、X
とy
の异なるサブセット(Xtrain
とytrain
),およびX
とy
の検定セット(XTEST
とytest
)を次よう使用します。
标准= fun(XTRAIN,ytrain,XTEST,ytest)
Xtrain
とytrain
にはX
とy
の行同じサブが含まれ,XTEST
とytest
にはのサブセット含まれます。Xtrain
とXTEST
には现在候补特徴セットにするするX
の列から受け取ったデータが含まれます。
fun
は呼び出さごとに,値値标准
を必ず返します通常,fun
ではXtrain
とytrain
を使用モデル学习またはあてはめをそのモデルを使用ててXTEST
の値をし,ytest
からのの値何らかのの尺度,つまり"損失"を返し与えられ候补特徴セット交差计算计算はは,顺序F
はfun
からの戻り値を総和し、それをテスト観測総数で割ります。そしてこの平均値を使用して、候補特徴サブセットのそれぞれを評価します。
一般的定値には,回帰の二乘误差の(このこの,,顺序F
は平均计算计算计算,,分类のさた観测総数(このこの,,顺序F
は誤分類率を計算) が含まれます。
メモ
顺序F
はfun
がすべてセットについてたの総和,テスト観测総数で割り割ります。。,,,fun
はその値の観测総数でべきではありません。
候補特徴サブセットのそれぞれについて平均の标准
値をした后,顺序F
は平均最小する候补特徴サブサブ选択し。このこのプロセスはは,,特徴特徴特徴量量追加追加しててもももそれそれそれ以上以上规准値
inModel = sequentialfs(fun,x,y,z,...)
は那X
那y
那Z.
,...など,のに制限ませ。。。顺序F
はX
那y
那Z.
などに特別の解釈をせず、X
の列特徴を选択ますますのも行列行列の场合もも,すべてのデータ入力入力はは同じ同じ同じ行数顺序F
は那X
那y
那Z.
,...の学习とテストを使用て次のにfun
を呼び出します。
标准=娱乐(Xtrain,Ytrain,Ztrain,...,Xtest,Ytest,Ztest,...)
顺序F
は那Xtrain
那yTRAIN
那Z.TRAIN
,...,XTEST
那ytest
那ztest
などをします,そのためにX
那y
那Z.
などのサブセット选択ます。。。fun
はスカラー値标准
を返さませんが,値计算はようなな方法でで行っ行ってもももかまいかまいかまいかまいませ一世nmodel
の要素はX
の列し最终的に选択た特徴量を示し。
[inmodel,history] = sequentialfs(fun,X,...)
は,において选択れた特徴关するををますます。history
はスカラー構造体で、次のフィールドがあります。
Crit
-各ステップにおいて計算される規準値を含むベクトル。在
- ステップ一世
で选択れた量を,行一世
にもつ逻辑行列。
[] = sequentialfs(...,,,
は,表にオプションパラメーターのとのペアを指定します。param1
,,,,val1
,,,,param2
,,,,val2
,...))
パラメーター | 値 |
---|---|
'简历' |
特徴サブ各候补に対するを计算するにするする方法方法。
既定値は いわゆる“ラッパー”では那学習アルゴリズムを実装する関数 |
'McReps' |
交差検証用のモンテカルロ反復回数を示す正の整数。既定値は |
'direction' |
连続探索方向。既定はは |
'keepin' |
逻辑ベクトルベクトルベクトルまたは番号番号のベクトル。。既定値はは。。。。 |
'keepout' |
逻辑ベクトルベクトルベクトルまたは列列番号のベクトルベクトル。既定値既定値はは。。。 |
“ nfeatures' |
|
'nullmodel' |
ヌルモデル( |
'options' |
平行计算工具箱™がががががががが必要です。。。。 |
例
ノイズのある特徴量を分類するために逐次特徴選択を実行します。
负载fisheriris rng reproducibili(“违约”)%ty X = randn(150,10); X(:,[1 3 5 7])= meas; y = species; c = cvpartition(y,'k',10); opts = statset('Display','iter'); fun = @(XT,yT,Xt,yt)loss(fitcecoc(XT,yT),Xt,yt); [fs,history] = sequentialfs(fun,X,y,'cv',c,'options',opts) Start forward sequential feature selection: Initial columns included: none Columns that can not be included: none Step 1, added column 5, criterion value 0.00266667 Step 2, added column 7, criterion value 0.00222222 Step 3, added column 1, criterion value 0.00177778 Step 4, added column 3, criterion value 0.000888889 Final columns included: 1 3 5 7 fs = 1×10 logical array 1 0 1 0 1 0 1 0 0 0 history = struct with fields: In: [4×10 logical] Crit: [0.0027 0.0022 0.0018 8.8889e-04] history.In ans = 4×10 logical array 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 1 0 1 0 1 0 0 0