メインコンテンツ

CompactLinearModel

コンパクトな線形回帰モデル

説明

CompactLinearModel は、完全な線形回帰モデル オブジェクト LinearModel のコンパクトなバージョンです。コンパクトなモデルにはモデルを当てはめるために使用した入力データや当てはめプロセスに関する情報が格納されていないので、CompactLinearModel オブジェクトは LinearModel オブジェクトより消費メモリが少なくなります。コンパクトなモデルと新しい入力データを使用して応答を予測することはできますが、LinearModel オブジェクトの一部の関数はコンパクトなモデルに対して機能しません。

作成

compact を使用して、完全な学習済み LinearModel モデルから CompactLinearModel モデルを作成します。

プロパティ

すべて展開する

係数推定値

この プロパティ は読み取り専用です。

係数推定値の共分散行列。pp 列の数値の行列として表されます。p は、当てはめたモデル内の係数の数であり、NumCoefficients で与えられます。

詳細については、係数の標準誤差と信頼区間を参照してください。

データ型: single | double

この プロパティ は読み取り専用です。

係数の名前。対応する項の名前をそれぞれ含む文字ベクトルの cell 配列として表されます。

データ型: cell

この プロパティ は読み取り専用です。

係数の値。table を指定します。Coefficients には、各係数に対応する 1 つずつの行と次の列が格納されます。

  • Estimate — 推定される係数値

  • SE — 推定の標準誤差

  • tStat — 係数がゼロであるという帰無仮説をもつ両側検定の t 統計量

  • pValuet 統計量の p

係数に対する他の検定を実行するには、anova (線形回帰モデルの場合のみ) または coefTest を使用します。係数推定値の信頼区間を求めるには、coefCI を使用します。

ベクトルとしてこれらの列のいずれかを取得するには、ドット表記を使ってプロパティにインデックスを付けます。たとえば、モデル mdl 内の推定された係数ベクトルを取得するには、次のようにします。

beta = mdl.Coefficients.Estimate

データ型: table

この プロパティ は読み取り専用です。

モデルの係数の数。正の整数として表されます。NumCoefficients には、モデルの項がランク落ちとなる場合にゼロに設定される係数が含まれます。

データ型: double

この プロパティ は読み取り専用です。

モデル内の推定された係数の個数。正の整数を指定します。NumEstimatedCoefficients には、モデルの項がランク落ちとなる場合にゼロに設定される係数は含まれません。NumEstimatedCoefficients は回帰の自由度です。

データ型: double

要約統計量

この プロパティ は読み取り専用です。

誤差 (残差) の自由度。推定された係数の数を観測値の数から減算した値に等しくなります。正の整数として表されます。

データ型: double

この プロパティ は読み取り専用です。

応答値の対数尤度。数値を指定します。各応答値が正規分布に従うという仮定に基づきます。正規分布の平均は当てはめた (予測した) 応答値、分散は MSE です。

データ型: single | double

この プロパティ は読み取り専用です。

モデルの比較基準。次のフィールドをもつ構造体として表されます。

  • AIC — 赤池情報量基準。AIC = –2*logL + 2*m であり、ここで logL は対数尤度、m は推定パラメーターの数です。

  • AICc — 標本サイズについて修正された赤池情報量基準。AICc = AIC + (2*m*(m + 1))/(n – m – 1) であり、ここで n は観測値の数です。

  • BIC — ベイズ情報量基準。BIC = –2*logL + m*log(n) です。

  • CAIC — 一貫した赤池情報量基準。CAIC = –2*logL + m*(log(n) + 1) です。

情報量基準は、同じデータに当てはめた複数のモデルを比較するために使用できるモデル選択ツールです。これらの基準は、尤度に基づくモデル近似の尺度であり、複雑度 (特にパラメーター数) に対するペナルティが含まれています。情報量基準が異なるとペナルティの形式が異なります。

複数のモデルを比較した場合に、情報量基準の値が最も小さいモデルが最適な近似モデルです。最適な近似モデルは、モデルの比較に使用する基準によって変化する可能性があります。

これらの基準値のいずれかをスカラーとして取得するには、ドット表記を使用してプロパティのインデックスを指定します。たとえば、モデル mdl の AIC 値 aic を取得するには、次のようにします。

aic = mdl.ModelCriterion.AIC

データ型: struct

