Подходящая модель логистической регрессии к данным о Весе доказательства (WOE)
sc = fitmodel(sc)[sc,mdl]
= fitmodel(sc)[sc,mdl]
= fitmodel(___,Name,Value) соответствует модели логистической регрессии к данным о Весе доказательства (WOE) и хранит образцовые имена предиктора и соответствующие коэффициенты в объекте sc = fitmodel(sc)creditscorecard.
fitmodel внутренне преобразовывает все переменные прогноза в значения WOE, с помощью интервалов, найденных с автоматическим или ручным процессом раскладывания. Переменная отклика сопоставлена так, чтобы "Хороший" был 1, и "Плохо" был 0. Это подразумевает, что выше (немасштабированные) очки соответствуют лучше (менее опасным) людям (меньшая вероятность значения по умолчанию).
Также можно использовать setmodel, чтобы обеспечить имена предикторов, которые вы хотите в модели логистической регрессии, наряду с их соответствующими коэффициентами.
[ соответствует модели логистической регрессии к данным о Весе доказательства (WOE) и хранит образцовые имена предиктора и соответствующие коэффициенты в объекте sc,mdl]
= fitmodel(sc)creditscorecard. fitmodel возвращает обновленный объект creditscorecard и объект GeneralizedLinearModel, содержащий подобранную модель.
fitmodel внутренне преобразовывает все переменные прогноза в значения WOE, с помощью интервалов, найденных с автоматическим или ручным процессом раскладывания. Переменная отклика сопоставлена так, чтобы "Хороший" был 1, и "Плохо" был 0. Это подразумевает, что выше (немасштабированные) очки соответствуют лучше (менее опасным) людям (меньшая вероятность значения по умолчанию).
Также можно использовать setmodel, чтобы обеспечить имена предикторов, которые вы хотите в модели логистической регрессии, наряду с их соответствующими коэффициентами.
[ соответствует модели логистической регрессии к данным о Весе доказательства (WOE) с помощью дополнительных аргументов пары "имя-значение" и хранит образцовые имена предиктора и соответствующие коэффициенты в объекте sc,mdl]
= fitmodel(___,Name,Value)creditscorecard. Используя аргументы пары "имя-значение", можно выбрать который Обобщенная Линейная Модель соответствовать данным. fitmodel возвращает обновленный объект creditscorecard и объект GeneralizedLinearModel, содержащий подобранную модель.
Создайте объект creditscorecard с помощью файла CreditCardData.mat, чтобы загрузить data (использующий набор данных от Refaat 2011).
load CreditCardData sc = creditscorecard(data,'IDVar','CustID')
sc =
creditscorecard with properties:
GoodLabel: 0
ResponseVar: 'status'
WeightsVar: ''
VarNames: {1x11 cell}
NumericPredictors: {1x6 cell}
CategoricalPredictors: {'ResStatus' 'EmpStatus' 'OtherCC'}
BinMissingData: 0
IDVar: 'CustID'
PredictorVars: {1x9 cell}
Data: [1200x11 table]
Выполните автоматическое раскладывание.
sc = autobinning(sc)
sc =
creditscorecard with properties:
GoodLabel: 0
ResponseVar: 'status'
WeightsVar: ''
VarNames: {1x11 cell}
NumericPredictors: {1x6 cell}
CategoricalPredictors: {'ResStatus' 'EmpStatus' 'OtherCC'}
BinMissingData: 0
IDVar: 'CustID'
PredictorVars: {1x9 cell}
Data: [1200x11 table]
Используйте fitmodel, чтобы соответствовать модели логистической регрессии использование данных о Весе доказательства (WOE). fitmodel внутренне преобразовывает все переменные прогноза в значения WOE, с помощью интервалов, найденных с автоматическим процессом раскладывания. fitmodel затем соответствует модели логистической регрессии использование пошагового метода (по умолчанию).
sc = fitmodel(sc);
1. Adding CustIncome, Deviance = 1490.8527, Chi2Stat = 32.588614, PValue = 1.1387992e-08
2. Adding TmWBank, Deviance = 1467.1415, Chi2Stat = 23.711203, PValue = 1.1192909e-06
3. Adding AMBalance, Deviance = 1455.5715, Chi2Stat = 11.569967, PValue = 0.00067025601
4. Adding EmpStatus, Deviance = 1447.3451, Chi2Stat = 8.2264038, PValue = 0.0041285257
5. Adding CustAge, Deviance = 1441.994, Chi2Stat = 5.3511754, PValue = 0.020708306
6. Adding ResStatus, Deviance = 1437.8756, Chi2Stat = 4.118404, PValue = 0.042419078
7. Adding OtherCC, Deviance = 1433.707, Chi2Stat = 4.1686018, PValue = 0.041179769
Generalized linear regression model:
status ~ [Linear formula with 8 terms in 7 predictors]
Distribution = Binomial
Estimated Coefficients:
Estimate SE tStat pValue
________ ________ ______ __________
(Intercept) 0.70239 0.064001 10.975 5.0538e-28
CustAge 0.60833 0.24932 2.44 0.014687
ResStatus 1.377 0.65272 2.1097 0.034888
EmpStatus 0.88565 0.293 3.0227 0.0025055
CustIncome 0.70164 0.21844 3.2121 0.0013179
TmWBank 1.1074 0.23271 4.7589 1.9464e-06
OtherCC 1.0883 0.52912 2.0569 0.039696
AMBalance 1.045 0.32214 3.2439 0.0011792
1200 observations, 1192 error degrees of freedom
Dispersion: 1
Chi^2-statistic vs. constant model: 89.7, p-value = 1.4e-16
Используйте файл CreditCardData.mat, чтобы загрузить данные (dataWeights), который содержит столбец (RowWeights) для весов (использующий набор данных от Refaat 2011).
load CreditCardDataСоздайте объект creditscorecard с помощью дополнительного аргумента пары "имя-значение" для 'WeightsVar'.
sc = creditscorecard(dataWeights,'IDVar','CustID','WeightsVar','RowWeights')
sc =
creditscorecard with properties:
GoodLabel: 0
ResponseVar: 'status'
WeightsVar: 'RowWeights'
VarNames: {1x12 cell}
NumericPredictors: {1x6 cell}
CategoricalPredictors: {'ResStatus' 'EmpStatus' 'OtherCC'}
BinMissingData: 0
IDVar: 'CustID'
PredictorVars: {1x9 cell}
Data: [1200x12 table]
Выполните автоматическое раскладывание.
sc = autobinning(sc)
sc =
creditscorecard with properties:
GoodLabel: 0
ResponseVar: 'status'
WeightsVar: 'RowWeights'
VarNames: {1x12 cell}
NumericPredictors: {1x6 cell}
CategoricalPredictors: {'ResStatus' 'EmpStatus' 'OtherCC'}
BinMissingData: 0
IDVar: 'CustID'
PredictorVars: {1x9 cell}
Data: [1200x12 table]
Используйте fitmodel, чтобы соответствовать модели логистической регрессии использование данных о Весе доказательства (WOE). fitmodel внутренне преобразовывает все переменные прогноза в значения WOE, с помощью интервалов, найденных с автоматическим процессом раскладывания. fitmodel затем соответствует модели логистической регрессии использование пошагового метода (по умолчанию). Когда дополнительный аргумент пары "имя-значение" 'WeightsVar' используется, чтобы задать наблюдение (выборка) веса, mdl, вывод использует взвешенные количества с stepwiseglm и fitglm.
[sc,mdl] = fitmodel(sc);
1. Adding CustIncome, Deviance = 764.3187, Chi2Stat = 15.81927, PValue = 6.968927e-05
2. Adding TmWBank, Deviance = 751.0215, Chi2Stat = 13.29726, PValue = 0.0002657942
3. Adding AMBalance, Deviance = 743.7581, Chi2Stat = 7.263384, PValue = 0.007037455
Generalized linear regression model:
logit(status) ~ 1 + CustIncome + TmWBank + AMBalance
Distribution = Binomial
Estimated Coefficients:
Estimate SE tStat pValue
________ ________ ______ __________
(Intercept) 0.70642 0.088702 7.964 1.6653e-15
CustIncome 1.0268 0.25758 3.9862 6.7132e-05
TmWBank 1.0973 0.31294 3.5063 0.0004543
AMBalance 1.0039 0.37576 2.6717 0.0075464
1200 observations, 1196 error degrees of freedom
Dispersion: 1
Chi^2-statistic vs. constant model: 36.4, p-value = 6.22e-08
Создайте объект creditscorecard с помощью файла CreditCardData.mat, чтобы загрузить data (использующий набор данных от Refaat 2011).
load CreditCardData sc = creditscorecard(data,'IDVar','CustID')
sc =
creditscorecard with properties:
GoodLabel: 0
ResponseVar: 'status'
WeightsVar: ''
VarNames: {1x11 cell}
NumericPredictors: {1x6 cell}
CategoricalPredictors: {'ResStatus' 'EmpStatus' 'OtherCC'}
BinMissingData: 0
IDVar: 'CustID'
PredictorVars: {1x9 cell}
Data: [1200x11 table]
Выполните автоматическое раскладывание.
sc = autobinning(sc,'Algorithm','EqualFrequency')
sc =
creditscorecard with properties:
GoodLabel: 0
ResponseVar: 'status'
WeightsVar: ''
VarNames: {1x11 cell}
NumericPredictors: {1x6 cell}
CategoricalPredictors: {'ResStatus' 'EmpStatus' 'OtherCC'}
BinMissingData: 0
IDVar: 'CustID'
PredictorVars: {1x9 cell}
Data: [1200x11 table]
Используйте fitmodel, чтобы соответствовать модели логистической регрессии использование данных о Весе доказательства (WOE). fitmodel внутренне преобразовывает все переменные прогноза в значения WOE, с помощью интервалов, найденных с автоматическим процессом раскладывания. Установите аргумент пары "имя-значение" VariableSelection FullModel указывать, что все предикторы должны быть включены в подходящую модель логистической регрессии.
sc = fitmodel(sc,'VariableSelection','FullModel');
Generalized linear regression model:
status ~ [Linear formula with 10 terms in 9 predictors]
Distribution = Binomial
Estimated Coefficients:
Estimate SE tStat pValue
________ ________ _______ _________
(Intercept) 0.70262 0.063862 11.002 3.734e-28
CustAge 0.57683 0.27064 2.1313 0.033062
TmAtAddress 1.0653 0.55233 1.9287 0.053762
ResStatus 1.4189 0.65162 2.1775 0.029441
EmpStatus 0.89916 0.29217 3.0776 0.002087
CustIncome 0.77506 0.21942 3.5323 0.0004119
TmWBank 1.0826 0.26583 4.0727 4.648e-05
OtherCC 1.1354 0.52827 2.1493 0.031612
AMBalance 0.99315 0.32642 3.0425 0.0023459
UtilRate 0.16723 0.55745 0.29999 0.76419
1200 observations, 1190 error degrees of freedom
Dispersion: 1
Chi^2-statistic vs. constant model: 85.6, p-value = 1.25e-14
Создайте объект creditscorecard с помощью файла CreditCardData.mat, чтобы загрузить dataMissing с отсутствующими значениями.
load CreditCardData.mat
head(dataMissing,5)ans=5×11 table
CustID CustAge TmAtAddress ResStatus EmpStatus CustIncome TmWBank OtherCC AMBalance UtilRate status
______ _______ ___________ ___________ _________ __________ _______ _______ _________ ________ ______
1 53 62 <undefined> Unknown 50000 55 Yes 1055.9 0.22 0
2 61 22 Home Owner Employed 52000 25 Yes 1161.6 0.24 0
3 47 30 Tenant Employed 37000 61 No 877.23 0.29 0
4 NaN 75 Home Owner Employed 53000 20 Yes 157.37 0.08 0
5 68 56 Home Owner Employed 53000 14 Yes 561.84 0.11 0
fprintf('Number of rows: %d\n',height(dataMissing))Number of rows: 1200
fprintf('Number of missing values CustAge: %d\n',sum(ismissing(dataMissing.CustAge)))Number of missing values CustAge: 30
fprintf('Number of missing values ResStatus: %d\n',sum(ismissing(dataMissing.ResStatus)))Number of missing values ResStatus: 40
Используйте creditscorecard с набором аргумента 'BinMissingData' значения имени к true к интервалу недостающие числовые или категориальные данные в отдельном интервале.
sc = creditscorecard(dataMissing,'IDVar','CustID','BinMissingData',true); sc = autobinning(sc); disp(sc)
creditscorecard with properties:
GoodLabel: 0
ResponseVar: 'status'
WeightsVar: ''
VarNames: {1x11 cell}
NumericPredictors: {1x6 cell}
CategoricalPredictors: {'ResStatus' 'EmpStatus' 'OtherCC'}
BinMissingData: 1
IDVar: 'CustID'
PredictorVars: {1x9 cell}
Data: [1200x11 table]
Отобразите и постройте информацию об интервале для числовых данных для 'CustAge', который включает недостающие данные в отдельный интервал, маркировал <missing>.
[bi,cp] = bininfo(sc,'CustAge');
disp(bi) Bin Good Bad Odds WOE InfoValue
___________ ____ ___ ______ ________ __________
'[-Inf,33)' 69 52 1.3269 -0.42156 0.018993
'[33,37)' 63 45 1.4 -0.36795 0.012839
'[37,40)' 72 47 1.5319 -0.2779 0.0079824
'[40,46)' 172 89 1.9326 -0.04556 0.0004549
'[46,48)' 59 25 2.36 0.15424 0.0016199
'[48,51)' 99 41 2.4146 0.17713 0.0035449
'[51,58)' 157 62 2.5323 0.22469 0.0088407
'[58,Inf]' 93 25 3.72 0.60931 0.032198
'<missing>' 19 11 1.7273 -0.15787 0.00063885
'Totals' 803 397 2.0227 NaN 0.087112
plotbins(sc,'CustAge')
Отобразите и постройте информацию об интервале для категориальных данных для 'ResStatus', который включает недостающие данные в отдельный интервал, маркировал <missing>.
[bi,cg] = bininfo(sc,'ResStatus');
disp(bi) Bin Good Bad Odds WOE InfoValue
____________ ____ ___ ______ _________ __________
'Tenant' 296 161 1.8385 -0.095463 0.0035249
'Home Owner' 352 171 2.0585 0.017549 0.00013382
'Other' 128 52 2.4615 0.19637 0.0055808
'<missing>' 27 13 2.0769 0.026469 2.3248e-05
'Totals' 803 397 2.0227 NaN 0.0092627
plotbins(sc,'ResStatus')
Используйте fitmodel, чтобы соответствовать модели логистической регрессии использование данных о Весе доказательства (WOE). fitmodel внутренне преобразовывает все переменные прогноза в значения WOE, с помощью интервалов, найденных с автоматическим процессом раскладывания. fitmodel затем соответствует модели логистической регрессии использование пошагового метода (по умолчанию). Для предикторов, которые имеют недостающие данные, существует явный интервал <missing> с соответствующим значением WOE, вычисленным из данных. При использовании fitmodel соответствующее значение WOE для <недостающего> интервала применяется при выполнении преобразования WOE. Например, отсутствующее значение для потребительского возраста (CustAge) заменяется -0.15787, который является значением WOE для интервала <missing> для предиктора CustAge. Однако, когда 'BinMissingData' является ложным, отсутствующее значение для CustAge остается как недостающее (NaN) при применении преобразования WOE.
[sc,mdl] = fitmodel(sc);
1. Adding CustIncome, Deviance = 1490.8527, Chi2Stat = 32.588614, PValue = 1.1387992e-08
2. Adding TmWBank, Deviance = 1467.1415, Chi2Stat = 23.711203, PValue = 1.1192909e-06
3. Adding AMBalance, Deviance = 1455.5715, Chi2Stat = 11.569967, PValue = 0.00067025601
4. Adding EmpStatus, Deviance = 1447.3451, Chi2Stat = 8.2264038, PValue = 0.0041285257
5. Adding CustAge, Deviance = 1442.8477, Chi2Stat = 4.4974731, PValue = 0.033944979
6. Adding ResStatus, Deviance = 1438.9783, Chi2Stat = 3.86941, PValue = 0.049173805
7. Adding OtherCC, Deviance = 1434.9751, Chi2Stat = 4.0031966, PValue = 0.045414057
Generalized linear regression model:
status ~ [Linear formula with 8 terms in 7 predictors]
Distribution = Binomial
Estimated Coefficients:
Estimate SE tStat pValue
________ ________ ______ __________
(Intercept) 0.70229 0.063959 10.98 4.7498e-28
CustAge 0.57421 0.25708 2.2335 0.025513
ResStatus 1.3629 0.66952 2.0356 0.04179
EmpStatus 0.88373 0.2929 3.0172 0.002551
CustIncome 0.73535 0.2159 3.406 0.00065929
TmWBank 1.1065 0.23267 4.7556 1.9783e-06
OtherCC 1.0648 0.52826 2.0156 0.043841
AMBalance 1.0446 0.32197 3.2443 0.0011775
1200 observations, 1192 error degrees of freedom
Dispersion: 1
Chi^2-statistic vs. constant model: 88.5, p-value = 2.55e-16
sc — Модель протокола результатов кредитаcreditscorecardМодель протокола результатов кредита, заданная как объект creditscorecard. Используйте creditscorecard, чтобы создать объект creditscorecard.
Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
[sc,mdl] = fitmodel(sc,'VariableSelection','FullModel')'PredictorVars' — Переменные прогноза для подбора кривой объекту creditscorecardcreditscorecard (значение по умолчанию) | массив ячеек из символьных векторовПеременные прогноза для подбора кривой объекту creditscorecard, заданному как пара, разделенная запятой, состоящая из 'PredictorVars' и массива ячеек из символьных векторов. Когда обеспечено, свойство объекта creditscorecard PredictorsVars обновляется. Обратите внимание на то, что порядок предикторов в исходном наборе данных осуществляется, независимо от порядка, в котором обеспечивается 'PredictorVars'. Если не, если, предикторы, используемые, чтобы создать объект creditscorecard (при помощи creditscorecard), используются.
Типы данных: cell
'VariableSelection' — Метод выбора переменной, чтобы соответствовать модели логистической регрессии'Stepwise'
(значение по умолчанию) | вектор символов со значениями 'Stepwise', 'FullModel'Метод выбора переменной, чтобы соответствовать модели логистической регрессии, заданной как пара, разделенная запятой, состоящая из 'VariableSelection' и вектора символов со значениями 'Stepwise' или 'FullModel':
Stepwise — Использует пошаговый метод выбора, который вызывает функцию Statistics and Machine Learning Toolbox™ stepwiseglm. Только переменные в PredictorVars могут потенциально стать частью модели и используют аргумент пары "имя-значение" StartingModel, чтобы выбрать стартовую модель.
FullModel — Подбирает модель со всеми переменными прогноза в аргументе пары "имя-значение" PredictorVars и вызывает fitglm.
Только переменные в свойстве PredictorVars объекта creditscorecard могут потенциально стать частью логистической регрессии, образцовые и только линейные члены включены в эту модель без взаимодействий или любые другие условия высшего порядка.
Переменная отклика сопоставлена так, чтобы “Хороший” был 1 и “Плохо” был 0.
Типы данных: char
'StartingModel' — Initial для выбора переменной Stepwise'Constant'
(значение по умолчанию) | вектор символов со значениями 'Constant', 'Linear'Первоначальная модель для метода выбора переменной Stepwise, заданного как пара, разделенная запятой, состоящая из 'StartingModel' и вектора символов со значениями 'Constant' или 'Linear'. Эта опция определяет первоначальную модель (постоянный или линейный), с которого запускается функция Statistics and Machine Learning Toolbox stepwiseglm.
Constant — Запускает пошаговый метод с пустого (постоянный только) модель.
Linear — Запускает пошаговый метод с полного (все предикторы в) модель.
StartingModel используется только для опции Stepwise VariableSelection и не имеет никакого эффекта для опции FullModel VariableSelection.
Типы данных: char
Отображение Индикатор к информации о модели дисплея в командной строке'On'
(значение по умолчанию) | вектор символов со значениями 'On', 'Off'Индикатор к информации о модели дисплея в командной строке, заданной как пара, разделенная запятой, состоящая из 'Display' и вектора символов со значением 'On' или 'Off'.
Типы данных: char
sc — Модель протокола результатов кредитаcreditscorecardМодель протокола результатов кредита, возвращенная как обновленный объект creditscorecard. Объект creditscorecard содержит информацию об образцовых предикторах, и коэффициенты раньше соответствовали данным WOE. Для получения дополнительной информации об использовании объекта creditscorecard смотрите creditscorecard.
mdl — Подходящая логистическая модельGeneralizedLinearModelПодходящая логистическая модель, повторно настроенная как объект типа GeneralizedLinearModel, содержащий подобранную модель. Для получения дополнительной информации об объекте GeneralizedLinearModel смотрите GeneralizedLinearModel.
При создании объекта creditscorecard с creditscorecard, если дополнительный аргумент пары "имя-значение" WeightsVar использовался, чтобы задать наблюдение (выборка) веса, то mdl использует взвешенные количества с stepwiseglm и fitglm.
fitmodel с весамиКогда веса наблюдения обеспечиваются в протоколе результатов кредита data, веса используются, чтобы калибровать коэффициенты модели.
Базовая Статистика и Машинное обучение Toolboxfunctionality для stepwiseglm и fitglm поддерживают веса наблюдения. Веса также влияют на логистическую модель через значения WOE. Преобразование WOE применяется ко всем предикторам прежде, чем соответствовать логистической модели. Веса наблюдения непосредственно влияют на значения WOE. Для получения дополнительной информации смотрите Используя bininfo с Весами и Моделированием Протокола результатов Кредита Используя Веса Наблюдения.
Поэтому точки протокола результатов кредита и итоговый счет зависят от весов наблюдения и через логистические коэффициенты модели и через значения WOE.
Модель логистической регрессии используется в объекте creditscorecard.
Для модели вероятность того, чтобы быть “Плохим” дана ProbBad = exp(-s) / (1 + exp(-s)).
[1] Андерсон, R. Инструментарий рейтинга кредитоспособности. Издательство Оксфордского университета, 2007.
[2] Refaat, M. Протоколы результатов кредитного риска: разработка и реализация Используя SAS. lulu.com, 2011.
GeneralizedLinearModel | autobinning | bindata | bininfo | creditscorecard | displaypoints | fitConstrainedModel | fitglm | formatpoints | modifybins | modifypredictor | plotbins | predictorinfo | probdefault | score | setmodel | stepwiseglm | validatemodel
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.