主要内容

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

partialDependence

説明

pd= partialDependence (RegressionMdlvarは,回帰モデルRegressionMdlを使用して,varに記載されている予測子変数間の部分従属pdと予測応答を計算します。これには予測子デ,タが含まれます。

pd= partialDependence (ClassificationMdlvar标签は,分類モデルClassificationMdlを使用して,varに記載されている予測子変数間の部分従属pdと,标签で指定されたクラスのスコアを計算します。これには予測子デ,タが含まれます。

pd= partialDependence (___数据は,数据の新しい予測子デ,タを使用します。前の構文におけるいずれかの入力引数の組み合わせに加えて,数据を指定できます。

pd= partialDependence (___名称,值は,1以上の名前と値のペアの引数によって指定された追加オプションを使用します。たとえば,“UseParallel”,“真正的”を指定した場合,関数partialDependenceは並列計算を使用して部分従属の計算を実行します。

pdxy=部分依赖(___は,xyも返します。これには,varの1番目と2番目の予測子変数の各クエリ点が含まれます。varで1の変数を指定した場合,partialDependenceyに空行列([])を返します。

すべて折りたたむ

fisheririsデータセットで単純ベイズ分類モデルに学習させて,予測子変数と複数クラスの予測スコア(事後確率)の関係を示す部分従属の値を計算します。

fisheririsデ,タセットを読み込みます。これには150本のアヤメの標本にいて種類(物种)と,がく片の長さ,がく片の幅,花弁の長さ,花弁の幅の測定値()が含まれています。このデータセットには,setosa,杂色的およびvirginicaの3種類のそれぞれについて50個ずつの標本が含まれています。

负载fisheriris

応答に物种,予測子にを使用して,単純ベ。

Mdl = fitcnb(meas,species,“PredictorNames”, (“花萼长度”“花萼宽”“花瓣长度”“花瓣宽度”]);

物种の3のクラスすべてに対するMdlによる予測スコアにいて,3番目の予測子変数(花弁の長さ)の部分従属の値を計算します。Mdl一会プロパティを使用して,クラスラベルを指定します。

[pd,x] = partialDependence(Mdl,3,Mdl. classnames);

Pdにはクエリ点xの部分従属の値が含まれます。情节酒吧などのプロット関数を使用して,計算された部分従属の値をプロットできます。関数酒吧を使用して,xに対してpdをプロットします。

bar(x,pd) legend(mld . classnames) xlabel(“花瓣长度”) ylabel (“分数”)标题(“部分依赖图”

图中包含一个轴。标题为偏依赖图的轴包含3个类型为bar的对象。这些物品代表了setosa, versicolica, virgica。

このモデルでは,virginicaの確率は花弁の長さにともなって増加しています。setosaの確率は,花弁の長さが0から2.5付近までは約0.33であり,それ以降は確率はほぼ0に低下します。

あるいは,関数plotPartialDependenceを使用し,部分従属の値を計算してプロットすることができます。

plotPartialDependence (Mdl 3 Mdl.ClassNames)

图中包含一个轴。标题为偏依赖图的轴包含3个类型行对象。这些物品代表了setosa, versicolica, virgica。

分類モデルのアンサンブルに学習させ,複数クラスの2の変数における部分従属の値を計算します。次に,各クラスの部分従属の値をプロットします。

census1994デ,タセットを読み込みます。これには,< = 50 kまたは> 50 kに分類される米国の年収デ,タと,複数の人口統計変数が含まれます。

负载census1994

分析する変数のサブセットをテ,ブルadultdataから抽出します。

X =成人数据(1:500,{“年龄”“workClass”“education_num”“marital_status”“种族”...“性”“capital_gain”“capital_loss”“hours_per_week”“工资”});

fitcensembleを使用して“方法”“包”として指定し,分類木のランダムフォレストに学習させます。再現性を得るために,templateTree“复制”オプションで使用し,作成されたリのテンプレトを使用します。

rng (“默认”) t = templateTree(“复制”,真正的);Mdl = fitcensemble(X,“工资”“方法”“包”“学习者”t);

Mdlのクラス名を検査します。

Mdl。ClassNames
ans =2 x1分类< = 50 k > 50 k

両方のクラス(< = 50 k> 50 k)にいて,予測子年龄education_numのスコアの部分従属の値を計算します。抽出する観測値の個数を100 に指定します。

[pd,x,y] = partialDependence(Mdl,{“年龄”“education_num”}, Mdl。ClassNames,“NumObservationsToSample”, 100);

関数surflを使用し,1番目のクラス(< = 50 k)の部分従属の値の表面プロットを作成します。

图surf(x,y,squeeze(pd(1,:,:))) xlabel(“年龄”) ylabel (“教育\ _num”) zlabel ('班级分数<=50K')标题(“部分依赖图”)视图([130 30])%修改视角

图中包含一个轴。标题为偏依赖Plot的轴包含类型为surface的对象。

2番目のクラス(> 50 k)の部分従属の値の表面プロットを作成します。

图surf(x,y,squeeze(pd(2,:,:))) xlabel(“年龄”) ylabel (“教育\ _num”) zlabel (“>级成绩50K”)标题(“部分依赖图”)视图([130 30])%修改视角

图中包含一个轴。标题为偏依赖Plot的轴包含类型为surface的对象。

2 .。

carsmallデータセットを使用してサポートベクターマシン(SVM)回帰モデルに学習をさせ,2つの予測子変数の部分従属を計算します。次に,2

carsmallデ,タセットを読み込みます。

负载carsmall

重量气缸位移马力を含む表を作成します。

Tbl =表(重量,气缸,排量,马力);

资源描述の予測子変数と応答変数英里/加仑を使用して支持向量机回帰モデルに学習させます。自動カ,ネルスケ,ルのガウスカ,ネル関数を使用します。

Mdl = fitrsvm(Tbl,MPG,“ResponseName”“英里”...“CategoricalPredictors”“气缸”“标准化”,真的,...“KernelFunction”“高斯”“KernelScale”“汽车”);

予測子変数重量马力の予測応答(英里/加仑)の部分従属を計算します。クエリ点を指定し,名前と値のペアの引数“QueryPoints”を使用して部分従属を計算します。

numPoints = 10;ptX = linspace(min(Weight),max(Weight),numPoints)';ptY = linspace(min(马力),max(马力),numPoints)';[pd,x,y] = partialDependence(Mdl,{“重量”“马力”},“QueryPoints”, (ptX企业]);

5行5列のタesc esc esc esc esc esc esc esc esc esc esc esc esc esc esc esc esc esc esc esc esc esc esc esc esc esc esc esc関数显示亮度图像を使用して,2の変数の部分従属をプロットします。次に,関数柱状图を使用して,各変数のヒストグラムを描画します。ヒストグラムのエッジを指定して,ヒストグラムバ,の中心がクエリ点に揃うようにします。座標軸プロパティを変更して,プロットの座標軸を揃えます。

T = tiledlayout(5,5,“TileSpacing”“紧凑”);Ax1 = nexttile(2,[4,4]);显示亮度图像(x, y, pd)标题(“部分依赖图”) colorbar (“eastoutside”ax₁。YDir =“正常”;Ax2 = nexttile(22,[1,4]);dX = diff(ptX(1:2));edgeX = [ptX-dX/2;ptX(end)+dX];直方图(重量,edgeX);包含(“重量”) xlim (ax1.XLim);Ax3 = nexttile(1,[4,1]);dY = diff(ptY(1:2));egey = [ptY-dY/2;ptY(end)+dY];直方图(马力,edgeY)包含(“马力”) xlim (ax1.YLim);ax3。XDir =“反向”;camroll (-90)

图包含3个轴。标题为偏依赖图的轴1包含一个图像类型的对象。坐标轴2包含一个直方图类型的对象。坐标轴3包含一个直方图类型的对象。

pdの各要素は,1。。

入力引数

すべて折りたたむ

回帰モデル。完全またはコンパクトな回帰モデルオブジェクトとして指定します。サポ,トされるモデルは次の表に記載されています。

モデル 完全またはコンパクトなモデルオブジェクト
一般化線形モデル GeneralizedLinearModelCompactGeneralizedLinearModel
一般化線形混合効果モデル GeneralizedLinearMixedModel
線形回帰 LinearModelCompactLinearModel
線形混合効果モデル LinearMixedModel
非線形回帰 NonLinearModel
回帰モデルのアンサンブル RegressionEnsembleRegressionBaggedEnsembleCompactRegressionEnsemble
一般化加法モデル(gam) RegressionGAMCompactRegressionGAM
ガウス過程回帰 RegressionGPCompactRegressionGP
ランダムな特徴量拡張を使用したガウスカ,ネル回帰モデル RegressionKernel
高次元デ,タの線形回帰 RegressionLinear
ニュ,ラルネットワ,ク回帰モデル RegressionNeuralNetworkCompactRegressionNeuralNetwork
サポ,トベクタ,マシン(svm)回帰 RegressionSVMCompactRegressionSVM
回帰木 RegressionTreeCompactRegressionTree
決定木のアンサンブルのバギング TreeBaggerCompactTreeBagger

RegressionMdlが予測子デ,タを含まないモデルオブジェクト(コンパクトなモデルなど)である場合,入力引数数据を指定しなければなりません。

partialDependenceは,スパ,ス行列で学習させたモデルオブジェクトをサポ,トしません。モデルに学習させる場合は、行が各観測値に対応する非スパースの数値行列または table を予測子データに使用してください。

分類モデル。完全またはコンパクトなモデルオブジェクトとして指定します。サポ,トされるモデルは次の表に記載されています。

モデル 完全またはコンパクトなモデルオブジェクト
判別分析分類器 ClassificationDiscriminantCompactClassificationDiscriminant
サポ,トベクタ,マシンまたはその他の分類器用のマルチクラスモデル ClassificationECOCCompactClassificationECOC
分類用のアンサンブル学習器 ClassificationEnsembleCompactClassificationEnsembleClassificationBaggedEnsemble
一般化加法モデル(gam) ClassificationGAMCompactClassificationGAM
ランダムな特徴量拡張を使用したガウスカ,ネル分類モデル ClassificationKernel
K最近傍分類器 ClassificationKNN
線形分類モデル ClassificationLinear
マルチクラス単純ベ@ @ズモデル ClassificationNaiveBayesCompactClassificationNaiveBayes
ニュ,ラルネットワ,ク分類器 ClassificationNeuralNetworkCompactClassificationNeuralNetwork
1クラスおよびバナリ分類用のサポトベクタマシン(svm)分類器 ClassificationSVMCompactClassificationSVM
マルチクラス分類用の二分決定木 ClassificationTreeCompactClassificationTree
決定木のバギングアンサンブル TreeBaggerCompactTreeBagger

ClassificationMdlが予測子デ,タを含まないモデルオブジェクト(コンパクトなモデルなど)である場合,入力引数数据を指定しなければなりません。

partialDependenceは,スパ,ス行列で学習させたモデルオブジェクトをサポ,トしません。モデルに学習させる場合は、行が各観測値に対応する非スパースの数値行列または table を予測子データに使用してください。

予測子変数。正の整数のベクトル、文字ベクトル、string スカラー、string 配列、または文字ベクトルの cell 配列として指定します。次の表に示されているように、1 つまたは 2 つの予測子変数を指定できます。

1の予測子変数

説明
正の整数 予測子デタの列に対応するンデックス値。
文字ベクトルまたは字符串スカラ

予測子変数の名前。名前はRegressionMdl。PredictorNamesまたはClassificationMdl。PredictorNamesのエントリに一致しなければなりません。

2の予測子変数

説明
正の整数が2含まれているベクトル 予測子デタの列に対応するンデックス値。
文字ベクトルのcell配列または字符串配列

予測子変数の名前。配列の各要素は予測子変数の名前です。名前はRegressionMdl。PredictorNamesまたはClassificationMdl。PredictorNamesのエントリに一致しなければなりません。

例:{x1, x3的}

デ,タ型:||字符|字符串|细胞

クラスラベル。绝对配列,文字配列、逻辑ベクトル,数値ベクトル,または文字ベクトルの细胞配列を指定します。标签の値とデ,タ型は,ClassificationMdl一会プロパティ(ClassificationMdl。一会)のクラス名のものと一致しなければなりません。

1または複数のクラスラベルを指定できます。

この引数は,ClassificationMdlが分類モデルオブジェクトである場合のみ有効です。

例:{“红”、“蓝”}

例:ClassificationMdl。3类名([1])は,ClassificationMdlの1番目と3番目のクラスとして标签を指定します。

デ,タ型:||逻辑|字符|细胞|分类

予測子デ,タ。数値行列またはテブルとして指定します。数据の各行は1の観測値に対応し,各列は1。

数据は,Xまたは变量プロパティに格納されている、モデル(RegressionMdlまたはClassificationMdl)の学習に使用した予測子デ,タと一致しなければなりません。

  • 数値行列を使用してモデルに学習をさせた場合,数据は数値行列でなければなりません。数据の列を構成する変数の個数と順序は,モデルに学習をさせた予測子変数のものと同じでなければなりません。

  • 表(たとえば资源描述)を使用してモデルに学習をさせた場合,数据は表でなければなりません。数据内のすべての予測子変数は,変数名およびデ,タ型が资源描述のものと同じでなければなりません。ただし,数据の列の順序が资源描述の列の順序に対応する必要はありません。

  • partialDependenceはスパ,ス行列をサポ,トしません。

RegressionMdlまたはClassificationMdlが予測子デ,タを含まないモデルオブジェクトである場合,数据を指定しなければなりません。モデルが予測子デ,タを含む完全なモデル オブジェクトである場合にこの引数を指定すると、partialDependenceはモデルの予測子デ,タを使用せず,数据のみを使用します。

デ,タ型:||表格

名前と値のペアの引数

オプションの名称,值引数のコンマ区切りペアを指定します。的名字は引数名で,价值は対応する値です。的名字は引用符で囲まなければなりません。Name1, Value1,…,的家のように,複数の名前と値のペアの引数を,任意の順番で指定できます。

例:partialDependence (Mdl、var、数据“NumObservationsToSample”,100年,“UseParallel”,真的)は,数据から抽出した100個の観測値を使用し,ル,プの反復を並列実行することにより,部分従属の値を計算します。

部分従属の計算に,一般化加法モデル(gam)の交互作用項を含めるフラグ。真正的またはとして指定します。この引数は,GAM の場合のみ有効です。つまり、この引数を指定できるのは、RegressionMdlRegressionGAMまたはCompactRegressionGAMである場合か,ClassificationMdlClassificationGAMまたはCompactClassificationGAMである場合だけです。

モデルに交互作用項が含まれる場合,“IncludeInteractions”の既定値は真正的です。モデルに交互作用項が含まれない場合,値はでなければなりません。

例:“IncludeInteractions”,假的

デ,タ型:逻辑

部分従属の計算に一般化加法モデル(gam)の切片項を含むというフラグ。真正的またはとして指定します。この引数は,GAM の場合のみ有効です。つまり、この引数を指定できるのは、RegressionMdlRegressionGAMまたはCompactRegressionGAMである場合か,ClassificationMdlClassificationGAMまたはCompactClassificationGAMである場合だけです。

例:“IncludeIntercept”,假的

デ,タ型:逻辑

抽出する観測値の個数。正の整数として指定します。既定値は、数据またはモデル(RegressionMdlまたはClassificationMdl)内の観測値の総数です。観測値の総数より大きい値が指定された場合、partialDependenceはすべての観測値を使用します。

partialDependenceは,関数datasampleを使用して観測値を非復元抽出し,抽出した観測値を部分従属の計算に使用します。

例:“NumObservationsToSample”,100年

デ,タ型:|

数値予測子の部分従属を計算する点。数値列ベクトル、2列の数値行列、または 2 つの数値列ベクトルの cell 配列として指定します。

  • var内の予測子変数を1選択する場合,数値列ベクトルを使用します。

  • var内の予測子変数を2選択する場合,次のようにします。

    • 各予測子変数にいて同じ個数の点を指定するには,2列の数値行列を使用します。

    • 各予測子変数について異なる個数の点を指定するには,2つの数値列ベクトルから成る细胞配列を使用します。

既定値は,数値列ベクトルまたは2列の数値行列で,選択した予測子変数の数に応じて決まります。各列には,予測子変数に対応する抽出した観測値の最小値と最大値の間に等間隔に並ぶ100個の点が含まれます。

カテゴリカル変数の“QueryPoints”は変更できません。関数partialDependenceでは,選択した変数としてすべてカテゴリカル値を使用します。

1つの数値変数と1つのカテゴリカル変数を選択した場合,数値列ベクトルと空の配列で構成される细胞配列を使用することにより,数値変数について“QueryPoints”を指定できます。

例:QueryPoints, {pt, []}

デ,タ型:||细胞

並列実行のフラグ。真正的またはとして指定します。“UseParallel”,真的を指定した場合,関数partialDependenceは各観測値の応答またはスコアの予測と平均化を行う際,parforを使用してル,プの反復を並列実行します。このオプションには并行计算工具箱™が必要です。

例:“UseParallel”,真的

デ,タ型:逻辑

出力引数

すべて折りたたむ

部分従属の値。numXnumY列の数値行列(回帰モデル用)またはnumLabelsxnumXxnumY数値配列(分類モデル用)として返されます。numXnumYはそれぞれ,varの1目と2。numLabels标签のクラスラベルの数です。

pd (i, j, k)の値は,番目のクラスラベルにおけるクエリ点x(j)y(k)の部分従属の値です。x(j)は1目の予測子変数におけるj番目のクエリ点で,y(k)は2目の予測子変数におけるk番目のクエリ点です。

varの1目の予測子変数のクエリ点。数値列ベクトルまたは分类列ベクトルとして返されます。

予測子変数が数値の場合,名前と値のペアの引数“QueryPoints”の使用してクエリ点を指定できます。

デ,タ型:||分类

varの2目の予測子変数のクエリ点。数値列ベクトルまたは分类列ベクトルとして返されます。

予測子変数が数値の場合,名前と値のペアの引数“QueryPoints”の使用してクエリ点を指定できます。

デ,タ型:||分类

詳細

すべて折りたたむ

回帰モデルの部分従属

部分従属[1]は,学習済みの回帰モデルにおける予測子変数と予測応答の関係を表します。partialDependenceは,他の変数を除外することにより,予測子変数のサブセットにおける予測応答の部分従属を計算します。

予測子変数全体の集合X = {X1, x2,…,xのサブセットx年代における部分従属にいて考えます。サブセットx年代には1または2の変数が含まれます(X年代= {xS1またはX年代= {xS1, xS2)。XCはxにおけるx年代の補集合であるとします。予測応答f(X)は,X内のすべての変数に依存します。

f(X) = f(X年代, XC).

X年代に対する予測応答の部分従属は,xCに関する予測応答の期待値によって定義されます。

f 年代 ( X 年代 = E C f ( X 年代 X C = f ( X 年代 X C p C ( X C d X C

ここで,pC(XC)はxCの周辺確率です。まり, p C ( X C p ( X 年代 X C d X 年代 です。各観測値の確率が同程度であり,応答におけるx年代とXCの間の従属およびx年代とXCの交互作用が強くないと仮定することにより,partialDependenceは観測された予測子デ,タを使用して次のように部分従属を推定します。

f 年代 ( X 年代 1 N = 1 N f ( X 年代 X C (1)

ここで,nは観測値の個数,XX = (年代, XCは我番目の観測値です。

関数partialDependenceを呼び出す場合,入力引数RegressionMdlvarを使用して,学習済みモデル(f(·))の指定と変数(X年代)の選択をそれぞれ行うことができます。partialDependenceは,x年代からの100個の等間隔の点,または名前と値のペアの引数“QueryPoints”で指定された点における部分従属を計算します。特定の予測子デ,タから抽出する観測値の個数(n)は,名前と値のペアの引数“NumObservationsToSample”を使用して指定できます。

部分従属分類モデル

分類モデルの場合,partialDependenceは,回帰モデルと同じ方法で部分従属を計算します。1つ違う点として、関数はモデルからの予測応答ではなく、标签で指定されたクラスの予測スコアを使用します。

重み付き走査アルゴリズム

重み付き走査アルゴリズム[1]は,木ベ,スのモデルの部分従属を推定する手法です。推定される部分従属は,木の走査時に到達した葉ノ,ドに対応する応答またはスコアの値の加重平均です。

X年代は変数全体の集合xのサブセットxCはxにおけるx年代の補集合であるとします。このアルゴリズムでは,部分従属を計算するx年代の各値について,ルート(開始)ノードから葉(終端)ノードに向かって木を走査し,葉ノードの重みを求めます。走査は,ル,トノ,ドに1という重みの値を割り当てることにより始まります。X年代でノ,ドが分割される場合,x年代の値に応じて適切な子ノ,ドが走査されます。子ノ,ドの重みは親ノ,ドと同じになります。XCでノ,ドが分割される場合,両方の子ノ,ドが走査されます。各子ノ,ドの重みは,各子ノ,ドに対応する観測値の比率を親ノ,ドの値に乗算した値になります。木の走査の完了後,割り当てられた重みを使用して加重平均が計算されます。

バギング木のアンサンブルの場合,推定される部分従属は,各木の加重平均の平均です。

アルゴリズム

partialDependenceは,関数预测を使用して応答またはスコアを予測します。partialDependenceは、モデル(RegressionMdlまたはClassificationMdl)に従って適切な関数预测を選択し,既定の設定で预测を実行します。各関数预测の詳細にいては,次の2预测を参照してください。指定したモデルが木ベ,スのモデル(木のブ,スティングアンサンブルを除く)の場合,partialDependenceは関数预测ではなく重み付き走査アルゴリズムを使用します。詳細にいては,重み付き走査アルゴリズムを参照してください。

回帰モデルオブジェクト

モデルタ@ @プ 完全またはコンパクトな回帰モデルオブジェクト 応答を予測する関数
決定木のアンサンブルのバギング CompactTreeBagger 预测
決定木のアンサンブルのバギング TreeBagger 预测
回帰モデルのアンサンブル RegressionEnsembleRegressionBaggedEnsembleCompactRegressionEnsemble 预测
ランダムな特徴量拡張を使用したガウスカ,ネル回帰モデル RegressionKernel 预测
ガウス過程回帰 RegressionGPCompactRegressionGP 预测
一般化加法モデル RegressionGAMCompactRegressionGAM 预测
一般化線形混合効果モデル GeneralizedLinearMixedModel 预测
一般化線形モデル GeneralizedLinearModelCompactGeneralizedLinearModel 预测
線形混合効果モデル LinearMixedModel 预测
線形回帰 LinearModelCompactLinearModel 预测
高次元デ,タの線形回帰 RegressionLinear 预测
ニュ,ラルネットワ,ク回帰モデル RegressionNeuralNetworkCompactRegressionNeuralNetwork 预测
非線形回帰 NonLinearModel 预测
回帰木 RegressionTreeCompactRegressionTree 预测
サポ,トベクタ,マシン RegressionSVMCompactRegressionSVM 预测

分類モデルオブジェクト

モデルタ@ @プ 完全またはコンパクトな分類モデルオブジェクト ラベルとスコアを予測する関数
判別分析分類器 ClassificationDiscriminantCompactClassificationDiscriminant 预测
サポ,トベクタ,マシンまたはその他の分類器用のマルチクラスモデル ClassificationECOCCompactClassificationECOC 预测
分類用のアンサンブル学習器 ClassificationEnsembleCompactClassificationEnsembleClassificationBaggedEnsemble 预测
ランダムな特徴量拡張を使用したガウスカ,ネル分類モデル ClassificationKernel 预测
一般化加法モデル ClassificationGAMCompactClassificationGAM 预测
K最近傍モデル ClassificationKNN 预测
線形分類モデル ClassificationLinear 预测
単純ベ@ @ズモデル ClassificationNaiveBayesCompactClassificationNaiveBayes 预测
ニュ,ラルネットワ,ク分類器 ClassificationNeuralNetworkCompactClassificationNeuralNetwork 预测
1クラスおよびバナリ分類用のサポトベクタマシン ClassificationSVMCompactClassificationSVM 预测
マルチクラス分類用の二分決定木 ClassificationTreeCompactClassificationTree 预测
決定木のバギングアンサンブル TreeBaggerCompactTreeBagger 预测

代替機能

参照

弗里德曼,杰罗姆。《贪婪函数逼近:梯度增强机》《统计年鉴》第29页,没有。5(2001): 1189-1232。

哈斯蒂、特雷弗、罗伯特·蒂布谢拉尼和杰罗姆·弗里德曼。统计学习的要素。纽约,纽约州:施普林格纽约,2009。

拡張機能

R2020bで導入