この プロパティ は読み取り専用です。

平均二乗誤差 (残差)。数値を指定します。

MSE = SSE / DFE,

MSE は平均二乗誤差、SSE は残差平方和、DFE は自由度です。

データ型: single | double

この プロパティ は読み取り専用です。

平方根平均二乗誤差 (残差)。数値を指定します。

RMSE = sqrt(MSE),

RMSE は平方根平均二乗誤差、MSE は平均二乗誤差です。

データ型: single | double

この プロパティ は読み取り専用です。

モデルの決定係数の値。2 つのフィールドがある構造体を指定します。

  • Ordinary — 通常の (自由度未調整) 決定係数

  • Adjusted — 係数の数に対する自由度調整済み決定係数

決定係数の値は、モデルによって説明される二乗総和の比率です。通常の決定係数の値は、SSR プロパティおよび SST プロパティに関連します。

Rsquared = SSR/SST,

ここで、SST は二乗総和、SSR は回帰二乗和です。

詳細については、決定係数 (R-squared)を参照してください。

これらの値のいずれかをスカラーとして取得するには、ドット表記を使用してプロパティのインデックスを指定します。たとえば、モデル mdl の自由度調整済み決定係数の値を取得するには、次のようにします。

r2 = mdl.Rsquared.Adjusted

データ型: struct

この プロパティ は読み取り専用です。

誤差 (残差) の二乗和。数値を指定します。観測値の重みを使用して学習させたモデルの場合、SSE の計算の二乗和は重み付き二乗和です。

切片をもつ線形モデルでは、ピタゴラスの定理により、次のようになります。

SST = SSE + SSR,

SST は二乗総和、SSE は残差平方和、SSR は回帰二乗和です。

ロバスト線形モデルにおける SST の計算の詳細については、SST を参照してください。

データ型: single | double

この プロパティ は読み取り専用です。

回帰二乗和。数値を指定します。SSR は、当てはめた値と応答の平均の間における偏差の二乗和に等しい値です。観測値の重みを使用して学習させたモデルの場合、SSR の計算の二乗和は重み付き二乗和です。

切片をもつ線形モデルでは、ピタゴラスの定理により、次のようになります。

SST = SSE + SSR,

SST は二乗総和、SSE は残差平方和、SSR は回帰二乗和です。

ロバスト線形モデルにおける SST の計算の詳細については、SST を参照してください。

データ型: single | double

この プロパティ は読み取り専用です。

二乗の総和。数値を指定します。SST は、mean(y) に対する応答ベクトル y の偏差二乗和に等しい値です。観測値の重みを使用して学習させたモデルの場合、SST の計算の二乗和は重み付き二乗和です。

切片をもつ線形モデルでは、ピタゴラスの定理により、次のようになります。

SST = SSE + SSR,

SST は二乗総和、SSE は残差平方和、SSR は回帰二乗和です。

ロバスト線形モデルの場合、SST は、mean(y) に対する応答ベクトル y の偏差二乗和として計算されません。SST = SSE + SSR のように計算されます。

データ型: single | double

近似法

この プロパティ は読み取り専用です。

ロバスト近似の情報。次の表で説明されているフィールドをもつ構造体を指定します。

フィールド説明
WgtFun'bisquare' などのロバストな重み付け関数 ('RobustOpts' を参照)
Tune調整定数。WgtFun'ols' である場合、または、WgtFun が、既定の調整定数が 1 であるカスタム重み関数の関数ハンドルである場合、このフィールドは空 ([]) です。
Weightsロバスト近似の最後の反復で使用された重みのベクトル。CompactLinearModel オブジェクトの場合、このフィールドは空です。

ロバスト回帰を使用してモデルを当てはめた場合を除き、この構造体は空です。

データ型: struct

入力データ

オブジェクトの作成後、このプロパティは読み取り専用になります。

モデルの情報。LinearFormula オブジェクトとして表されます。

ドット表記を使用して、当てはめたモデル mdl の式を表示します。

mdl.Formula

この プロパティ は読み取り専用です。

近似関数が当てはめで使用した観測値の個数。正の整数を指定します。NumObservations は、元の table、データセットまたは行列で指定された観測値の個数から、除外する行数 (名前と値のペアの引数 'Exclude' で設定) または欠損値が含まれている行数を減算した値です。

データ型: double

