exponenta event banner

displaypoints

Точки возврата на предиктор на ячейку для compactCreditScorecard объект

Описание

пример

PointsInfo = displaypoints(csc) возвращает таблицу точек для всех ячеек всех переменных предиктора, используемых в compactCreditScorecard объект. PointsInfo В таблице отображается информация об имени предиктора, метках ячейки и соответствующих точках на ячейку.

пример

[PointsInfo,MinScore,MaxScore] = displaypoints(csc) возвращает таблицу точек для всех ячеек всех переменных предиктора, используемых в compactCreditScorecard объект. PointsInfo отображает информацию об имени предиктора, метках ячейки и соответствующих точках на ячейку и displaypoints. Кроме того, необязательный MinScore и MaxScore возвращаются значения.

пример

[PointsInfo,MinScore,MaxScore] = displaypoints(___,Name,Value) указывает параметры, использующие один или несколько аргументов пары имя-значение в дополнение к входным аргументам в предыдущем синтаксисе.

Примеры

свернуть все

Создание compactCreditScorecard объект, сначала создайте creditscorecard с использованием CreditCardData.mat для загрузки файла data (с использованием набора данных из Refaat 2011).

load CreditCardData.mat
sc = creditscorecard(data)
sc = 
  creditscorecard with properties:

                GoodLabel: 0
              ResponseVar: 'status'
               WeightsVar: ''
                 VarNames: {1x11 cell}
        NumericPredictors: {1x7 cell}
    CategoricalPredictors: {'ResStatus'  'EmpStatus'  'OtherCC'}
           BinMissingData: 0
                    IDVar: ''
            PredictorVars: {1x10 cell}
                     Data: [1200x11 table]

Перед созданием compactCreditScorecard object, необходимо использовать autobinning и fitmodel с creditscorecard объект.

sc = autobinning(sc);
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

Используйте creditscorecard объект с compactCreditScorecard для создания compactCreditScorecard объект.

csc = compactCreditScorecard(sc)
csc = 
  compactCreditScorecard with properties:

              Description: ''
                GoodLabel: 0
              ResponseVar: 'status'
               WeightsVar: ''
        NumericPredictors: {'CustAge'  'CustIncome'  'TmWBank'  'AMBalance'}
    CategoricalPredictors: {'ResStatus'  'EmpStatus'  'OtherCC'}
            PredictorVars: {1x7 cell}

Затем использовать displaypoints с compactCreditScorecard объект для возврата таблицы точек для всех ячеек всех переменных предиктора, используемых в compactCreditScorecard объект.

[PointsInfo,MinScore,MaxScore] = displaypoints(csc)
PointsInfo=37×3 table
      Predictors            Bin            Points  
    ______________    ________________    _________

    {'CustAge'   }    {'[-Inf,33)'   }     -0.15894
    {'CustAge'   }    {'[33,37)'     }     -0.14036
    {'CustAge'   }    {'[37,40)'     }    -0.060323
    {'CustAge'   }    {'[40,46)'     }     0.046408
    {'CustAge'   }    {'[46,48)'     }      0.21445
    {'CustAge'   }    {'[48,58)'     }      0.23039
    {'CustAge'   }    {'[58,Inf]'    }        0.479
    {'CustAge'   }    {'<missing>'   }          NaN
    {'ResStatus' }    {'Tenant'      }    -0.031252
    {'ResStatus' }    {'Home Owner'  }      0.12696
    {'ResStatus' }    {'Other'       }      0.37641
    {'ResStatus' }    {'<missing>'   }          NaN
    {'EmpStatus' }    {'Unknown'     }    -0.076317
    {'EmpStatus' }    {'Employed'    }      0.31449
    {'EmpStatus' }    {'<missing>'   }          NaN
    {'CustIncome'}    {'[-Inf,29000)'}     -0.45716
      ⋮

MinScore = -1.3100
MaxScore = 3.0726

