Соответствие модели логистической регрессии данным веса доказательств (WOE)
соответствует модели логистической регрессии данным веса доказательств (WOE) и сохраняет имена предикторов модели и соответствующие коэффициенты в sc = fitmodel(sc)creditscorecard объект.
fitmodel внутренне преобразует все переменные предиктора в значения WOE, используя ячейки, найденные в процессе автоматического или ручного binning. Переменная ответа отображается таким образом, что «Good» 1, а «Bad» - 0. Это подразумевает, что более высокие (не масштабированные) баллы соответствуют лучшим (менее рискованным) лицам (меньшая вероятность дефолта).
Кроме того, можно использовать setmodel чтобы предоставить имена предикторов, которые вы хотите в модели логистической регрессии, вместе с их соответствующими коэффициентами.
[ соответствует модели логистической регрессии данным веса доказательств (WOE) и сохраняет имена предикторов модели и соответствующие коэффициенты в sc,mdl] = fitmodel(sc)creditscorecard объект. fitmodel возвращает обновленный creditscorecard объект и GeneralizedLinearModel объект, содержащий подогнанную модель.
fitmodel внутренне преобразует все переменные предиктора в значения WOE, используя ячейки, найденные в процессе автоматического или ручного binning. Переменная ответа отображается таким образом, что «Good» 1, а «Bad» - 0. Это подразумевает, что более высокие (не масштабированные) баллы соответствуют лучшим (менее рискованным) лицам (меньшая вероятность дефолта).
Кроме того, можно использовать setmodel чтобы предоставить имена предикторов, которые вы хотите в модели логистической регрессии, вместе с их соответствующими коэффициентами.
[ подходит модель логистической регрессии к данным веса доказательств (WOE) с использованием необязательных аргументов пары имя-значение и сохраняет имена предикторов модели и соответствующие коэффициенты в sc,mdl] = fitmodel(___,Name,Value)creditscorecard объект. Используя аргументы пары «имя-значение», можно выбрать Обобщенную линейную модель (Generalized Linear Model) для соответствия данным. 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]
Выполните автоматическое binning.
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]
Выполните автоматическое binning.
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]
Выполните автоматическое binning.
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: {1×11 cell}
NumericPredictors: {'CustAge' 'TmAtAddress' 'CustIncome' 'TmWBank' 'AMBalance' 'UtilRate'}
CategoricalPredictors: {'ResStatus' 'EmpStatus' 'OtherCC'}
BinMissingData: 1
IDVar: 'CustID'
PredictorVars: {1×9 cell}
Data: [1200×11 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> bin, с соответствующим значением WOE, вычисленным на основе данных. При использовании fitmodelсоответствующее значение WOE для < missing > bin применяется при выполнении преобразования WOE. Например, отсутствует значение возраста клиента (CustAge) заменяется на -0.15787 которое является значением WOE для <missing> ячейка для CustAge предиктор. Однако когда 'BinMissingData' имеет значение false, отсутствует значение для 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:
logit(status) ~ 1 + CustAge + ResStatus + EmpStatus + CustIncome + TmWBank + OtherCC + AMBalance
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 является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.
[sc,mdl] = fitmodel(sc,'VariableSelection','FullModel')'PredictorVars' - Переменные предиктора для подгонки creditscorecard объектcreditscorecard object (по умолчанию) | массив ячеек символьных векторовПеременные предиктора для подгонки creditscorecard объект, указанный как разделенная запятыми пара, состоящая из 'PredictorVars' и клеточный массив символьных векторов. При наличии, creditscorecard свойство объекта PredictorsVars обновляется. Обратите внимание, что порядок предикторов в исходном наборе данных применяется независимо от порядка, в котором 'PredictorVars' обеспечивается. Если они не предоставлены, предикторы, используемые для создания creditscorecard объект (с помощью creditscorecard) используются.
Типы данных: cell
'VariableSelection' - Метод выбора переменных в соответствии с моделью логистической регрессии'Stepwise'
(по умолчанию) | символьный вектор со значениями 'Stepwise', 'FullModel'Метод выбора переменной для соответствия модели логистической регрессии, указанной как разделенная запятыми пара, состоящая из 'VariableSelection' и вектор символов со значениями 'Stepwise' или 'FullModel':
Stepwise - Использует пошаговый метод выбора, который вызывает функцию Toolbox™ статистики и машинного обучения stepwiseglm. Только переменные в PredictorVars потенциально может стать частью модели и использует StartingModel аргумент пары «имя-значение» для выбора начальной модели.
FullModel - Подходит для модели со всеми предикторными переменными в PredictorVars аргумент пары имя-значение и вызовы fitglm.
Примечание
Только переменные в PredictorVars имущества creditscorecard объект потенциально может стать частью модели логистической регрессии, и в эту модель включаются только линейные члены без взаимодействий или любые другие члены более высокого порядка.
Переменная ответа отображается таким образом, что «Good» 1 и «Bad» является 0.
Типы данных: char
'StartingModel' - Начальная модель для Stepwise выбор переменной'Constant'
(по умолчанию) | символьный вектор со значениями 'Constant', 'Linear'Начальная модель для Stepwise метод выбора переменной, указанный как пара, разделенная запятыми, состоящая из 'StartingModel' и вектор символов со значениями 'Constant' или 'Linear'. Эта опция определяет начальную модель (постоянную или линейную), которую выполняет функция «Набор инструментов для статистического и машинного обучения». stepwiseglm начинается с.
Constant - запускает пошаговый метод с пустой (только константной) моделью.
Linear - Запускает пошаговый метод из полной (все предикторы в) модели.
Примечание
StartingModel используется только для Stepwise вариант VariableSelection и не оказывает влияния на FullModel вариант VariableSelection.
Типы данных: char
'Display' - Индикатор для отображения информации о модели в командной строке'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веса используются для калибровки коэффициентов модели.
Основные функции набора инструментов для статистики и машинного обучения для stepwiseglm и fitglm поддерживает наблюдательные веса. Веса также влияют на логистическую модель через значения WOE. Преобразование WOE применяется ко всем предикторам перед подгонкой логистической модели. Веса наблюдения непосредственно влияют на значения WOE. Для получения дополнительной информации см. Использование bininfo с весами и моделирование кредитных карт показателей с использованием весов наблюдения.
Следовательно, баллы кредитной карты показателей и окончательный балл зависят от весов наблюдения как через коэффициенты логистической модели, так и от значений WOE.
Модель логистической регрессии используется в creditscorecard объект.
Для модели вероятность быть «Bad» определяется как: ProbBad = exp(-s) / (1 + exp(-s)).
[1] Андерсон, R. The Credit Скоринг Toolkit. Издательство Оксфордского университета, 2007 год.
[2] Рефаат, М. Карты оценки кредитных рисков: разработка и внедрение с использованием SAS. lulu.com, 2011.
autobinning | bindata | bininfo | creditscorecard | displaypoints | fitConstrainedModel | fitglm | formatpoints | GeneralizedLinearModel | modifybins | modifypredictor | plotbins | predictorinfo | probdefault | score | setmodel | stepwiseglm | validatemodel
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.