ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

CompactRegressionGP

パッケージ: classreg.learning.regr

コンパクトなガウス過程回帰モデル クラス

説明

CompactRegressionGP は、コンパクトなガウス過程回帰 (GPR) モデルです。コンパクト モデルには GPR モデルの学習に使用したデータが含まれていないため、フル モデルよりもメモリ消費量が少なくなります。

コンパクト モデルには学習データが含まれていないので、コンパクト モデルを使用しても交差検証など一部のタスクは実行できません。しかし、コンパクト モデルは、新しいデータの予測や回帰損失の計算には使用できます (predictloss を使用)。

構築

compactMdl = compact(gprMdl) は、完全な学習済み GPR モデル gprMdl からコンパクトな GPR モデル compactMdl を返します。詳細については、compact を参照してください。

入力引数

すべて展開する

完全な学習済みガウス過程回帰モデル。fitrgp が返した RegressionGP モデルを指定します。

プロパティ

すべて展開する

近似

GPR モデルの基底関数係数 β、ノイズ標準偏差 σ およびカーネル パラメーター θ の推定に使用された方式。文字ベクトルとして格納されます。次のいずれかになります。

近似方式説明
'none'推定を行いません。fitrgp はパラメーター値として初期パラメーター値を使用します。
'exact'厳密なガウス過程回帰。
'sd'データ点サブセット近似。
'sr'回帰変数サブセット近似。
'fic'完全独立条件近似。

GPR モデルで使用される明示的な基底関数。文字ベクトルまたは関数ハンドルとして格納されます。次のいずれかになります。観測値の数が n の場合、基底関数は H*β という項をモデルに追加します。ここで、H は基底行列、β は p 行 1 列の基底係数のベクトルです。

明示的な基底関数基底行列
'none'空の行列。
'constant'

H=1

(1 から成る n 行 1 列のベクトル。n は観測値の数)

'linear'

H=[1,X]

'pureQuadratic'

H=[1,X,X2],

ここで

X2=[x112x122x1d2x212x222x2d2xn12xn22xnd2].

関数ハンドル

関数ハンドル hfcnfitrgp は次のように呼び出します。

H=hfcn(X),

ここで、X は n 行 d 列の予測子の行列、H は n 行 p 列の基底関数の行列です。

データ型: char | function_handle

カテゴリカル予測子のインデックス。正の整数のベクトルを指定します。CategoricalPredictors には、カテゴリカル予測子が含まれている予測子データの列に対応するインデックス値を格納します。どの予測子もカテゴリカルではない場合、このプロパティは空 ([]) になります。

データ型: single | double

明示的な基底関数について推定した係数。ベクトルとして格納されます。明示的な基底関数は、fitrgp で名前と値のペアの引数 BasisFunction を使用して定義できます。

データ型: double

GPR モデルの推定ノイズ標準偏差。スカラー値として格納されます。

データ型: double

GPR モデルの学習に使用されたパラメーター。GPParams オブジェクトとして格納されます。

カーネル関数

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 列の行列、KmnKmn(i,j) が Xm(i,:) と Xn(j,:) の間のカーネル積である m 行 n 列のカーネル積の行列です。
thetakfcn についての制約がない r 行 1 列のパラメーター ベクトルです。

データ型: char | function_handle

GPR モデルで使用されたカーネル関数のパラメーターに関する情報。次のフィールドをもつ構造体として格納されます。

フィールド名説明
Nameカーネル関数の名前
KernelParameters推定されるカーネル パラメーターのベクトル
KernelParameterNamesKernelParameters の要素に関連付けられている名前。

データ型: 構造体

予測

predict が GPR モデルから予測を行うために使用した方式。文字ベクトルとして格納されます。次のいずれかになります。

PredictMethod説明
'exact'厳密なガウス過程回帰
'bcd'ブロック座標降下
'sd'データ点サブセット近似
'sr'回帰変数サブセット近似
'fic'完全独立条件近似

学習済みの GPR モデルから予測を行うために使用した重み。数値ベクトルとして格納されます。predict は、次の積を使用して新しい予測子行列 Xnew について予測を計算します。

K(Xnew,A)*α.

K(Xnew,A)Xnew とアクティブ セット ベクトル A の間のカーネル積の行列、α は重みのベクトルです。

データ型: double

予測された応答に適用する変換。モデルによって予測された応答値の変換方法を表す文字ベクトルとして格納されます。RegressionGP では、ResponseTransform は既定では 'none' です。RegressionGP は予測を行うときに ResponseTransform を使用しません。

アクティブ セットの選択

GPR モデルから予測を行うために使用した学習データのサブセット。行列として格納されます。

predict は、次の積を使用して新しい予測子行列 Xnew について予測を計算します。

K(Xnew,A)*α.

K(Xnew,A)Xnew とアクティブ セット ベクトル A の間のカーネル積の行列、α は重みのベクトルです。

ActiveSetVectors は、厳密な GPR 近似の場合の学習データ X およびスパースな GPR 法の場合の学習データ X のサブセットと等しくなります。カテゴリカル予測子がモデルに含まれている場合、対応する予測子についてのダミー変数が ActiveSetVectors に含まれます。

データ型: double

スパースな方式 ('sd''sr' または 'fic') の場合にアクティブ セットの選択に使用された方式。文字ベクトルとして格納されます。次のいずれかになります。

ActiveSetMethod説明
'sgma'スパース グリーディ行列近似
'entropy'微分エントロピーに基づく選択
'likelihood'回帰変数サブセットの対数尤度に基づく選択
'random'無作為選択

選択したアクティブ セットは、fitrgp における FitMethodPredictMethod の選択に応じて、パラメーターの推定または予測で使用されます。

スパースな方式 ('sd''sr' または 'fic') の場合のアクティブ セットのサイズ。整数値として格納されます。

データ型: double

メソッド

lossガウス過程回帰モデルの回帰誤差
predictガウス過程回帰モデルの予測応答

コピーのセマンティクス

値。値のクラスがコピー操作に与える影響については、オブジェクトのコピー (MATLAB)を参照してください。

拡張機能

R2015b で導入