График поля точек предсказанных и наблюдаемых ЛГД
modelAccuracyPlot(___, задает опции, использующие один или несколько аргументы пары "имя-значение" в дополнение к входным параметрам в предыдущем синтаксисе. Можно использовать Name,Value)ModelLevel аргумент пары "имя-значение" для вычисления метрик с помощью преобразованной шкалы базовой модели.
задает опции, использующие один или несколько аргументы пары "имя-значение" в дополнение к входным параметрам в предыдущем синтаксисе, и возвращает указатель на рисунок h = modelAccuracyPlot(ax,___,Name,Value)h.
В этом примере показано, как использовать fitLGDModel для подгонки данных к Regression моделировать и затем использовать modelAccuracyPlot сгенерировать график поля точек для предсказанных и наблюдаемых ЛГД.
Загрузка данных
Загрузите данные потерь по умолчанию.
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
Данные о разделах
Разделите данные на обучающие и тестовые разделы.
rng('default'); % for reproducibility NumObs = height(data); c = cvpartition(NumObs,'HoldOut',0.4); TrainingInd = training(c); TestInd = test(c);
Создание Regression ЛГД- Модели
Использование fitLGDModel для создания Regression модели с использованием обучающих данных.
lgdModel = fitLGDModel(data(TrainingInd,:),'regression');
disp(lgdModel) Regression with properties:
ResponseTransform: "logit"
BoundaryTolerance: 1.0000e-05
ModelID: "Regression"
Description: ""
UnderlyingModel: [1x1 classreg.regr.CompactLinearModel]
PredictorVars: ["LTV" "Age" "Type"]
ResponseVar: "LGD"
Отобразите базовую модель.
disp(lgdModel.UnderlyingModel)
Compact linear regression model:
LGD_logit ~ 1 + LTV + Age + Type
Estimated Coefficients:
Estimate SE tStat pValue
________ ________ _______ __________
(Intercept) -4.7549 0.36041 -13.193 3.0997e-38
LTV 2.8565 0.41777 6.8377 1.0531e-11
Age -1.5397 0.085716 -17.963 3.3172e-67
Type_investment 1.4358 0.2475 5.8012 7.587e-09
Number of observations: 2093, Error degrees of freedom: 2089
Root Mean Squared Error: 4.24
R-squared: 0.206, Adjusted R-Squared: 0.205
F-statistic vs. constant model: 181, p-value = 2.42e-104
Сгенерируйте График поля точек предсказанных и наблюдаемых LGD
Использование modelAccuracyPlot сгенерировать график поля точек предсказанных и наблюдаемых LGD для тестовых данных набора. The ModelLevel аргумент пары "имя-значение" изменяет выходы только для Regression модели, а не Tobit модели, потому что нет никаких преобразований отклика для Tobit модель.
modelAccuracyPlot(lgdModel,data(TestInd,:),'ModelLevel',"underlying")

В этом примере показано, как использовать fitLGDModel для подгонки данных к Tobit моделировать и затем использовать modelAccuracyPlot сгенерировать график поля точек предсказанных и наблюдаемых ЛГД.
Загрузка данных
Загрузите данные потерь по умолчанию.
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
Данные о разделах
Разделите данные на обучающие и тестовые разделы.
rng('default'); % for reproducibility NumObs = height(data); c = cvpartition(NumObs,'HoldOut',0.4); TrainingInd = training(c); TestInd = test(c);
Создайте модель LGD Тобита
Использование fitLGDModel для создания Tobit модели с использованием обучающих данных.
lgdModel = fitLGDModel(data(TrainingInd,:),'tobit');
disp(lgdModel) Tobit with properties:
CensoringSide: "both"
LeftLimit: 0
RightLimit: 1
ModelID: "Tobit"
Description: ""
UnderlyingModel: [1x1 risk.internal.credit.TobitModel]
PredictorVars: ["LTV" "Age" "Type"]
ResponseVar: "LGD"
Отобразите базовую модель.
disp(lgdModel.UnderlyingModel)
Tobit regression model:
LGD = max(0,min(Y*,1))
Y* ~ 1 + LTV + Age + Type
Estimated coefficients:
Estimate SE tStat pValue
_________ _________ _______ __________
(Intercept) 0.058257 0.027276 2.1358 0.032809
LTV 0.20126 0.031373 6.415 1.7363e-10
Age -0.095407 0.0072543 -13.152 0
Type_investment 0.10208 0.018054 5.6542 1.7802e-08
(Sigma) 0.29288 0.005704 51.346 0
Number of observations: 2093
Number of left-censored observations: 547
Number of uncensored observations: 1521
Number of right-censored observations: 25
Log-likelihood: -698.383
Сгенерируйте График поля точек предсказанных и наблюдаемых LGD
Использование modelAccuracyPlot сгенерировать график поля точек предсказанных и наблюдаемых LGD для тестовых данных набора.
modelAccuracyPlot(lgdModel,data(TestInd,:))

