Вычислите R-квадрат, RMSE, корреляцию и среднюю ошибку выборки прогнозируемых и наблюдаемых LGD
вычисляет R-квадратную, среднеквадратическую ошибку (RMSE), корреляцию и среднюю ошибку выборки наблюдаемых и прогнозируемых потерь, заданных по умолчанию (LGD). AccMeasure = modelAccuracy(lgdModel,data)modelAccuracy поддерживает сравнение с эталонной моделью, а также поддерживает различные типы корреляции. По умолчанию modelAccuracy вычисляет метрики в масштабе LGD. Вы можете использовать ModelLevel аргумент пары имя-значение для вычисления метрик с использованием трансформированного масштаба базовой модели.
[ указывает параметры, использующие один или несколько аргументов пары имя-значение в дополнение к входным аргументам в предыдущем синтаксисе.AccMeasure,AccData] = modelAccuracy(___,Name,Value)
В этом примере показано, как использовать fitLGDModel для совмещения данных с Regression модель, а затем использовать modelAccuracy для вычисления R-квадрата, RMSE, корреляции и средней ошибки выборки прогнозируемых и наблюдаемых 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
Данные раздела
Разделите данные на разделы обучения и тестирования.
rng('default'); % for reproducibility NumObs = height(data); c = cvpartition(NumObs,'HoldOut',0.4); TrainingInd = training(c); TestInd = test(c);
Создать Regression Модель 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
Вычислить R-квадрат, RMSE, корреляцию и среднюю ошибку выборки прогнозируемых и наблюдаемых LGD
Использовать modelAccuracy для вычисления RSquared, RMSE, Correlation, и SampleMeanError прогнозируемых и наблюдаемых LGD для набора тестовых данных.
[AccMeasure,AccData] = modelAccuracy(lgdModel,data(TestInd,:))
AccMeasure=1×4 table
RSquared RMSE Correlation SampleMeanError
________ _______ ___________ _______________
Regression 0.070867 0.25988 0.26621 0.10759
AccData=1394×3 table
Observed Predicted_Regression Residuals_Regression
_________ ____________________ ____________________
0.0064766 0.00091169 0.0055649
0.007947 0.0036758 0.0042713
0.063182 0.18774 -0.12456
0 0.0010877 -0.0010877
0.10904 0.011213 0.097823
0 0.041992 -0.041992
0.89463 0.052947 0.84168
0 3.7188e-06 -3.7188e-06
0.072437 0.0090124 0.063425
0.036006 0.023928 0.012078
0 0.0034833 -0.0034833
0.39549 0.0065253 0.38896
0.057675 0.071956 -0.014281
0.014439 0.0061499 0.008289
0 0.0012183 -0.0012183
0 0.0019828 -0.0019828
⋮
Сформировать график рассеяния прогнозируемых и наблюдаемых LGD с использованием modelAccuracyPlot.
modelAccuracyPlot(lgdModel,data(TestInd,:),'ModelLevel',"underlying")

В этом примере показано, как использовать fitLGDModel для совмещения данных с Tobit модель, а затем использовать modelAccuracy для вычисления R-квадрата, RMSE, корреляции и средней ошибки выборки прогнозируемых и наблюдаемых 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
Данные раздела
Разделите данные на разделы обучения и тестирования.
rng('default'); % for reproducibility NumObs = height(data); c = cvpartition(NumObs,'HoldOut',0.4); TrainingInd = training(c); TestInd = test(c);
Создать Tobit Модель 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
Вычислить R-квадрат, RMSE, корреляцию и среднюю ошибку выборки прогнозируемых и наблюдаемых LGD
Использовать modelAccuracy вычислить RSquared, RMSE, Correlation, и SampleMeanError прогнозируемых и наблюдаемых ЖРД для набора тестовых данных.
[AccMeasure,AccData] = modelAccuracy(lgdModel,data(TestInd,:),'CorrelationType',"kendall")
AccMeasure=1×4 table
RSquared RMSE Correlation SampleMeanError
________ _______ ___________ _______________
Tobit 0.08527 0.23712 0.29964 -0.034412
AccData=1394×3 table
Observed Predicted_Tobit Residuals_Tobit
_________ _______________ _______________
0.0064766 0.087889 -0.081412
0.007947 0.12432 -0.11638
0.063182 0.32043 -0.25724
0 0.093354 -0.093354
0.10904 0.16718 -0.058144
0 0.22382 -0.22382
0.89463 0.23695 0.65768
0 0.010234 -0.010234
0.072437 0.1592 -0.086761
0.036006 0.19893 -0.16292
0 0.12764 -0.12764
0.39549 0.14568 0.2498
0.057675 0.26181 -0.20413
0.014439 0.14483 -0.13039
0 0.094123 -0.094123
0 0.10944 -0.10944
⋮
Создание графика рассеяния прогнозируемых и наблюдаемых LGD с использованием modelAccuracyPlot.
modelAccuracyPlot(lgdModel,data(TestInd,:))