オブジェクトの作成後、このプロパティは読み取り専用になります。

モデルの当てはめに使用した予測子変数の数。正の整数として表されます。

データ型: double

オブジェクトの作成後、このプロパティは読み取り専用になります。

入力データに含まれている変数の数。正の整数として表されます。NumVariables は、元の table に含まれている変数の数、または予測子行列と応答ベクトルの列の総数です。

NumVariables には、モデルの当てはめに予測子または応答として使用していない変数もすべて含まれます。

データ型: double

オブジェクトの作成後、このプロパティは読み取り専用になります。

モデルの当てはめに使用した予測子の名前。文字ベクトルの cell 配列として表されます。

データ型: cell

オブジェクトの作成後、このプロパティは読み取り専用になります。

応答変数の名前。文字ベクトルとして表されます。

データ型: char

オブジェクトの作成後、このプロパティは読み取り専用になります。

Variables に格納されている変数に関する情報。変数ごとに 1 つの行と以下に示す列で構成される table として表されます。

説明
Class変数のクラス。'double''categorical' などの文字ベクトルによる cell 配列を指定します。
Range

変数の範囲。ベクトルの cell 配列を指定します。

  • 連続変数 — 2 因子ベクトル [min,max]、最小値と最大値

  • カテゴリカル変数 — 異なる変数値のベクトル

InModel当てはめたモデルにどの変数が含まれているかを示すインジケーター。logical ベクトルを指定します。モデルに変数が含まれている場合、値は true です。
IsCategoricalカテゴリカル変数のインジケーター。logical ベクトルを指定します。変数がカテゴリカルである場合、値は true です。

VariableInfo には、モデルの当てはめに予測子または応答として使用していない変数もすべて含まれます。

データ型: table

オブジェクトの作成後、このプロパティは読み取り専用になります。

変数の名前。文字ベクトルの cell 配列として返されます。

  • 当てはめが table に基づいている場合、その table 内の変数の名前がこのプロパティに格納されます。

  • 当てはめが予測子行列と応答ベクトルに基づいている場合、当てはめ手法の名前と値の引数 VarNames によって指定された値がこのプロパティに格納されます。VarNames の既定値は {'x1','x2',...,'xn','y'} です。

VariableNames には、モデルの当てはめに予測子または応答として使用していない変数もすべて含まれます。

データ型: cell

オブジェクト関数

すべて展開する

feval各予測子について 1 つずつ入力を使用して線形回帰モデルの応答を予測
predict線形回帰モデルの応答を予測
randomランダム ノイズがある応答を線形回帰モデルに対してシミュレート
anova線形回帰モデルの分散分析
coefCI線形回帰モデルの係数推定値の信頼区間
coefTest線形回帰モデルの係数に対する線形仮説検定
partialDependence部分依存の計算
plotEffects線形回帰モデルの予測子の主効果をプロット
plotInteraction線形回帰モデルの 2 つの予測子の交互作用効果のプロット
plotPartialDependence部分依存プロット (PDP) および個別条件付き期待値 (ICE) プロットの作成
plotSlice当てはめた線形回帰面を通るスライスのプロット
gatherGPU からの Statistics and Machine Learning Toolbox オブジェクトのプロパティの収集
optimizeResponsePredictor and response values at response surface maximum or minimum of linear regression model
matchResponsePredictor values at specified response value for linear regression model

すべて折りたたむ

線形回帰モデルをデータに当てはめ、当てはめプロセスに関する情報の一部と標本データを破棄することにより、当てはめた完全な線形回帰モデルのサイズを縮小します。

largedata4reg データ セットを読み込みます。このデータ セットには、15,000 個の観測値と 45 個の予測子変数が含まれています。

load largedata4reg

線形回帰モデルをデータに当てはめます。

mdl = fitlm(X,Y);

モデルを圧縮します。

compactMdl = compact(mdl);

コンパクトなモデルでは、当てはめプロセスに関する一部の情報と元の標本データが破棄されます。

完全なモデル mdl とコンパクト モデル compactMdl のサイズを比較します。

vars = whos('compactMdl','mdl');
[vars(1).bytes,vars(2).bytes]
ans = 1×2

       83260    11410593

コンパクトなモデルは、完全なモデルよりメモリ消費量が少なくなります。

拡張機能

すべて展開する

バージョン履歴

R2016a で導入