Main Content

plot

共変量残存耐用期間モデルの生存時間関数のプロット

説明

plot(mdl) は、当てはめられた共変量生存モデル mdl のベースラインの生存時間関数を、それが計算されたライフタイム値に対してプロットします。プロット データは、mdlBaselineCumulativeHazard プロパティに保存されます。

plot(mdl,covariates) は、covariates の共変量データに対して計算された生存時間関数をプロットします。生存時間関数を取得するには、共変量を使用してハザード率を計算し、ベースラインの生存時間関数と結合します。

すべて折りたたむ

学習データを読み込みます。

load('covariateData.mat')

このデータには、電池の放電時間や関連する共変量情報が含まれています。共変量変数は以下のとおりです。

  • 温度

  • 負荷

  • 製造元

製造元情報は、符号化する必要があるカテゴリカル変数です。

共変量生存モデルを作成します。

mdl = covariateSurvivalModel;

学習データを使用して、ライフタイム変数、データ変数、符号化された変数を指定し、生存モデルに学習させます。この学習データには打ち切り変数がありません。

fit(mdl,covariateData,"DischargeTime",["Temperature","Load","Manufacturer"],[],"Manufacturer")
Successful convergence: Norm of gradient less than OPTIONS.TolFun

モデルのベースラインの生存時間関数をプロットします。

plot(mdl)

学習データを読み込みます。

load('covariateData.mat')

このデータには、電池の放電時間や関連する共変量情報が含まれています。共変量変数は以下のとおりです。

  • 温度

  • 負荷

  • 製造元

製造元情報は、符号化する必要があるカテゴリカル変数です。

共変量生存モデルを作成し、学習データを使用して学習させます。

mdl = covariateSurvivalModel('LifeTimeVariable',"DischargeTime",'LifeTimeUnit',"hours",...
   'DataVariables',["Temperature","Load","Manufacturer"],'EncodedVariables',"Manufacturer");
fit(mdl,covariateData)
Successful convergence: Norm of gradient less than OPTIONS.TolFun

たとえば、製造元が B 社で、30 時間稼働したバッテリー パックがあるとします。使用時間 DischargeTime、測定された周囲温度 TestAmbientTemperature、電流 TestBatteryLoad を含むテスト データ table を作成します。

TestBatteryLoad = 25;
TestAmbientTemperature = 60; 
DischargeTime = hours(30);
TestData = timetable(TestAmbientTemperature,TestBatteryLoad,"B",'RowTimes',hours(30));
TestData.Properties.VariableNames = {'Temperature','Load','Manufacturer'};
TestData.Properties.DimensionNames{1} = 'DischargeTime';

バッテリーの RUL を予測します。

estRUL = predictRUL(mdl,TestData)
estRUL = duration
   38.332 hr

バッテリーの共変量データの生存時間関数をプロットします。

plot(mdl,TestData)

入力引数

すべて折りたたむ

共変量生存 RUL モデル。covariateSurvivalModel オブジェクトとして指定します。

plot は、2 列配列である mdlBaselineCumulativeHazard プロパティにデータをプロットします。2 列目にはベースラインの生存時間関数の値が含まれ、1 列目には対応するライフタイム値が含まれます。ライフタイム値は、mdlLifeTimeUnits プロパティで指定された単位でプロットされます。

コンポーネントの現在の共変量値。以下として指定します。

  • コンポーネントの共変量値のみを指定し、ライフタイム値を指定しない行ベクトル。共変量値の数は、fit を用いて mdl を推定する際に使用する共変量データ列の数と順序に一致させる必要があります。

  • 1 行の table または 1 行の timetable。table には、mdlDataVariables プロパティで指定された変数を含める必要があります。

共変量データに符号化された変数が含まれる場合は、table または timetable を使用して covariates を指定する必要があります。

生存時間関数を取得するには、共変量を使用してハザード率を計算し、ベースラインの生存時間関数と結合します。詳細については、コックス比例ハザード モデルを参照してください。

バージョン履歴

R2018a で導入