displaypoints всегда отображает '<missing>' bin для каждого предиктора. Значение '<missing>' bin происходит от начального creditscorecard объект и '<missing>' для ячейки установлено значение NaN каждый раз, когда модель карты показателей не имеет информации о том, как назначить точки отсутствующим данным.

Настройка точек для '<missing>' bin, необходимо использовать начальный creditscorecard объект. Для предикторов, у которых отсутствуют значения в обучающем наборе, баллы для '<missing>' bin оцениваются из данных, если 'BinMissingData' аргумент пары имя-значение имеет значение true использование creditscorecard. Когда 'BinMissingData' параметр имеет значение falseили если данные не содержат отсутствующих значений в обучающем наборе, используйте 'Missing' аргумент пары имя-значение в formatpoints для указания способа назначения точек отсутствующим данным. Затем восстановите compactCreditScorecard объект и повторный запуск displaypoints. Вот пример этого рабочего процесса:

sc = formatpoints(sc,'Missing','minpoints');
csc = compactCreditScorecard(sc);
[PointsInfo,MinScore,MaxScore] = displaypoints(csc)
PointsInfo=37×3 table
      Predictors            Bin            Points  
    ______________    ________________    _________

    {'CustAge'   }    {'[-Inf,33)'   }     -0.15894
    {'CustAge'   }    {'[33,37)'     }     -0.14036
    {'CustAge'   }    {'[37,40)'     }    -0.060323
    {'CustAge'   }    {'[40,46)'     }     0.046408
    {'CustAge'   }    {'[46,48)'     }      0.21445
    {'CustAge'   }    {'[48,58)'     }      0.23039
    {'CustAge'   }    {'[58,Inf]'    }        0.479
    {'CustAge'   }    {'<missing>'   }     -0.15894
    {'ResStatus' }    {'Tenant'      }    -0.031252
    {'ResStatus' }    {'Home Owner'  }      0.12696
    {'ResStatus' }    {'Other'       }      0.37641
    {'ResStatus' }    {'<missing>'   }    -0.031252
    {'EmpStatus' }    {'Unknown'     }    -0.076317
    {'EmpStatus' }    {'Employed'    }      0.31449
    {'EmpStatus' }    {'<missing>'   }    -0.076317
    {'CustIncome'}    {'[-Inf,29000)'}     -0.45716
      ⋮

MinScore = -1.3100
MaxScore = 3.0726

Создание compactCreditScorecard объект, сначала создайте creditscorecard с использованием CreditCardData.mat для загрузки файла data (с использованием набора данных из Refaat 2011). Использование dataMissing набор данных, установите 'BinMissingData' индикатор в true.

load CreditCardData.mat
sc = creditscorecard(dataMissing,'BinMissingData',true); 

Перед созданием compactCreditScorecard object, необходимо использовать autobinning и fitmodel с creditscorecard объект. Во-первых, использовать autobinning с creditscorecard объект.

sc = autobinning(sc);

Карта привязки или правила для категориальных данных суммируются в таблице «группирования категорий», возвращаемой как необязательный вывод. По умолчанию каждая категория помещается в отдельную ячейку. Вот информация для предиктора ResStatus.

[bi,cg] = bininfo(sc,'ResStatus')
bi=5×6 table
         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

cg=3×2 table
       Category       BinNumber
    ______________    _________

    {'Tenant'    }        1    
    {'Home Owner'}        2    
    {'Other'     }        3    

Для группирования категорий 'Tenant' и 'Other', изменить таблицу группировки категорий cg, таким образом, номер ячейки для 'Other' совпадает с номером ячейки для 'Tenant'. Затем использовать modifybins для обновления creditscorecard объект.

cg.BinNumber(3) = 2; 
sc = modifybins(sc,'ResStatus','Catg',cg); 

Просмотр обновленной информации о ячейке с помощью bininfo. Обратите внимание, что метки ячеек были обновлены и что информация о членстве в ячейках содержится в группировке категорий. cg.

[bi,cg] = bininfo(sc,'ResStatus')
bi=4×6 table
         Bin         Good    Bad     Odds        WOE       InfoValue 
    _____________    ____    ___    ______    _________    __________

    {'Group1'   }    296     161    1.8385    -0.095463     0.0035249
    {'Group2'   }    480     223    2.1525     0.062196     0.0022419
    {'<missing>'}     27      13    2.0769     0.026469    2.3248e-05
    {'Totals'   }    803     397    2.0227          NaN       0.00579

cg=3×2 table
       Category       BinNumber
    ______________    _________

    {'Tenant'    }        1    
    {'Home Owner'}        2    
    {'Other'     }        2    

Использовать formatpoints с 'Missing' аргумент пары имя-значение, указывающий, что назначены отсутствующие данные 'maxpoints'.

sc = formatpoints(sc,'BasePoints',true,'Missing','maxpoints','WorstAndBest',[300 800]); 

Использовать fitmodel для соответствия модели.

sc = fitmodel(sc,'VariableSelection','fullmodel','Display','Off'); 

Используйте creditscorecard объект с compactCreditScorecard для создания compactCreditScorecard объект.

csc = compactCreditScorecard(sc)
csc = 
  compactCreditScorecard with properties:

              Description: ''
                GoodLabel: 0
              ResponseVar: 'status'
               WeightsVar: ''
        NumericPredictors: {1x7 cell}
    CategoricalPredictors: {'ResStatus'  'EmpStatus'  'OtherCC'}
            PredictorVars: {1x10 cell}

Затем использовать displaypoints с compactCreditScorecard объект для возврата таблицы точек для всех ячеек всех переменных предиктора, используемых в compactCreditScorecard объект. Путем установки displaypoints аргумент пары имя-значение для 'ShowCategoricalMembers' кому trueотображаются все элементы, содержащиеся в каждой отдельной группе.

[PointsInfo,MinScore,MaxScore] = displaypoints(csc,'ShowCategoricalMembers',true)
PointsInfo=51×3 table
      Predictors            Bin          Points 
    _______________    ______________    _______

    {'BasePoints' }    {'BasePoints'}     535.25
    {'CustID'     }    {'[-Inf,121)'}     12.085
    {'CustID'     }    {'[121,241)' }     5.4738
    {'CustID'     }    {'[241,1081)'}    -1.4061
    {'CustID'     }    {'[1081,Inf]'}    -7.2217
    {'CustID'     }    {'<missing>' }     12.085
    {'CustAge'    }    {'[-Inf,33)' }    -25.973
    {'CustAge'    }    {'[33,37)'   }     -22.67
    {'CustAge'    }    {'[37,40)'   }    -17.122
    {'CustAge'    }    {'[40,46)'   }    -2.8071
    {'CustAge'    }    {'[46,48)'   }     9.5034
    {'CustAge'    }    {'[48,51)'   }     10.913
    {'CustAge'    }    {'[51,58)'   }     13.844
    {'CustAge'    }    {'[58,Inf]'  }     37.541
    {'CustAge'    }    {'<missing>' }    -9.7271
    {'TmAtAddress'}    {'[-Inf,23)' }    -9.3683
      ⋮

MinScore = 300
MaxScore = 800.0000

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

свернуть все

Компактная модель кредитной карты показателей, указанная как compactCreditScorecard объект.

Создание compactCreditScorecard объект, использование compactCreditScorecard или compact из Финансового Toolbox™.

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

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

Пример: [PointsInfo,MinScore,MaxScore] = displaypoints(csc,'ShowCategoricalMembers',true)

Индикатор отображения меток ячеек категорий, сгруппированных вместе, указанных как разделенная запятыми пара, состоящая из 'ShowCategoricalMembers' и логический скаляр со значением true или false.

По умолчанию, когда 'ShowCategoricalMembers' является false, метки ячеек отображаются как Group1, Group2,…,Groupn, или если метки ячейки были изменены в creditscorecard, затем отображаются имена меток пользовательских ячеек.

Если 'ShowCategoricalMembers' является trueотображаются все элементы, содержащиеся в каждой отдельной группе.

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

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

свернуть все

Одна строка на ячейку, на предиктор, с соответствующими точками, возвращается в виде таблицы. Например:

ПредсказателиМусорное ведроПункты
Predictor_1Bin_11Points_11
Predictor_1Bin_12Points_12
Predictor_1Bin_13Points_13
 ......
Predictor_1'<missing>'NaN (По умолчанию)
Predictor_2Bin_21Points_21
Predictor_2Bin_22Points_22
Predictor_2Bin_23Points_23
 ......
Predictor_2'<missing>'NaN (По умолчанию)
Predictor_jBin_jiPoints_ji
 ......
Predictor_j'<missing>'NaN (По умолчанию)

displaypoints всегда отображает '<missing>' bin для каждого предиктора. Значение '<missing>' bin происходит от начального creditscorecard объект и '<missing>' для ячейки установлено значение NaN каждый раз, когда модель карты показателей не имеет информации о том, как назначить точки отсутствующим данным.

Настройка точек для '<missing>' bin, необходимо использовать начальный creditscorecard объект. Для предикторов, у которых отсутствуют значения в обучающем наборе, баллы для '<missing>' bin оцениваются из данных, если 'BinMissingData' аргумент пары имя-значение для имеет значение true использование creditscorecard. Когда 'BinMissingData' параметр имеет значение falseили если данные не содержат отсутствующих значений в обучающем наборе, используйте 'Missing' аргумент пары имя-значение в formatpoints для указания способа назначения точек отсутствующим данным. Затем перестроить compactCreditScorecard объект и повторный запуск displaypoints.

Когда базовые точки сообщаются отдельно (см. formatpoints), первая строка возвращенного PointsInfo таблица содержит базовые точки.

Минимально возможный общий балл, возвращаемый как скаляр.

Примечание

Минимальный балл - это самый низкий возможный общий балл в математическом смысле, независимо от того, означает ли низкий балл высокий риск или низкий риск.

Максимально возможный общий балл, возвращаемый как скаляр.

Примечание

Максимальный балл - это максимально возможный общий балл в математическом смысле, независимо от того, означает ли высокий балл высокий риск или низкий риск.

Алгоритмы

Точки для предсказателя j и bin i по умолчанию задаются как

Points_ji = (Shift + Slope*b0)/p + Slope*(bj*WOEj(i))
где bj - модельный коэффициент предиктора j, p - количество предикторов в модели, и WOEj (i) - значение веса доказательства (WOE) для i-го элемента, соответствующего j-му модельному предиктору .Shift и Slope являются константами масштабирования.

Когда базовые точки сообщаются отдельно (см. formatpoints аргумент пары имя-значение BasePoints), базовые точки задаются

Base Points = Shift + Slope*b0,
и точки для j-го предиктора, i-й строки задаются
Points_ji = Slope*(bj*WOEj(i))).

По умолчанию базовые точки отдельно не указываются.

Минимальные и максимальные баллы:

MinScore = Shift + Slope*b0 + min(Slope*b1*WOE1) + ... +min(Slope*bp*WOEp)),
MaxScore = Shift + Slope*b0 + max(Slope*b1*WOE1) + ... +max(Slope*bp*WOEp)).

Использовать formatpoints для управления масштабированием, округлением и раздельным представлением базовых точек. Посмотрите formatpoints дополнительные сведения о параметрах формата, а также сведения и формулы для этих параметров форматирования.

Ссылки

[1] Андерсон, R. The Credit Скоринг Toolkit. Издательство Оксфордского университета, 2007 год.

[2] Рефаат, М. Карты оценки кредитных рисков: разработка и внедрение с использованием SAS. lulu.com, 2011.

Представлен в R2019a