ドキュメンテーション

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

RegressionGP クラス

スーパークラス: CompactRegressionGP

ガウス過程回帰モデル クラス

説明

RegressionGP は、ガウス過程回帰 (GPR) モデルです。GPR モデルを学習させるには、fitrgp を使用します。学習済みのモデルを使用して次を行えます。

  • resubPredict を使用した学習データの応答の予測、または predict を使用した新しい予測子データの応答の予測。予測区間を計算することもできます。

  • resubLoss を使用した学習データの回帰損失の計算、または loss を使用した新しいデータの回帰損失の計算。

構築

RegressionGP オブジェクトの作成には fitrgp を使用します。

プロパティ

すべて展開する

近似

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

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

データ型: double

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

データ型: double

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

データ型: single | double

ハイパーパラメーターの交差検証最適化の説明。BayesianOptimization オブジェクト、またはハイパーパラメーターおよび関連する値が含まれているテーブルを指定します。モデルを作成するときに名前と値のペアの引数 'OptimizeHyperparameters' が空以外であった場合、このプロパティは空以外になります。HyperparameterOptimizationResults の値は、次の表で説明されているように、モデル作成時の構造体 OptimizerHyperparameterOptimizationOptions フィールドの設定によって変化します。

Optimizer フィールドの値HyperparameterOptimizationResults の値
'bayesopt' (既定の設定)BayesianOptimization クラスのオブジェクト
'gridsearch' または 'randomsearch'使用したハイパーパラメーター、観測された目的関数の値 (交差検証損失)、および最低 (最良) から最高 (最悪) までの観測値の順位が格納されているテーブル

最大化した GPR モデルの周辺対数尤度。FitMethod'none' 以外の場合、スカラー値として格納されます。FitMethod'none' の場合、LogLikelihood は空になります。

FitMethod'sd''sr' または 'fic' の場合、LogLikelihood は 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

PredictMethod'bcd' の場合の、ブロック座標降下 (BCD) に基づく Alpha の計算に関する情報。次のフィールドが含まれている構造体として返されます。

フィールド名説明
Gradient収束時の BCD 目的関数の勾配が含まれている n 行 1 列の行列。
Objective収束時の BCD 目的関数が含まれているスカラー。
SelectionCountsBCD において各点をブロックに選択した回数を示す n 行 1 列の整数ベクトル。

Alpha プロパティには、BCD から計算したベクトル Alpha が格納されます。

PredictMethod'bcd' ではない場合、BCDInformation は空になります。

データ型: 構造体

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

アクティブ セットの選択

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

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

K(Xnew,A)*α.

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

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

データ型: double

FitMethod'sd''sr' または 'fic' に等しい場合のインターリーブ方式によるアクティブ セット選択とパラメーター推定の履歴。次のフィールドをもつ構造体として格納されます。

フィールド名説明
ParameterVector基底関数の係数 β、カーネル関数のパラメーター θ およびノイズ標準偏差 σ というパラメーター ベクトルが含まれている cell 配列。
ActiveSetIndicesアクティブ セットのインデックスが含まれている cell 配列。
Loglikelihood最大化した対数尤度が含まれているベクトル。
CriterionProfileアクティブ セットのサイズが 0 から最終的なサイズに増加する場合のアクティブ セット選択基準値を含む cell 配列。

データ型: 構造体

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

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

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

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

データ型: double

学習済み GPR モデルから予測を行うためにアクティブ セットを選択するためのインジケーター。logical ベクトルとして格納されます。これらのインジケーターは、fitrgp がアクティブ セットとして選択する学習データのサブセットを示します。たとえば、X が元の学習データである場合、ActiveSetVectors = X(IsActiveSetVector,:) になります。

データ型: logical

学習データ

学習データに含まれている観測値の数。スカラー値として格納されます。

データ型: double

学習データ。n 行 d 列のテーブルまたは行列として格納されます。n は学習データに含まれている観測値の数、d は予測子変数 (列) の数です。テーブルに対して GPR モデルを学習させた場合、X はテーブルになります。それ以外の場合、X は行列になります。

データ型: double | テーブル

GPR モデルを学習させるために使用した、観測された応答値。n 行 1 列のベクトルとして格納されます。n は観測値の数です。

データ型: double

GPR モデルで使用した予測子の名前。文字ベクトルの cell 配列として格納されます。それぞれの名前 (セル) は、X の列に対応します。

データ型: cell

GPR モデルの展開された予測子の名前。文字ベクトルの cell 配列として格納されます。それぞれの名前 (セル) は、ActiveSetVectors の列に対応します。

モデルでカテゴリカル変数用にダミー変数を使用している場合、ExpandedPredictorNames には展開された変数を表す名前が含まれます。それ以外の場合、ExpandedPredictorNamesPredictorNames と同じです。

データ型: cell

GPR モデルにおける応答変数の名前。文字ベクトルとして格納されます。

データ型: char

学習データを標準化した場合に GPR モデルを学習させるために使用した予測子の平均。1 行 d 列のベクトルとして格納されます。学習データを標準化しなかった場合、PredictorLocation は空になります。

PredictorLocation が空ではない場合、predict メソッドは X のすべての列から PredictorLocation の対応する要素を減算することにより、予測子の値をセンタリングします。

カテゴリカル予測子がある場合、そのような予測子に対応する各ダミー変数について PredictorLocation の要素は 0 になります。ダミー変数は、センタリングもスケーリングもされません。

データ型: double

学習データを標準化した場合に GPR モデルを学習させるために使用した予測子の標準偏差。1 行 d 列のベクトルとして格納されます。学習データを標準化しなかった場合、PredictorScale は空になります。

PredictorScale が空ではない場合、predict メソッドは (PredictorLocation を使用してセンタリングした後で) X のすべての列を PredictorScale の対応する要素で除算することにより、予測子をスケーリングします。

カテゴリカル予測子がある場合、そのような予測子に対応する各ダミー変数について PredictorLocation の要素は 1 になります。ダミー変数は、センタリングもスケーリングもされません。

データ型: double

GPR モデルを学習させるために使用した行のインジケーター。logical ベクトルとして格納されます。すべての行をモデルの学習に使用した場合、RowsUsed は空になります。

データ型: logical

メソッド

compactコンパクトなガウス過程回帰モデルの作成
crossvalガウス過程回帰モデルの交差検証
postFitStatistics厳密ガウス過程回帰モデルの当てはめ統計量の計算
resubLoss学習済みガウス過程回帰モデルの再代入損失
resubPredict学習済みガウス過程回帰モデルによる再代入予測

継承メソッド

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

詳細

すべて展開する

ヒント

  • このクラスのプロパティには、ドット表記を使用してアクセスできます。たとえば、KernelInformation はカーネル パラメーターとその名前が保持される構造体です。したがって、学習済みモデル gprMdl のカーネル関数のパラメーターにアクセスするには、gprMdl.KernelInformation.KernelParameters を使用します。

拡張機能

R2015b で導入