主要内容

このページ最新ではありませ。をクリックし,英语のの最新版版を参照参照し。

失利

k最近傍损失损失

说明

l=损失(MDL,,,,TBL,,,,响应varnameは,真分类がtbl.ResponseVarnameに含まている场合にMDLTBL内のどの适切に分类する表すスカラーを返し。。MDLを学习せるに使用た応答変数がTBLに含まている场合,响应varnameを指定必要はあり。。

关数失利は,を计算する,,MDL事先的プロパティにれいる,学习にれたクラス确率,,tbl.ResponseVarnameのクラスを正规化。。

分类损失(l)の意味关数重み付けの方式异が一般にに优れた分类分类器器方が分类分类损失ののの値値値が分类损失を参照しください。

l=损失(MDL,,,,TBL,,,,yは,真分类がyに含まている场合にMDLTBL内のどの适切に分类する表すスカラーを返し。。

关数失利は,を计算する,,MDL事先的プロパティにれいる,学习にれたクラス确率,,yのクラスを正规化。。

l=损失(MDL,,,,X,,,,yは,真分类がyに含まている场合にMDLX内のどの适切に分类する表すスカラーを返し。。

关数失利は,を计算する,,MDL事先的プロパティにれいる,学习にれたクラス确率,,yのクラスを正规化。。

l=损失(___,,,,名称,价值では前构文入力引数にててててててつつ名前値値のペアペアののの引数引数を使用しててオプションオプション指定します。。

すべて折りたたむ

フィッシャーのアヤメデータに対してk最近傍を作成ます。ここでk= 5です。

フィッシャーののデータを読み込みます。

加载渔业

5つ最近について器を作成。。。

mdl = fitcknn(MES,物种,'numneighbors',5);

“ versicolor”として分类た平均値に対する分类のををますます。

x =平均值(MEAS);y = {“ versicolor”};L =损失(MDL,X,Y)
L = 0

5つの傍すべてすべて“ versicolor”として分类さます。

入力引数

すべて折りたたむ

k最近傍分类。分类知识オブジェクトを指定ます。

モデルをせるに使用する标本テーブルとして指定し。。TBL1つつの値,各列ははははつの子変数に対応対応します。オプション,,TBLに応答用ををををつつ追加。文字文字ののののの配列配列配列ではないではないではない配列配列配列と复数列のの変数は使用使用でき

MDLを学习せるに使用た応答変数がTBLに含まている场合,响应varnameまたはyを指定必要はあり。。

桌子に格纳れいる标本を使用してMDLに学习させた,,失利table tableににれていばなりません。。。

データ::桌子

応答変数の。TBL内のの名前指定します。MDLを学习せるに使用た応答変数がTBLに含まている场合,响应varnameを指定必要はあり。。

响应varname字符串スカラーまたはスカラースカラー指定しなければません。たとえば,応答変数がtbl.Responseとして格纳れている,,'回复'として指定ます。以外の场合,TBLの列はtbl.Responseを含めすべて予测子扱われます。

逻辑配列,,,,,,,,,,,,,,,,配列配列ベクトルベクトルベクトルベクトルベクトルベクトル,,またはまたは文字文字文字文字ベクトルベクトルベクトルののベクトルベクトルベクトルベクトルベクトルベクトルベクトルベクトル配列配列配列配列ででなけれなけれなければばばなりませませんん。。応答応答変数しなけれなりません。

データ::char|细绳

予测子データ数値行列指定します。Xの各行各行つ観测値を,各ははははつつ変数を表します

データ::单身的|双倍的

类别配列配列,文字配列,,,,,,,,ベクトルベクトルベクトル数値数値ベクトル,またはまたは文字文字ベクトルベクトルののののの配列配列配列配列配列yの各行は,Xの対応行のを表します。

データ::分类|char|细绳|逻辑|单身的|双倍的|细胞

名前と値引数

例:损失(MDL,TBL,“响应”,“ LossFun”,“指数”,“权重”,“ W”)は,MDLTBL内の分类场合の重み付きを返します。ここ,tbl.Responseは応答変数,TBL.Wは重みのです。

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

损失关数。“ LossFun”と组み込み关数またはハンドルからされる区切りのペアペアとして指定指定。。。

  • 次の,使用な损失关数一覧。。。

    说明
    “ Binodeviance” 二项分布の逸脱度
    “分类” 10进数の误分类率
    “指数” 指数损失
    '合页' ヒンジ损失
    “ logit” ロジスティック损失
    'MinCost' 最小误コストコスト(事后确率分类の场合场合)
    “二次” 二次损失

    'MinCost'は,であるスコアに适してます。では,,,,,,最近最近傍モデルはは分类スコアスコアとしてとして事后确率确率(预测を参照)。

  • @lossfunのように@を使用,カスタム关数用のハンドル指定指定ますます。X内の値のをn,异なるクラス个数(numel(mdl.classnames))をkとし。损失は,のな形式しなければなりませんん。

    功能损失值= lossfun(c,s,w,成本)

    • Cn n行k列逻辑行列行列,対応観测値が属するをを各行が示し示します。列ははmdl.classnamesのクラス顺序対応し。各行について観测値pがクラスに属する场合はc(p,q)= 1を设定するにより,Cを作成し。行pの他すべての要素を0に设定し。

    • sは,のn行k列のです列の顺序ははmdl.classnamesのクラス顺序にします。引数sは,预测の出力同様分类スコアの行列。。

    • wは,値重みのn行の列列数値ベクトル。。。wを渡す,重みはがが1になるよう正规化さ。。

    • 成本は,コスト,k行k列の行列です。,,,成本=一个(k) - 眼睛(k)は,分类のコストてて0を,のコストとして1を指定し。

    • 出力引数损失价值はスカラーです。

损失关数详细については,分类损失を参照しください。

データ::char|细绳|function_handle

観测値の。“重量”と数値ベクトルまたはTBLに含まの名前构成される区のペアとして指定します。

数値ベクトルで权重を指定する,权重のサイズはXまたはTBLの行数等しくなけれなりません。

权重としてTBL内のを指定场合,名前文字ベクトルまたはまたはまたはスカラースカラースカラーなければなりませません。。重み重み重み重みTBL.Wとして格纳れている,,权重として'W'を指定ます。以外の场合,TBLの列はTBL.Wを含めすべて予测子扱われます。

失利は,の値重み合计そのクラス事前确率になるようように,重み重みを正规化化权重を指定し场合,失利は重み付き分类损失计算します。

例:“重量”,'W'

データ::单身的|双倍的|char|细绳

アルゴリズム

すべて折りたたむ

分类损失

“分类”关数はの误差を评価しし复数ので同じ同じタイプのの损失损失ををを比较比较たた场合,,损失损失损失ががが低い低い方

以下のを考えます。

  • lは加重分类损失。。

  • nは标本。。

  • バイナリ分类はです。

    • yjは観测たクラスです。阴性をを-1またはまたは阳性クラスクラスを示す示す示す示す1(あるいはclassNamesプロパティのクラス-1または -2番目番目クラスを示す示す示す示す示すををを使用て符号化化。。。。。

    • f(xj)はx xの観测(行)jに対する阳性クラス分类

    • mj= yjf(xj)はyjに対応に観测値値を分类するスコアです。ののjは正しい示しおり,平均损失に対するは大きくませません。负负ののjは正しくを示しおり,平均に寄与寄与ますます。

  • マルチクラス(つまりつまりk≥3)をサポートの场合次のになり。。

    • yj*は,k -1个ののとと観测さクラスクラスクラスjに対応位置のからからされるです。たとえば,,,,番目番目番目の値値の真真真のクラスクラスクラスクラスががががががクラスk = 4の场合,y2*= [0 0 1 0]''になり。の顺序は入力ののclassNamesプロパティ内顺序に対応。。

    • f(xj)はx xの観测値値クラススコアのベクトル,长はははははです。スコアスコアclassNamesプロパティ内クラス顺序に対応し。。

    • mj= yj*'f(xj)。したがっmjは,れ真のクラスについて予测するスカラー分类スコア。

  • 観测j jのははjです観测のは正规化れ,合计は対応対応事前事前事前确率确率确率にににになりなります。またまたまた,,事前事前事前确率がががががががががががががががががになるになるになるになるになるになるになるになる

    j = 1 n w j = 1。

この状况は名前とのペアの引数“ LossFun”を使用指定,サポートれる损失は次表のようになります。

损失关数 Lossfunの値
二项分布の逸脱度 “ Binodeviance” l = j = 1 n w j 日志 { 1 + 经验 [[ - 2 m j 这是给予的 }
10进数の误分类率 “分类”

l = j = 1 n w j { y ^ j y j } ,,,,

y ^ j は,がであるに対応するクラス。。i{

クロスエントロピー损失 “ Crossentropy”

“ Crossentropy”はニューラルモデルに适してい。。

加重クロス损失はとなります。

l = - j = 1 n w j 日志 (( m j k n ,,,,

ここで重み w j は,合计がではなくではなくように化さます。。

指数损失 “指数” l = j = 1 n w j 经验 (( - m j
ヒンジ损失 '合页' l = j = 1 n w j 最大限度 { 0 ,,,, 1 - m j }
ロジット损失 “ logit” l = j = 1 n w j 日志 (( 1 + 经验 (( - m j
最小予测分类コスト 'MinCost'

'MinCost'は,スコア确率の场合に适しています。

重み付きの分类コストは次の手顺値値= = 1 = 1,

  1. 観测x xjをクラスクラス分类ための误分类コスト推定し。。。

    γ j k = (( F (( X j ' C k

    f(xj)は値xjのバイナリクラスにおけるクラスの事后のベクトルです。。。はは成本プロパティにされるコスト。。

  2. 最小分类コスト対応するクラスラベル観测値値値予测予测します。

    y ^ j = Argmin k = 1 ,,,, ... ,,,, k γ j k

  3. cを使用,予测行うために必要な(cj)を求めます。

最小误损失の加重平均次となります。

l = j = 1 n w j C j

既定の(正しい正しい场合の値ははは,,た分类のの场合の要素要素要素値1)ををを使用使用使用'MinCost'损失は“分类”损失とになります。

二次损失 “二次” l = j = 1 n w j (( 1 - m j 2

次のでは,,,つの観测値スコアスコアスコアに対する“ Crossentropy”および'MinCost'をををてい。いくつの关数は(0,1)をを通过するように正规化化ささされ。

比较不同损失功能的分类损失

真の误分コスト

knn分类にクラスごと真ののおよび値ごとの予测予测误分类分类コストコストコストというというというというつのつのつのコストが关连关连

fitcknnを実行とき名前とのペアの引数'成本'を使用により,ごとの真误分コストを设定できます。値费用(i,j)は,真クラスが一世である観测値クラスjに分类コストです既定では,成本(i,j)= 1((i〜 = jの场合)および成本(i,j)= 0((i = jの场合)ですつまり,分类ののは0,误っ分类のコストは1です。

予测コスト

knn分类にクラスごと真ののおよび値ごとの予测予测误分类分类コストコストコストというというというというつのつのつのコストが关连关连预测3番目番目は観测ごとの误分类コスト。。

学习済みの分类器MDLを使用してNobs个の値分类するします。また,k个のがとします。1行1観测1観测にXNewに置き。次のコマンド

[标签,得分,成本] =预测(MDL,XNEW)

これは他のに加えて,Nobsk列の行列成本を返します。成本行列のに,観测をそれぞれクラスクラスkに分类(平均)コストコスト含まれ。。成本(n,j)は次のです。

一世 = 1 k p ^ (( 一世 | X n e w (( n C (( j | 一世 ,,,,

ここで

  • kは,のです。

  • p ^ (( 一世 | X (( n は値値Xnew(n)のクラスiの事后确率です。

  • C (( j | 一世 は,がががである観测ををに分类するの误分类コスト。。

拡张机能

バージョン履歴

R2012Aで导入