Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

kfoldedge

学習で使用しない観測値の分類エッジ

说明

e= kfoldedge(CVMdlは,検证のバイナリ线形モデルモデルCVMdlによって取得した交差検証済みの分类エッジを返します。つまり、他のすべての観測値を使用して学習させるときにホールドアウトした観測値の分類エッジを、kfoldedgeはすべて分割について推定。。

eには、CVMdlから构成线形分类の各正则化に対するエッジが格纳されます。

e= kfoldedge(CVMdl,,,,名称,价值は、1 つ以上の名称,价值引数の指定れ追加をしますたとえば,エッジの计算计算に使用するする分割を指定指定

入力引数

すべて展開する

交差検证バイナリ线形。。分类区モデルオブジェクトとして指定します。分类区モデルオブジェクト作成するに,,F一世tclinearを使用し、交差検証用の名前と値のペアの引数のいずれか 1 つ (杂交など)を指定ます。

推定値取得ため,,,,ははモデルの検证にに使用したものものとと(Xおよびy)を适用し。

名前と値引数

オプションの名称,价值引数の区ペアを指定し。。Nameは引数名,价值は対応するです。Nameは引用でなければなりませ。。Name1,Value1,...,NameN,ValueNのに复数名前とのペア引数を任意の顺番で指定指定ます。。。

分类スコア予测にする分割のインデックス。“折叠”と正の整数の数値ベクトルから構成されるコンマ区切りのペアとして指定します。の要素は1からCVMdl.KFoldの範囲でなければなりません。

例:“折叠”,,,,[1 4 10]

データ型:single|double

エッジの集約レベル。'模式''平均'または'个人'から构成コンマ区のペアとしてし。。。

说明
'平均' 分割全体平均し分类エッジを返す
'个人' 各分割分类エッジを返す

例:“模式”,“个人”

出力引数

すべて展開する

交差検证済みの分类エッジ。数値スカラー、ベクトルまたは行列として返されます。

交差検证モデル正则化强度のををl(つまり,lはnumel(cvmdl.Training {1} .lambda)),(CVMdl.KFoldに格纳)をFとします。

  • 模式'平均'の場合、eは1行l列のになります。e(jは、正則化強度jを使用検证済みのすべてのに対する分类分类エッジです。

  • それ以外の,eFl列の行列になります。e(一世,,,,jは、正則化強度jを使用交差検证済み分割分割一世に対する分類エッジです。

kfoldedgeeを推定するため、CVMdlを作成したデータを使用します (Xyを参照)。

すべて展開する

NLP のデータセットを読み込みます。

加载NLPDATA

Xは予测子のスパース行列,y分类ベクトルベクトルです。データデータはははつつをクラスがが。。。

モデルでは,あるWebページの単語数が统计和机器学习一世ng Toolbox™ ドキュメンテーションによるものであるかどうかを識別できなければなりません。したがって、Statistics and Machine Learning Toolbox™ のドキュメンテーション Web ページに対応するラベルを識別します。

ystats = Y =='stats';

web webページの数ががががががががが数単语ドキュメンテーションドキュメンテーションものであるかかか识别できるバイナリ线形分类分类モデルモデルのの交差交差

rng(1);% For reproducibilityCVMdl = fitclinear(X,Ystats,“横瓦尔”,,,,'上');

CVMdl分类区10分割,,,,分割分割が実行され。。'KFold'名前とペア引数を使用し数を変更でき。。

分割外エッジ平均を推定し。。

e= kfoldedge(CVMdl)
e=8。1243

あるいは,kfoldedge内のと値の引数引数“模式”,“个人”を指定こと各分割を取得できます。

特徴選択を実行する方法の 1 つは、複数のモデルのk分割エッジするです。条件にとエッジがが最高となる分类分类器がが最善の分类分类器器

NLP のデータセットを読み込みます。k分割交検证の推定で说明れいるにデータを处理します。

加载NLPDATAystats = Y =='stats';x = x';

2つのセット作成し。。

  • FullXにはの予测子含まれます。

  • Partx1/2がのののににに选択しがが含まれます。

rng(1);% For reproducibilityp = size(X,1);% Number of predictorsHalfPredIdx = randsample(p,ceil(0.5*p));fullx = x;partx = x(halfpredidx,:);

2つのバイナリ線形分類モデルを交差検証します。1 つではすべての予測子を、もう 1 つでは半分の予測子を使用します。観測値が列に対応することを指定し、SpaRSA を使用して目的関数を最適化します。

cvmdl = fitclinear(fullx,ystats,“横瓦尔”,,,,'上',,,,“求解器”,,,,'sparsa',,,,。。。'ObservationsIn',,,,'列');pcvmdl = fitclinear(partx,ystats,“横瓦尔”,,,,'上',,,,“求解器”,,,,'sparsa',,,,。。。'ObservationsIn',,,,'列');

CVMdlおよびPCVMDL分类区モデルです。

各分类器についてk分割エッジ推定します。

FullEdge = kfoldEdge(CVMdl)
FullEdge = 16.5629
partEdge = kfoldedge(PCVMDL)
partEdge = 13.9030

k分割エッジすべて予测子をする分类の方モデルとして优れています。

lassoペナルティたたたペナルティペナルティペナルティペナルティペナルティ强度强度决定,,,,,,,,

NLP のデータセットを読み込みます。k分割交検证の推定で说明れいるにデータを处理します。

加载NLPDATAystats = Y =='stats';x = x';

1 0 - 8 1 0 1 の範囲で対数間隔で配置された 11 個の正則化強度を作成します。

lambda = logspace(-8,1,11);

5分割のと正则化强度をして,形分类モデルモデルををを交差交差交差交差検证検证ますますますますますますますますををををををてて1e-8に下げます。

rng(10);% For reproducibilityCVMdl = fitclinear(X,Ystats,'ObservationsIn',,,,'列',,,,'KFold',,,,5,。。。'学习者',,,,“逻辑”,,,,“求解器”,,,,'sparsa',,,,“正则化”,,,,'套索',,,,。。。'lambda',lambda,'GradientTolerance',1E-8)
CVMdl = ClassificationPartitionedLinear CrossValidatedModel: 'Linear' ResponseName: 'Y' NumObservations: 31572 KFold: 5 Partition: [1x1 cvpartition] ClassNames: [0 1] ScoreTransform: 'none' Properties, Methods

CVMdl分类区モデルです。F一世tclinearは5 分割の交差検証を実装するので、各分割について学習させる 5 つの分类线モデルがCVMdlに格纳さます。

各分割正则强度のを推定します。

efolds = kfoldedge(cvmdl,'模式',,,,'个人'
efolds =5×110.9958 0.9958 0.9958 0.9958 0.9958 0.9924 0.9770 0.9178 0.8452 0.8127 0.8127 0.9991 0.9991 0.9991 0.9991 0.9991 0.9938 0.9780 0.9201 0.8262 0.8128 0.8128 0.9992 0.9992 0.9992 0.9992 0.9992 0.9942 0.9781 0.9135 0.8253 0.8128 0.8128 0.9974 0.9974 0.9974 0.9974 0.9974 0.9931 0.9773 0.9121 0.8410 0.8130 0.8130 0.9976 0.9976 0.9976 0.9976 0.9976 0.99420.9782 0.9157 0.8368 0.8127 0.8127

e折5行11列列の行列です。はにに,はは兰姆达の正则强度に対応。。e折を使用して、性能が低い分割、つまり非常に低いエッジを特定します。

各正について,の分割に対するエッジ推定推定ますます。

e= kfoldedge(CVMdl)
e=1×110。9978 0.9978 0.9978 0.9978 0.9978 0.9936 0.9777 0.9158 0.8349 0.8128 0.8128

各正則化強度について 5 分割エッジの平均をプロットすることにより、モデルがどの程度一般化を行うかを判断します。グリッド全体で 5 分割エッジを最大化する正則化強度を特定します。

数字;图(log10(lambda),log10(e),'-o')[〜,maxeidx] = max(e);maxlambda = lambda(maxeidx);抓住图(log10(maxlambda),log10(e(maxeidx)),'ro');ylabel('log_ {10} 5倍边')xlabel('log_ {10} lambda')legend('边缘',,,,'Max edge') 抓住离开

图包含一个轴对象。轴对象包含2个类型行的对象。这些对象表示边缘,最大边缘。

いくつかの兰姆达lambdaのますますエッジエッジエッジエッジがのののがが大きくなるなるなるととと,予测子予测子変数がスパースにになります。。これはは

エッジが低下する直前にある正則化強度を選択します。

lambdafinal = lambda(5);

正则化强度兰巴非省を指定データ全体を使用て线形モデル学习をささます。

mdlfinal=F一世tclinear(X,Ystats,'ObservationsIn',,,,'列',,,,。。。'学习者',,,,“逻辑”,,,,“求解器”,,,,'sparsa',,,,“正则化”,,,,'套索',,,,。。。'lambda',,,,lambdaFinal);

新しい観测のを推定するに,,mdlfinalと新しいデータを预测に渡します。

详细

すべて展開する

バージョン履歴

R2016a で導入