modelAccuracyPlot генерирует график поля точек наблюдаемых и предсказанных значений LGD. The 'XData' и 'YData' Аргументы пары "имя-значение" позволяют вам визуализировать невязки или сгенерировать график поля точек с интересующей переменной.
Загрузка данных
Загрузите данные потерь по умолчанию.
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
Данные о разделах
Разделите данные на обучающие и тестовые разделы.
rng('default'); % for reproducibility NumObs = height(data); c = cvpartition(NumObs,'HoldOut',0.4); TrainingInd = training(c); TestInd = test(c);
Создайте регрессионные LGD- Модели
Использование fitLGDModel для создания Regression модели с использованием обучающих данных.
lgdModel = fitLGDModel(data(TrainingInd,:),'regression');
disp(lgdModel) Regression with properties:
ResponseTransform: "logit"
BoundaryTolerance: 1.0000e-05
ModelID: "Regression"
Description: ""
UnderlyingModel: [1x1 classreg.regr.CompactLinearModel]
PredictorVars: ["LTV" "Age" "Type"]
ResponseVar: "LGD"
Отобразите базовую модель.
disp(lgdModel.UnderlyingModel)
Compact linear regression model:
LGD_logit ~ 1 + LTV + Age + Type
Estimated Coefficients:
Estimate SE tStat pValue
________ ________ _______ __________
(Intercept) -4.7549 0.36041 -13.193 3.0997e-38
LTV 2.8565 0.41777 6.8377 1.0531e-11
Age -1.5397 0.085716 -17.963 3.3172e-67
Type_investment 1.4358 0.2475 5.8012 7.587e-09
Number of observations: 2093, Error degrees of freedom: 2089
Root Mean Squared Error: 4.24
R-squared: 0.206, Adjusted R-Squared: 0.205
F-statistic vs. constant model: 181, p-value = 2.42e-104
Сгенерируйте График поля точек предсказанных и наблюдаемых LGD
Использование modelAccuracyPlot чтобы сгенерировать график поля точек невязок от значений LTV.
modelAccuracyPlot(lgdModel,data(TestInd,:),'XData','LTV','YData','residuals')

Для Regression модели, 'ModelLevel' Аргумент пары "имя-значение" позволяет вам визуализировать график с помощью базовой шкалы модели.
modelAccuracyPlot(lgdModel,data(TestInd,:),'XData','LTV','YData','residuals','ModelLevel','underlying')

Для категориальных переменных, modelAccuracyPlot использует наклонный график. Для получения дополнительной информации смотрите swarmchart.
modelAccuracyPlot(lgdModel,data(TestInd,:),'XData','Type','YData','residuals','ModelLevel','underlying')

