fitLGDModel

Создайте заданный тип объекта модели LGD

Описание

пример

lgdModel = fitLGDModel(data,ModelType) создает объект модели по умолчанию (LGD), заданный как data и ModelType. fitLGDModel принимает кредитные данные в табличной форме и подходит для модели LGD. ModelType поддерживается для Regression или Tobit.

пример

lgdModel = fitLGDModel(___,Name,Value) задает опции, использующие один или несколько аргументы пары "имя-значение" в дополнение к входным параметрам в предыдущем синтаксисе. Доступные необязательные аргументы пары "имя-значение" зависят от заданного ModelType.

Примеры

свернуть все

В этом примере показано, как использовать fitLGDModel для создания Regression модель для потерь по умолчанию (LGD).

Загрузка данных LGD

Загрузите данные LGD.

load LGDData.mat
head(data)
ans=8×4 table
      LTV        Age         Type           LGD   
    _______    _______    ___________    _________

    0.89101    0.39716    residential     0.032659
    0.70176     2.0939    residential      0.43564
    0.72078     2.7948    residential    0.0064766
    0.37013      1.237    residential     0.007947
    0.36492     2.5818    residential            0
      0.796     1.5957    residential      0.14572
    0.60203     1.1599    residential     0.025688
    0.92005    0.50253    investment      0.063182

Создание Regression ЛГД- Модели

Использование fitLGDModel для создания Regression модели с использованием data.

lgdModel = fitLGDModel(data,'regression',...
        'ModelID','Example',...
        'Description','Example LGD regression model.',...
        'PredictorVars',{'LTV' 'Age' 'Type'},...
        'ResponseVar','LGD');
disp(lgdModel)
  Regression with properties:

    ResponseTransform: "logit"
    BoundaryTolerance: 1.0000e-05
              ModelID: "Example"
          Description: "Example LGD regression model."
      UnderlyingModel: [1x1 classreg.regr.CompactLinearModel]
        PredictorVars: ["LTV"    "Age"    "Type"]
          ResponseVar: "LGD"

Отобразите базовую модель. Переменная отклика базовой модели является логитным преобразованием данных LGD-отклика. Используйте 'ResponseTransform' и 'BoundaryTolerance' аргументы для изменения преобразования.

disp(lgdModel.UnderlyingModel)
Compact linear regression model:
    LGD_logit ~ 1 + LTV + Age + Type

Estimated Coefficients:
                       Estimate       SE        tStat       pValue  
                       ________    ________    _______    __________

    (Intercept)        -5.1939      0.28351     -18.32     1.203e-71
    LTV                 3.3217      0.33058     10.048    1.9484e-23
    Age                -1.4953     0.068658    -21.779    1.0596e-98
    Type_investment     1.3813      0.19406     7.1178    1.3259e-12


Number of observations: 3487, Error degrees of freedom: 3483
Root Mean Squared Error: 4.3
R-squared: 0.195,  Adjusted R-Squared: 0.194
F-statistic vs. constant model: 281, p-value = 2.32e-163

Предсказание LGD

Для предсказания LGD, модель LGD применяет обратное преобразование, поэтому прогнозы находятся в шкале LGD, а не в преобразованной шкале, используемой для соответствия базовой модели.

predictedLGD = predict(lgdModel,data);
histogram(predictedLGD)
title('Predicted LGD Histogram')
xlabel('Predicted LGD')
ylabel('Frequency')

Figure contains an axes. The axes with title Predicted LGD Histogram contains an object of type histogram.

Валидация модели LGD

Для валидации модели используйте modelDiscrimination, modelDiscriminationPlot, modelAccuracy, и modelAccuracyPlot.

Для примера используйте modelDiscriminationPlot для построения графика кривой ROC.

modelDiscriminationPlot(lgdModel,data)

Figure contains an axes. The axes with title ROC Example, AUROC = 0.68987 contains an object of type line. This object represents Example.

Использование modelAccuracyPlot чтобы показать график поля точек из предсказаний.

modelAccuracyPlot(lgdModel,data)

Figure contains an axes. The axes with title Scatter Example, R-Squared: 0.063213 contains 2 objects of type scatter, line. These objects represent Data, Fit.

Входные параметры

свернуть все

Данные для потерь по умолчанию, заданные как таблица.

Типы данных: table

Тип модели PD, заданный как скалярная строка или вектор символов. Используйте одно из следующих значений:

  • Regression - Преобразуйте переменную LGD-отклика и подбирайте линейную регрессионую модель.

  • Tobit - Подбор регрессионной модели Тобита.

Типы данных: string | char

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: lgdModel = fitLGDModel(data,'regression','PredictorVars',{'LTV' 'Age','Type'},'ResponseVar','LGD','ResponseTransform','probit','BoundaryTolerance',1e-6)

Доступные аргументы пары "имя-значение" зависят от значения, для которого вы задаете ModelType.

Аргументы в виде пар имя-значение для объектов модели

Выходные аргументы

свернуть все

Потеря заданная модель по умолчанию, возвращенная как lgdModel объект. Поддерживаемые классы Regression и Tobit.

Ссылки

[1] Baesens, Bart, Daniel Roesch, and Harald Scheule. Аналитика кредитных рисков: методы измерения, приложения и примеры в SAS. Уайли, 2016.

[2] Беллини, Тициано. МСФО (IFRS) 9 и CECL «Моделирование и валидация кредитных рисков: практическое руководство с примерами, используемыми в R и SAS». Сан-Диего, Калифорния: Elsevier, 2019.

Введенный в R2021a