lgdModel - Потеря данной модели по умолчаниюRegression объект | Tobit объектПотеря заданной модели по умолчанию, указанной как ранее созданная Regression или Tobit объект с использованием fitLGDModel.
Типы данных: object
data - ДанныеДанные, указанные как NumRowsоколо-NumCols таблица с предиктором и значениями ответа. Имена переменных и типы данных должны соответствовать базовой модели.
Типы данных: table
Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.
[AccMeasure,AccData] = modelAccuracy(lgdModel,data(TestInd,:),'DataID','Testing','CorrelationType','spearman')'CorrelationType' - Тип корреляции"pearson"
(по умолчанию) | символьный вектор со значением 'pearson', 'spearman', или 'kendall' | строка со значением "pearson", "spearman", или "kendall'"Тип корреляции, указанный как пара, разделенная запятыми, состоящая из 'CorrelationType' и символьный вектор или строку.
Типы данных: char | string
'DataID' - Идентификатор набора данных""
(по умолчанию) | символьный вектор | строкаИдентификатор набора данных, указанный как разделенная запятыми пара, состоящая из 'DataID' и символьный вектор или строку. 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' используется в modelAccuracy выходные данные для целей отчетности.
Типы данных: char | string
AccMeasure - Измерение точностиИзмерение точности, возвращаемое в виде таблицы со столбцами 'RSquared', 'RMSE', 'Correlation', и 'SampleMeanError'. AccMeasure имеет одну строку, если только lgdModel измеряют точность и при наличии информации эталонной модели она имеет две строки. Имена строк AccMeasure сообщите идентификатор модели и идентификатор данных (если они предоставлены).
AccData - Данные о точности Данные точности, возвращенные в виде таблицы с наблюдаемыми значениями LGD, прогнозируемыми значениями LGD и остатками (наблюдаемые минус прогнозируемые). Дополнительные столбцы для прогнозируемых и остаточных значений включаются для эталонной модели, если они предусмотрены. ModelID и ReferenceID метки добавляются в имена столбцов.
Точность модели измеряет точность предсказанной вероятности значений LGD с использованием различных метрик.
R-квадрат - чтобы вычислить R-квадрат метрики, modelAccuracy соответствует линейной регрессии наблюдаемых значений LGD относительно прогнозируемых значений LGD
Сообщается о R-квадрате этой регрессии. Дополнительные сведения см. в разделе Коэффициент определения (R-квадрат).
RMSE - для вычисления среднеквадратической ошибки (RMSE), modelAccuracy использует следующую формулу, где N - число наблюдений:
LGDipred) 2
Корреляция - это корреляция между наблюдаемым и прогнозируемым LGD:
LGDpred)
Дополнительные сведения о различных типах корреляции см. в разделе corr.
Средняя ошибка выборки - это разница между средним наблюдаемым LGD и средним прогнозируемым LGD или, эквивалентно, средним значением остатков:
LGDipred)
[1] Бэзенс, Барт, Даниэль Рош и Харальд Шиле. Анализ кредитных рисков: методы измерения, приложения и примеры в SAS. Уайли, 2016.
[2] Беллини, Тициано. МСФО (IFRS) 9 и CECL «Моделирование и валидация кредитных рисков: практическое руководство с примерами, работающими в R и SAS». Сан-Диего, Калифорния: Elsevier, 2019.
fitLGDModel | modelAccuracyPlot | modelDiscrimination | modelDiscriminationPlot | predict | Regression | Tobit
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.