このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
合身
Local Interpretable Model-agnostic Explanations (LIME) の単純モデルのあてはめ
构文
说明
は,され数または(newresults
= fit(results
,,,,查询点
,,,,numImportantPredictors
)numImportantPredictors
)を使用て指定された点(查询点
)に新しい単純モデルをあてはめます。この関数は、新しい単純モデルを含む酸橙
オブジェクトnewresults
を返します。
合身
は,いつ酸橙
オブジェクトresults
を作成をする,単纯モデルをします。このは,关数合身
の名前値の引数を使用て変更できます。
1つつのとのペア引数をして追加オプションオプションを指定しします,newresults
= fit(results
,,,,查询点
,,,,numImportantPredictors
,,,,名称,价值
)“ SimpleModelType”,“ Tree”
を指定,决定モデルをあてことができ。。。
例
線形単純モデルを使用した予測の説明
回帰モデル学习行い,単纯モデルを使用する酸橙
オブジェクトを作成します。酸橙
オブジェクト作成に,点と重要予测子の数ししなかったた场合场合,,ソフトウェアソフトウェアは合成データセットセットのをを生成しますます合身
を使用,点に単纯モデルます。次に,关数阴谋
を使用,めた线形単纯系数を表示し。。
carbig
1970年年代ととセットデータととととととこのこのこのデータデータにに年代年代年代に制造された自动车のの测定测定测定値値が格纳
加载carbig
加速度
,Cylinders
などの子変数と変数変数MPG
が格納された table を作成します。
资源表(加速度,Cylin =ders,Displacement,Horsepower,Model_Year,Weight,MPG);
学習セットの欠損値を削除すると、メモリ消費量を減らして関数合身rkernel
の学習速度を向上させることができます。tbl
の欠损を削除し。。
tbl = rmmissing(tbl);
tbl
から応答変数を削除して、予測子変数のテーブルを作成します。
TBLX=removevars(tbl,'mpg');
关数合身rkernel
を使用してMPG
の黑盒子モデルの学習を行います。
rng('默认')% For reproducibilityMDL=合身rkernel(tblX,tbl.MPG,“分类预期”,[2 5]);
酸橙
オブジェクトを作成します。MDL
にはがれないため,セットを指定し。。
结果=石灰(MDL,TBLX)
results = lime with properties: BlackboxModel: [1x1 RegressionKernel] DataLocality: 'global' CategoricalPredictors: [2 5] Type: 'regression' X: [392x6 table] QueryPoint: [] NumImportantPredictors: [] NumSyntheticData: 5000 SyntheticData: [5000x6 table]拟合:[5000x1 double] simpleModel:[]重要predictors:[] blackboxfittit:[] simplememodelfitting:[]
results
には、生成された合成データ セットが含まれます。SimpleModel
プロパティは空 ([]
)です。
TBLX
の最初値に単纯モデルあてはめます検出検出重要重要な予测子ののの数数数数をををををををををを。
querypoint = tblx(1,:)
querypoint =1×6桌加速度Cylinders Displacement Horsepower Model_Year Weight ____________ _________ ____________ __________ __________ ______ 12 8 307 130 70 3504
结果= fit(结果,查询点,3);
オブジェクト关数阴谋
を使用し,酸橙
オブジェクトresults
をプロット。子名に含まアンダーを表示するに,座标轴のTickLabelInterPreter
値を'没有任何'
に変更し。
f =图(结果);f.currentaxes.ticklabelinterpreter ='没有任何';
プロットにクエリ点のののつの値がれていますます。この予测予测値results
の黑框プロパティと简单地解码プロパティに対応ます。
横棒绝対値で并べ替えられ単纯モデル系数値を示し示しますますます。。。。。。。ははははは,クエリ点点马力
,model_year
,およびCylinders
を见つけます。
model_year
およびCylinders
はのもつ予测子です。线形。モデルの,カテゴリカルカテゴリカル予测子について,,,,カテゴリカテゴリの数よりよりももももももつつつつつダミー変数が作成さ表示さます他の変数の系数はresults
のSimpleModel
プロパティをてできます。のダミー変数を并べ替え并べ替えられた系数のの値値ますますます
[〜,i] = stort(abss.simplemodel.beta),'descend');桌子((results.SimpleModel.ExpandedPredictorNames(I)',results.SimpleModel.Beta(I),...'variablenames',{“扩展的预测器名称”,,,,'Coefficient'})
ans=17×2桌Exteded Predictor Name Coefficient __________________________ ___________ {'Horsepower' } -3.4485e-05 {'Model_Year (74 vs. 70)'} -6.1279e-07 {'Model_Year (80 vs. 70)'} -4.015e-07 {'model_year(81 vs. 70)'} 3.4176E-07 {'model_year(82 vs. 70)'} -2.2483e-07 {'canlinders(6 vs. 8)'} -1.9024e-07-vs. 70)'} 1.8136E-07 {'cALINDERS(5 vs. 8)'} 1.7461E-07 {'model_year(71 vs. 70)'} 1.558e-07 {'model_year(75 vs. 70)''}1。5456e-07 {'Model_Year (77 vs. 70)'} 1.521e-07 {'Model_Year (78 vs. 70)'} 1.4272e-07 {'Model_Year (72 vs. 70)'} 6.7001e-08 {'Model_Year (73 vs. 70)'} 4.7214e-08 {'Cylinders (4 vs. 8)' } 4.5118e-08 {'Model_Year (79 vs. 70)'} -2.2598e-08 ⋮
复数の点に対するモデルのあてはめ
分类モデル学习行い単纯な决定モデルを使用する酸橙
オブジェクトをます复数のクエリ点のモデルをあてはめ。。
CreditRating_Historical
データセットを読み込みます。データ セットには、顧客 ID、顧客の財務比率、業種ラベル、および信用格付けが格納されています。
tbl =可读取('Creditrating_historical.dat');
tbl
IDとと格付けの列を削除て,変数のののをををを作成。。。。
tblx = removevars(tbl,["ID",,,,“评分”);
关数fitcecoc
Blackboxモデルモデルモデルモデルモデルモデル学习ささせせますます。。
黑盒子=fitcecoc((tblX,tbl.Rating,“分类预期”,,,,'行业')
黑盒子=ClassificationECOC PredictorNames: {1x6 cell} ResponseName: 'Y' CategoricalPredictors: 6 ClassNames: {'A' 'AA' 'AAA' 'B' 'BB' 'BBB' 'CCC'} ScoreTransform: 'none' BinaryLearners: {21x1 cell} CodingName: 'onevsone' Properties, Methods
黑盒子
モデルを使用て,酸橙
オブジェクトを作成します。
rng('默认')% For reproducibilityresults = lime(blackbox);
真の格付け値がそれぞれAAA
およびb
となる2つのクエリ点を見つけます。
querypoint(1,:) = tblx(find(strcmp(tbl.trating,),'AAA'),,,,1),,,,:); queryPoint(2,:) = tblX(find(strcmp(tbl.Rating,'B'),,,,1),,,,:)
querypoint =2×6桌WC_TARE_TA EBIT_TA MVE_BVTD S_TA Industry _____ _____ _______ ________ _____ ________ 0.121 0.413 0.057 3.647 0.466 12 0.019 0.009 0.042 0.257 0.119 1
最初のに线形モデルをあてはめます重要な予测子数数ををををををををををににに设定设定
newResults1 = fit(结果,QUERYPOINT(1,:),4);
最初のクエリについてのののののnewresults1
をプロット。子名に含まアンダーを表示するに,座标轴のTickLabelInterPreter
値を'没有任何'
に変更し。
f1 = plot(newresults1); f1.CurrentAxes.TickLabelInterpreter ='没有任何';
最初のクエリ点に線形決定木モデルをあてはめます。
newResults2 = fit(结果,QUERYPOINT(1,:),6,,'SimpleModelType',,,,'树');f2 = plot(newresults2); f2.CurrentAxes.TickLabelInterpreter ='没有任何';
newresults1
およびnewresults2
の単純モデルはどちらも、重要な予測子としてMVE_BVTD
およびRE_TA
を见つけます。
2番目のクエリ点に線形単純モデルをあてはめ、2 番目のクエリ点についての LIME の結果をプロットします。
newresults3 = fit(results,queryPoint(2,:),4); f3 = plot(newresults3); f3.CurrentAxes.TickLabelInterpreter ='没有任何';
黑盒子
モデルからの値はb
ですが単纯モデルの予测値はb
ではありませんつつ予测値同じば,小さい方のの'kernelwidth'
値を指定することができます。ソフトウェアは、クエリ点に近い標本に比重を置く重みを使用して、単純モデルをあてはめます。クエリ点が外れ値であるか、判定境界の近くに位置する場合、小さい'kernelwidth'
を指定たしもも,,,つつ予测値は可能性性ががありありありますます。。そのような场合场合,,他他のの名前ととと値値値ののペアのの引数変更変更変更変更変更変更セットを(酸橙
の“数据级数”
を'当地的'
として指定)し合成データ内の标本(酸橙
または合身
の'numsyntheticData'
)を増やすことができます。異なる距離計量 (酸橙
または合身
の'距离'
)を使用こともます。。
小さな'kernelwidth'
値で線形単純モデルをあてはめます。
newResults4 = fit(结果,QUERYPOINT(2,:),4,,'kernelwidth',0.01);f4 = plot(newResults4);f4.currentaxes.ticklabelinterpreter ='没有任何';
2番目とと番目の点の格付けはそれぞれそれぞれAAA
とb
です。newresults1
およびnewresults4
の単純モデルはどちらも、重要な予測子としてMVE_BVTD
,RE_TA
,およびWC_TA
を见つけます。ただし、これらの係数値は異なります。プロットは、これらの予測子が信用格付けに応じて異なる動作をすることを示しています。
入力引数
results
-酸橙の結果
酸橙
オブジェクト
酸橙の結果。酸橙
オブジェクトとして指定ます。
查询点
-クエリ点
数値の行ベクトル|単一行テーブル
关数合身
が単純モデルをあてはめる周囲のクエリ点。数値の行ベクトルまたは単一行テーブルとして指定します。查询点
値は,酸橙
オブジェクトresults
内のデータ(结果。
またはX
结果。
)とデータおよびがでなければなりん。。SyntheticData
查询点
に欠损含まれいてはませ。。。
データ型:单身的
|double
|桌子
numImportantPredictors
-単纯モデル使用するな予测子の数
正の整数値
単纯モデルするな予测子の数正整数スカラー値としてします。
'SimpleModelType'
が“线性”
である场合は指定れたのなを选択选択し,选択した予测子予测子のの线形モデルをを'SimpleModelType'
が'树'
场合,,重要な予测子の分岐分岐分岐分岐分岐分岐分岐分岐分岐のののの最大数ををを指定,,あてはめられられたた决定木が,指定指定
データ型:单身的
|double
名前と値引数
例:“ numsyntheticdata”,2000年,“ simplemodeltype”,“ tree”
は,合成データ セットのために生成する標本数を 2000 に設定し、単純モデルのタイプを決定木として指定します。
オプションの名称,价值
引数の区ペアを指定し。。Name
は引数名,价值
は対応するです。Name
は引用でなければなりませ。。Name1,Value1,...,NameN,ValueN
のに复数名前とのペア引数を任意の顺番で指定指定。。。
COV
-マハラノビス距离の共分散分散
正定値行列
距离
-距離計量
文字ベクトル|string スカラー|关数ハンドル
距离计量。'距离'
字符串字符串スカラースカラー,关数ハンドルでされるコンマ切り切りのペアとして指定しします。。
予測子データに連続変数のみが含まれる場合、
合身
はこれら距离计量サポートします。値 说明 “欧几里得”
ユークリッド距离。
'seuclidean'
标准化さユークリッド距离観测値间各座はは标准标准偏差
S = std(PD,'omitnan')
の対応で除算ことによりスケーリングれ。。でで,PD
は予测子または合成データ。别スケーリングをするには,,名前とと引数引数引数'规模'
を使用します。'mahalanobis'
PD
の標本共分散を使用したマハラノビス距離、C=COV(PD,“ Omitrows”)
。共分散行列の値を変更するには、名前と値の引数'Cov'
を使用します。'城市街区'
市街地距离。
'Minkowski'
2ですはははですです别指数をするには,名前ととの引数引数引数
'P'
を使用します。'chebychev'
チェビシェフ距离((最大座標差)。
“余弦”
1からベクトル扱わ点ののの余弦引いた。。
'correlation'
1から、値の系列として扱われる点の間の標本相関を引いた値。
'spearman'
1から、観測値間の標本スピアマンの順位相関 (値の系列として扱われる) を引いた値。
@
DISTFUN
カスタム距离ハンドル距离关数の形式のようになり。。
功能d2 = distfun(zi,zj)距离计算的%...
ZI
は,の値が含まれいるいる1
行t
列のベクトルです。ZJ
は,複数の観測値が含まれているs
行t
列の行列。DISTFUN
は,个数の値が含まて行列行列行列ZJ
を受け入ればなりませ。。D2
はs
行1
列ののベクトルであり,D2((k)
は観测値ZI
とZJ(k,:)
の間の距離です。
データがスパースでない場合、通常は関数ハンドルではなく組み込みの距離計量を使用する方が高速に距離を計算できます。
予測子データに連続変数とカテゴリカル変数の両方が含まれる場合、
合身
はこれら距离计量サポートします。値 说明 'goodall3'
異形グドール距離
'ofd'
出現頻度距離
定义については距離計量を参照しください。
既定値,酸橙
オブジェクトresults
を作成する際に指定する'距离'
値です。酸橙
の既定の'距离'
値はデータに変数のみがれるははは“欧几里得”
,予测子连続とカテゴリカル変数の含まれているはは'goodall3'
です。
例:'距离',,,,'ofd'
データ型:char
|string
|function_handle
kernelwidth
-カーネルの幅
数値スカラー値
数字
-クエリ点のの数
正の整数値
クエリ点近傍の数。'numneighbors'
と正スカラー値构成れるコンマ切りのとして指定しますます。このこの,,,results
の数据学性
プロパティが'当地的'
である场合のみです。
关数合身
,指定た点のの傍の数をし,予测子予测子データのののの分布分布パラメーターををししますます。。后后,推定しした分布分布を
酸橙
オブジェクトresults
内の予測子データ セット (结果。
)における観测数より値がされた,,X
合身
はすべて観测値使用します。
既定値,酸橙
オブジェクトresults
を作成する際に指定する'numneighbors'
値です。酸橙
の既定の'numneighbors'
値は1500 です。
例:'numneighbors',,,,2000
データ型:单身的
|double
numsyntheticdata
-合成データのに生成する标本数数
结果。numsyntheticdata
(既定)|正の整数値
合成データのに生成标本の数。'numsyntheticData'
と正スカラー値构成される区のペアとして指定します。
既定値,results
のnumsyntheticdata
プロパティ値です。
例:“ numsyntheticdata”,2500
データ型:单身的
|double
p
-ミンコフスキー距离计量指数
正のスカラー
ミンコフスキー距离计量指数。'P'
と正値をで区切ってし。。。
この引数は,'距离'
が'Minkowski'
である场合のみです。
既定値,酸橙
オブジェクトresults
を作成する際に指定する'P'
値です。酸橙
の既定の'P'
値は2ですです。
例:'P',3
データ型:单身的
|double
规模
-标准化さた距离计量のスケール値値
非负の数値ベクトル
标准化さた距离计量のスケール値値。'规模'
とささ非负数値ベクトル构成コンマ区切りのペアとして指定し。。。。
この引数は,'距离'
が'seuclidean'
である场合のみです。
既定値,酸橙
オブジェクトresults
を作成する際に指定する'规模'
値です。酸橙
の既定の'规模'
値はSTD(PD,“ Omitnan”)
です。ここで、PD
は予测子,または予测子データです。'规模'
値を指定しなかった場合、ソフトウェアは、予測子データおよび合成予測子データの両方の距離を計算するときに、異なるスケール パラメーターを使用します。
例:“比例”,分位数(x,0.75) - 分位数(x,0.25)
データ型:单身的
|double
SimpleModelType
-単纯モデルのタイプ
“线性”
|'树'
単纯モデルのタイプ。'SimpleModelType'
と“线性”
または'树'
で构成コンマ区のペアとしてし。。。
“线性”
- ソフトウェアは,にはfitrlinear
を,分类は合身clinear
を使用て线形モデルをあてはめ。。
既定値,酸橙
オブジェクトresults
を作成する際に指定する'SimpleModelType'
値です。酸橙
の既定の'SimpleModelType'
値は“线性”
です。
例:“ SimpleModelType”,“ Tree”
データ型:char
|string
出力引数
详细
距離計量
2つ,つつ観测の间距离を定义する。。合身
は,用のさまざま距离や,连変数とカテゴリカルカテゴリカル変数のの混在ををサポート。
连続変数の计量
mx行n列x x(mx个个の行1,X2,...,XMXとしてれるれるとと,n n列行列y(我的个个个1y2,...,y我的として扱われる) が与えられた場合、ベクトル xsytの间さまざまは次のよう定义されます。
ユークリッド距离
ユークリッド距离ミンコフスキー距离特殊なケース,p=2の场合です。
標準化されたユークリッド距離
ここで、V は j 番目の対角要素が(s(j))2n n n n列列行列です。ははのスケーリングのベクトル。。。
マハラノビス距离
ここでcは共分散分散ですです。。
市街地距离
市街地距离はミンコフスキー距离の特殊なケース、p=1の场合です。
ミンコフスキー距离
p=1という特殊なケースでは、ミンコフスキー距離は市街地距離を与えます。p=2というケースで,ミンコフスキー距离ユークリッドをを与えます。p =∞というケースは,ミンコフスキー距离シェフ距离を与え。。
チェビシェフ距离
チェビシェフ距离はミンコフスキー距离の特殊なケース、p =∞の场合です。
コサイン距离
相関距離
ここで
および
スピアマン距离
ここで
连続と変数がする场合の距离计量
異形グドール距離
距离は距离のバリアントであり,他値のの频度なく,,,一致一致一致するするする値がが互いにに离れ离れたた场所场所场所场所ににあるある场合场合にににに小さな小さなを割り当てますますますますますます。(変数の)です。
出現頻度距離
一致场合频度距离ゼロ距离をます。不场合场合,出现出现频度频度距离距离はは,频度の低い低い値高い高い距离を割り当割り当
アルゴリズム
酸橙
手顺1~5ののの,,,,[1]を使用机械学习のを说明ため,は,合成データデータセットをを,,,酸橙
と合身
を使用解釈可能単纯モデルをデータににますます。
酸橙
の查询点
値とnumImportantPredictors
値を指定した場合、関数酸橙
はすべて手顺を実行。。查询点
およびnumImportantPredictors
を指定せずに“数据级数”
を'全球的'
(既定の)としてとしてた场合,酸橙
が合成セット生成し(手顺1~2),,合身
が単純モデルをあてはめます (手順 3 ~ 5)。查询点
およびnumImportantPredictors
を指定せずに“数据级数”
を'当地的'
として指定した場合、関数合身
はすべて手顺を実行。。
关数酸橙
および合身
は,の手顺実行します。
连続変数多変量分布を,各変数には多変量分布を使用使用セットセットセットセットセットセットsを生成します。名前と値の引数
'numsyntheticData'
を使用し,生成する標本の数を指定できます。“数据级数”
が'全球的'
(既定の)であるであるソフトウェアは予测子データ(X
または黑盒子
内のデータ)から分布を推定ます。。“数据级数”
が'当地的'
である场合はクエリののの个最近傍使用して分布分布パラメーターをを推定しししますますます'numneighbors'
値です名前と値引数引数'距离'
を使用し,最近傍を見つけるための距離計量を指定できます。
ソフトウェアはパラメーター推定する,予测子セット内欠损値を无视します。
あるいは,
酸橙
の入力引数customSyntheticData
を使用で事前生成されカスタム予测子データセットをできます。合成セットxsについて値ysを計算します。この予測値は、回帰、または分類を行うための分類済みラベルについての予測応答です。ソフトウェアは、
黑盒子
モデルの关数预测
を使用て値を计算し。。黑盒子
を关数ハンドルとして指定した場合、ソフトウェアは、その関数ハンドルを使用して予測値を計算します。'距离'
によって指定た计量をし,点と合成予测子データセットセット内のの标本标本ののの距离距离距离二乗指数 (またはガウス) カーネル関数を使用して、クエリ点 q に対する合成予測子データ セット内の標本の重み値 w问を計算します。
Xsは,合成予測子データ セット Xs内の标本。
d(xs,,,,问)は标本xsとクエリ点问の距離です。
pは,Xs内の子の数。。
σはのです。と値引数引数引数
'kernelwidth'
を使用して指定できます。既定の'kernelwidth'
値は0.75 です。
クエリ点重み値ははであり,の値がなるにつれにつれ,,,ににににに收束しいきます。。
'kernelwidth'
値は重み値ががににする速度制御制御。。'kernelwidth'
0により速く速く速く速く速くにににます。アルゴリズムはは,,クエリクエリクエリ点に近い近い标本にに,よりより大きな重みをを付与しします,选択たな予测子,およびはめた単纯によるによる,クエリクエリ点点点周辺周辺周辺の合成データについてについての予测予测予测予测子子子単纯モデルをます。
'SimpleModelType'
が“线性”
(既定の)である场合ソフトウェア,予测子选択,选択した重要な予测子の线形モデルモデルををグループ直交マッチング(OMP)アルゴリズム[2][3]を使用し,n个のな( )を選択します。ここで、n は
numImportantPredictors
値です。アルゴリズム,合成予测子データセット(xs),予測子 (Ys),および重み(W问)を使用し。重み(W问)を使用て选択した重要予测子( )の线形を(ys)にあてはめ。は,回帰はは
fitrlinear
を,分类は合身clinear
を使用ますマルチクラスモデルの场合ソフトウェアははは対(OVA)方式方式方式を使用してバイナリ分类分类问题问题问题をを作成黑盒子
モデルから点の予测であり,クラスは他のクラスを指します。
'SimpleModelType'
が'树'
である场合ソフトウェアは,はは合身rtree
を,分类はFitctree
を使用して決定木モデルをあてはめます。ソフトウェアは、重要な予測子の数として決定分岐 (枝ノード) の最大数を指定し、あてはめられた決定木が、指定された数を上限に予測子を使用するようにします。
参照
[1]Ribeiro, Marco Tulio, S. Singh, and C. Guestrin. "'Why Should I Trust You?': Explaining the Predictions of Any Classifier." In Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, 1135–44. San Francisco, California: ACM, 2016.
[2]Świrszcz,Grzegorz,Naoki Abe和AurélieC。Lozano。“对可变选择和预测进行分组的正交匹配追求。”神经信息处理系统的进步(2009):1150–58。
[3] Lozano,AurélieC。,Grzegorzświrszcz和Naoki Abe。“集体正交匹配追求对逻辑回归。”第十四届国际人工智能与统计会议论文集(2011年):452-60。
バージョン履歴
matlabコマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
您还可以从以下列表中选择一个网站:
How to Get Best Site Performance
选择中国网站(中文或英语)以获得最佳场地性能。其他Mathworks乡村网站未针对您所在的访问进行优化。
美洲
- AméricaLatina(Español)
- 加拿大((英语)
- 美国((英语)
欧洲
- Netherlands((英语)
- 挪威((英语)
- Österreich(德意志)
- 葡萄牙((英语)
- 瑞典((英语)
- 瑞士
- United Kingdom((英语)