lgdModel - Потеря по умолчанию заданная модельRegression | объекта Tobit объектПотеря по умолчанию заданная модель, заданная как ранее созданная Regression или Tobit использование объекта fitLGDModel.
Типы данных: object
data - ДанныеДанные, заданные как NumRows-by- NumCols таблица с предиктором и значениями отклика. Имена переменных и типы данных должны соответствовать базовой модели.
Типы данных: table
ax - Действительный объект оси(Необязательно) Допустимый объект оси, заданный как ax объект, который создается с использованием axes. График будет создан в осях, заданных опциональным ax аргумент вместо в текущей системе координат (gca). Необязательный аргумент ax должен предшествовать любой комбинации входных аргументов.
Типы данных: object
Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.
modelAccuracyPlot(lgdModel,data(TestInd,:),'DataID','Testing','YData','residuals','XData','LTV')'DataID' - Идентификатор набора данных""
(по умолчанию) | вектор символов | строкаИдентификатор набора данных, заданный как разделенная разделенными запятой парами, состоящая из 'DataID' и вектор символов или строка. The DataID включено в выход для целей отчетности.
Типы данных: char | string
'ModelLevel' - Уровень модели'top'
(по умолчанию) | вектор символов со значением 'top' или 'underlying' | строку со значением "top" или "underlying"Уровень модели, заданный как разделенная разделенными запятой парами, состоящая из 'ModelLevel' и вектор символов или строка.
'top' - Метрики точности вычисляются в шкале LGD на верхнем уровне модели.
'underlying' - Для Regression только модель, метрики вычисляются в преобразованной шкале базовой модели. Метрики вычисляются на преобразованных данных LGD.
Примечание
ModelLevel не влияет на Tobit модель, потому что нет преобразования отклика.
Типы данных: char | string
'ReferenceLGD' - Значения LGD, предсказанные для data по образцу модели[ ]
(по умолчанию) | числовой вектор'ReferenceID' - Идентификатор для эталонной модели'Reference'
(по умолчанию) | вектор символов | строкаИдентификатор образца модели, заданный как разделенная запятой пара, состоящий из 'ReferenceID' и вектор символов или строка. 'ReferenceID' используется в график поля точек выхода в целях отчетности.
Типы данных: char | string
'XData' - Данные для построения графика на оси X'predicted'
(по умолчанию) | вектор символов со значением 'predicted', 'observed', 'residuals'или VariableName | строку со значением | "predicted", "observed", "residuals", или VariableNameДанные для построения графика на оси X, заданные как разделенная разделенными запятой парами, состоящая из 'XData' и вектор символов или строка для одного из следующих:
'predicted' - Постройте график предсказанных значений LGD в оси X.
'observed' - Постройте график наблюдаемых значений LGD по оси X.
'residuals' - Постройте график невязок по оси X.
VariableName - Используйте имя переменной в data введите, не обязательно переменную модели, чтобы построить график в оси X.
Типы данных: char | string
'YData' - Данные для построения графика по оси Y'predicted'
(по умолчанию) | вектор символов со значением 'predicted', 'observed', или 'residuals' | строку со значением | "predicted", "observed", или "residuals"Данные для построения графика на оси Y, заданные как разделенная разделенными запятой парами, состоящая из 'YData' и вектор символов или строка для одного из следующих:
'predicted' - Постройте график предсказанных значений LGD по оси Y.
'observed' - Постройте график наблюдаемых значений LGD по оси Y.
'residuals' - Постройте график невязок по оси Y.
Типы данных: char | string
h - Указатель на фигуруФигура для объектов рассеяния и линий, возвращенный как объект handle.
The modelAccuracyPlot функция возвращает график рассеяния наблюдаемых и предсказанных потерь по умолчанию (LGD) с линейной аппроксимацией и сообщает R-квадрат линейной аппроксимации.
The XData Аргумент пары "имя-значение" позволяет изменять значения x на графике. По умолчанию предсказанные значения LGD строятся на x оси, но предсказанные значения LGD, невязки или любая переменная в data вход, не обязательно переменная модели, может использоваться в качестве x значений. Если выбранное XData является категориальной переменной, используется наклонный график. Для получения дополнительной информации см. swarmchart.
The YData Аргумент пары "имя-значение" позволяет пользователям изменять значения y на графике. По умолчанию наблюдаемые значения LGD строятся на y оси, но предсказанные значения LGD или невязки также могут использоваться в качестве y значений. YData не поддерживает табличные переменные.
Для Regression модели, если ModelLevel установлено в 'underlying', данные LGD преобразуются в шкалу базовой модели. Преобразованные данные показаны на графике. The ModelLevel Аргумент пары "имя-значение" не имеет эффекта для Tobit модели.
Линейная подгонка и сообщенное значение R-квадрат всегда соответствуют линейной регрессионой модели с нанесенными на график значениями y в качестве отклика и нанесенными на график значениями x в качестве единственного предиктора.
[1] Baesens, Bart, Daniel Roesch, and Harald Scheule. Аналитика кредитных рисков: методы измерения, приложения и примеры в SAS. Уайли, 2016.
[2] Беллини, Тициано. МСФО (IFRS) 9 и CECL «Моделирование и валидация кредитных рисков: практическое руководство с примерами, используемыми в R и SAS». Сан-Диего, Калифорния: Elsevier, 2019.
modelAccuracy | modelDiscrimination | modelDiscriminationPlot | predict | Regression | Tobit
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.