このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
CompactRegressionGP
パッケージ: classreg.learning.regr
コンパクトなガウス過程回帰モデル クラス
説明
CompactRegressionGP
は、コンパクトなガウス過程回帰 (GPR) モデルです。コンパクト モデルには GPR モデルの学習に使用したデータが含まれていないため、完全なモデルよりもメモリ消費量が少なくなります。
コンパクト モデルには学習データが含まれていないので、コンパクト モデルを使用しても交差検証など一部のタスクは実行できません。しかし、コンパクト モデルは、新しいデータの予測や回帰損失の計算には使用できます (predict
と loss
を使用)。
構築
CompactRegressionGP
オブジェクトは、compact
を使用して完全な RegressionGP
モデル オブジェクトから作成します。
プロパティ
FitMethod
— パラメーター推定に使用された方式
'none'
| 'exact'
| 'sd'
| 'sr'
| 'fic'
GPR モデルの基底関数係数 β、ノイズ標準偏差 σ およびカーネル パラメーター θ の推定に使用された方式。文字ベクトルとして格納されます。次のいずれかになります。
近似方式 | 説明 |
---|---|
'none' | 推定を行いません。fitrgp はパラメーター値として初期パラメーター値を使用します。 |
'exact' | 厳密なガウス過程回帰。 |
'sd' | データ点サブセット近似。 |
'sr' | 回帰変数サブセット近似。 |
'fic' | 完全独立条件近似。 |
BasisFunction
— 明示的な基底関数
'none'
| 'constant'
| 'linear'
| 'pureQuadratic'
| 関数ハンドル
GPR モデルで使用される明示的な基底関数。文字ベクトルまたは関数ハンドルとして格納されます。次のいずれかになります。観測値の数が n の場合、基底関数は H*β という項をモデルに追加します。ここで、H は基底行列、β は p 行 1 列の基底係数のベクトルです。
明示的な基底関数 | 基底行列 |
---|---|
'none' | 空の行列。 |
'constant' |
(1 から成る n 行 1 列のベクトル。n は観測値の個数) |
'linear' |
|
'pureQuadratic' | ここで |
関数ハンドル |
ここで、 |
データ型: char
| function_handle
CategoricalPredictors
— カテゴリカル予測子のインデックス
正の整数のベクトル | []
カテゴリカル予測子のインデックス。正の整数のベクトルとして指定します。CategoricalPredictors
には、対応する予測子がカテゴリカルであることを示すインデックス値が格納されます。インデックス値の範囲は 1 ~ p
です。p
はモデルの学習に使用した予測子の数です。どの予測子もカテゴリカルではない場合、このプロパティは空 ([]
) になります。
データ型: single
| double
Beta
— 推定された係数
ベクトル
明示的な基底関数について推定した係数。ベクトルとして格納されます。明示的な基底関数は、fitrgp
で名前と値のペアの引数 BasisFunction
を使用して定義できます。
データ型: double
Sigma
— 推定されたノイズ標準偏差
スカラー値
GPR モデルの推定ノイズ標準偏差。スカラー値として格納されます。
データ型: double
ModelParameters
— 学習に使用されたパラメーター
GPParams
オブジェクト
GPR モデルの学習に使用されたパラメーター。GPParams
オブジェクトとして格納されます。
KernelFunction
— 共分散関数の形式
'squaredExponential'
| 'matern32'
| 'matern52'
| 'ardsquaredexponential'
| 'ardmatern32'
| 'ardmatern52'
| 関数ハンドル
GPR モデルで使用した共分散関数の形式。組み込み共分散関数の名前が含まれる文字ベクトルまたは関数ハンドルとして格納されます。次のいずれかになります。
関数 | 説明 |
---|---|
'squaredexponential' | 二乗指数カーネル。 |
'matern32' | パラメーターが 3/2 の Matern カーネル。 |
'matern52' | パラメーターが 5/2 の Matern カーネル。 |
'ardsquaredexponential' | 予測子ごとに特性長スケールが異なる二乗指数カーネル。 |
'ardmatern32' | パラメーターが 3/2 で予測子ごとに特性長スケールが異なる Matern カーネル。 |
'ardmatern52' | パラメーターが 5/2 で予測子ごとに特性長スケールが異なる Matern カーネル。 |
関数ハンドル | fitrgp で次のように呼び出すことができる関数ハンドル。Kmn = kfcn(Xm,Xn,theta) ここで、 Xm は m 行 d 列の行列、Xn は n 行 d 列の行列、Kmn は Kmn (i,j) が Xm (i,:) と Xn (j,:) の間のカーネル積である m 行 n 列のカーネル積の行列です。theta は kfcn についての制約がない r 行 1 列のパラメーター ベクトルです。 |
データ型: char
| function_handle
KernelInformation
— カーネル関数のパラメーターに関する情報
構造体
GPR モデルで使用されたカーネル関数のパラメーターに関する情報。次のフィールドをもつ構造体として格納されます。
フィールド名 | 説明 |
---|---|
Name | カーネル関数の名前 |
KernelParameters | 推定されるカーネル パラメーターのベクトル |
KernelParameterNames | KernelParameters の要素に関連付けられている名前。 |
データ型: struct
PredictMethod
— 予測を行うための方式
'exact'
| 'bcd'
| 'sd'
| 'sr'
| 'fic'
predict
が GPR モデルから予測を行うために使用した方式。文字ベクトルとして格納されます。次のいずれかになります。
PredictMethod | 説明 |
---|---|
'exact' | 厳密なガウス過程回帰 |
'bcd' | ブロック座標降下 |
'sd' | データ点サブセット近似 |
'sr' | 回帰変数サブセット近似 |
'fic' | 完全独立条件近似 |
Alpha
— 重み
数値ベクトル
学習済みの GPR モデルから予測を行うために使用した重み。数値ベクトルとして格納されます。predict
は、次の積を使用して新しい予測子行列 Xnew
について予測を計算します。
は とアクティブ セット ベクトル A の間のカーネル積の行列、α は重みのベクトルです。
データ型: double
ResponseTransform
— 予測応答に適用する変換
'none'
(既定値)
予測された応答に適用する変換。モデルによって予測された応答値の変換方法を表す文字ベクトルとして格納されます。RegressionGP
では、ResponseTransform
は既定では 'none'
です。RegressionGP
は予測を行うときに ResponseTransform
を使用しません。
ActiveSetVectors
— 学習データのサブセット
行列
GPR モデルから予測を行うために使用した学習データのサブセット。行列として格納されます。
predict
は、次の積を使用して新しい予測子行列 Xnew
について予測を計算します。
は とアクティブ セット ベクトル A の間のカーネル積の行列、α は重みのベクトルです。
ActiveSetVectors
は、厳密な GPR 近似の場合の学習データ X
およびスパースな GPR 法の場合の学習データ X
のサブセットと等しくなります。カテゴリカル予測子がモデルに含まれている場合、対応する予測子についてのダミー変数が ActiveSetVectors
に含まれます。
データ型: double
ActiveSetMethod
— アクティブ セットの選択に使用された方式
'sgma'
| 'entropy'
| 'likelihood'
| 'random'
スパースな方式 ('sd'
、'sr'
または 'fic'
) の場合にアクティブ セットの選択に使用された方式。文字ベクトルとして格納されます。次のいずれかになります。
ActiveSetMethod | 説明 |
---|---|
'sgma' | スパース グリーディ行列近似 |
'entropy' | 微分エントロピーに基づく選択 |
'likelihood' | 回帰変数サブセットの対数尤度に基づく選択 |
'random' | 無作為選択 |
選択したアクティブ セットは、fitrgp
における FitMethod
と PredictMethod
の選択に応じて、パラメーターの推定または予測で使用されます。
ActiveSetSize
— アクティブ セットのサイズ
整数値
スパースな方式 ('sd'
、'sr'
または 'fic'
) の場合のアクティブ セットのサイズ。整数値として格納されます。
データ型: double
オブジェクト関数
lime | Local Interpretable Model-agnostic Explanations (LIME) |
loss | ガウス過程回帰モデルの回帰誤差 |
partialDependence | 部分従属の計算 |
plotPartialDependence | 部分依存プロット (PDP) および個別条件付き期待値 (ICE) プロットの作成 |
predict | ガウス過程回帰モデルの予測応答 |
shapley | シャープレイ値 |
例
検定データの予測と回帰損失の計算
学習データのサンプルを生成します。
rng(1) % For reproducibility
n = 100000;
X = linspace(0,1,n)';
X = [X,X.^2];
y = 1 + X*[1;2] + sin(20*X*[1;-2]) + 0.2*randn(n,1);
回帰変数のサブセット ('sr'
) による近似法を使用して GPR モデルに学習をさせ、データ サブセット ('sd'
) 法を使用して予測を行います。アクティブ セットに含まれている 50 個の点を使用します。アクティブ セットの選択には、スパース グリーディ行列近似 ('sgma'
) 法を使用します。1 番目の予測子と 2 番目の予測子ではスケールが異なるので、データを標準化します。
gprMdl = fitrgp(X,y,'KernelFunction','squaredExponential','FitMethod', ... 'sr','PredictMethod','sd','Basis','none','ActiveSetSize',50, ... 'ActiveSetMethod','sgma','Standardize',1,'KernelParameters',[1;1]);
fitrgp
は、近似法、予測法およびアクティブ セット選択法についてどのような組み合わせでも受け入れます。予測した応答の標準偏差を計算できないために予測区間を計算できない場合があります。ヒントを参照してください。また、学習データのサイズのため、厳密法を使用すると計算コストが高くなる場合もあります。
コンパクトな GPR オブジェクトを作成します。
cgprMdl = compact(gprMdl);
検定データを生成します。
n = 4000; Xnew = linspace(0,1,n)'; Xnew = [Xnew,Xnew.^2]; ynew = 1 + Xnew*[1;2] + sin(20*Xnew*[1;-2]) + 0.2*randn(n,1);
コンパクトなオブジェクトを使用して、検定データの応答と予測区間を予測します。
[ypred,~,yci] = predict(cgprMdl,Xnew);
真の応答、予測した応答および予測区間をプロットします。
figure plot(ynew,'r') hold on plot(ypred,'b') plot(yci(:,1),'k--') plot(yci(:,2),'k--') legend('True responses','GPR predictions','95% prediction limits','Location','Best') xlabel('x') ylabel('y') hold off
学習済みの GPR モデルを使用して、検定データの二乗平均誤差損失を計算します。
L = loss(cgprMdl,Xnew,ynew)
L = 0.0497
コピーのセマンティクス
値。値のクラスがコピー操作に与える影響については、オブジェクトのコピーを参照してください。
拡張機能
バージョン履歴
R2015b で導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)