回帰モデルの学習を行い,沙普利
オブジェクトを作成します。オブジェクト関数适合
を使用して,指定したクエリ点のシャープレイ値を計算します。次に,オブジェクト関数情节
を使用して,予測子のシャープレイ値をプロットします。関数情节
を呼び出すときにプロットする重要な予測子の数を指定します。
carbig
データセットを読み込みます。このデータセットには,1970年代と1980年代初期に製造された自動車の測定値が格納されています。
加速度
、气缸
などの予測子変数と応答変数英里/加仑
が格納された表を作成します。
学習セットの欠損値を削除すると,メモリ消費量を減らして関数fitrkernel
の学習速度を向上させることができます。资源描述
の欠損値を削除します。
関数fitrkernel
を使用して英里/加仑
の黑箱モデルの学習を行います。
沙普利
オブジェクトを作成します。mdl
には学習データが含まれないため,データセット资源描述
を指定します。
explainer = shapley with properties: BlackboxModel: [1x1 RegressionKernel] QueryPoint: [] BlackboxFitted: [] ShapleyValues: [] NumSubsets: 64 X: [392x7 table] CategoricalPredictors: [2 5] Method: ' interinteral -kernel'
讲解员
は,学習データ资源描述
をX
プロパティに格納します。
资源描述
の最初の観測値についてすべての予測子変数のシャープレイ値を計算します。
queryPoint =表1×7加速气缸位移马力Model_Year体重MPG ____________ _________ ____________ __________ __________ ______ ___ 12 8 307 130 70 3504
回帰モデルの場合,沙普利
は予測応答を使用してシャープレイ値を計算し,ShapleyValues
プロパティに格納します。ShapleyValues
プロパティの値を表示します。
ans =6×2表预测器ShapleyValue ______________ ____________“加速度”-0.1561“气缸”-0.18306“位移”-0.34203“马力”-0.27291“Model_Year”-0.2926“重量”-0.32402
クエリ点についての予測応答を表示し,関数情节
を使用してクエリ点のシャープレイ値をプロットします。予測子名に含まれるアンダースコアを表示するには,座標軸のTickLabelInterpreter
値を“没有”
に変更します。“NumImportantPredictors”,5
を指定して,予測応答について最も重要な5つの予測子のみをプロットします。
横棒グラフは,絶対値で並べ替えられた,5つの最も重要な予測子のシャープレイ値を示します。各シャープレイ値は,クエリ点についての予測に関して対応する変数が原因で生じた平均からの偏差を説明します。