缺少的scikitlearnaddition与WeightofEvidence评分一起工作。
pywoe的Python项目详细描述
pywoe[测试版]
缺少的scikit learn添加到证据权重评分中, 特别关注信用风险模型。显然缺乏 开源、免费使用、经过良好测试的Python包,用于基本信用风险 建模任务。这样的软件包应该提供易于序列化、可部署的, 可转换数据验证,特征工程和特征选择技术。 它也应该易于在Jupyter实验室框架内使用。在
这仍然是一个正在进行的工作,包可以扩展到 多种有用的方法。请随时为我做贡献。在
目录
安装
要安装包的最新版本,只需运行
pip install pywoe
使用示例
简介
为了便于开始,我们提供了一个现成的sklearn
管道。
要加载,请执行以下操作。请随意运行示例数据的管道,
如下所示。在
上面的设置会自动构造垃圾箱并计算垃圾箱。 输出可用于选择logistic回归模型的特征, 或者在将要素输入模型之前对其进行预处理。在
信息值(IV)
在上面的示例中,还计算了信息值。取回
它们与为特性mean radius
决定的binning一起执行以下操作:
pipeline['woe_transformer'].woe_spec['mean radius'].bins
你会看到打印出来的数值。在
检查默认设置
frompywoeimportconstantsconstants.NUMERIC_ACCURACYconstants.DEFAULT_DECISION_TREE_CLASSIFIER_FIT_KWARGSconstants.DEFAULT_DECISION_TREE_CLASSIFIER_INIT_KWARGSconstants.P_VALUE_THRESHOLD
覆盖默认值
fromsklearn.pipelineimportPipelinefrompywoe.feature_engineering.validatorimportFeatureValidatorfrompywoe.feature_engineering.binningimportDecisionTreeBinnerfrompywoe.feature_engineering.woeimportWoETransformerfeature_validator=FeatureValidator()binner=DecisionTreeBinner(feature_validator=feature_validator,init_kwargs={"criterion":"entropy","max_depth":3,"min_samples_leaf":0.2})woe_transformer=WoETransformer(binner=binner)# Keep in mind `binner` is not an `sklearn` object, it is a parameter # to `woe_transformer`, so it's not used in the pipeline.pipeline=Pipeline([('validator',feature_validator),('woe_transformer',woe_transformer)])
下一步工作
需要进一步开展的工作包括但不限于:
- (显著)改进测试
- 添加基于边缘IV的自动特征选择
- 添加Jupyter集成绘图功能来检查模型
- 添加剩余监控(ReMo)功能
- 。。。在
- 项目
标签: