Py之Optbinning:Optbinning的简介、安装、使用方法之详细攻略

简介: Py之Optbinning:Optbinning的简介、安装、使用方法之详细攻略


目录

Optbinning的简介

Optbinning的安装

Optbinning的使用方法

1、一键算IV

2、根据特定条件的初步变量筛选

3、分箱及可视化

4、模型结果展示:

5、评分卡转化:


Optbinning的简介

       Optbinning,OptBinning 是一个用 Python 编写的库,实现了一个严格而灵活的数学编程公式,以解决二进制、连续和多类目标类型的最佳分箱问题,并结合了以前未解决的约束。

       它是由西班牙Universitat Polit`ecnica de Catalunya, Barcelona 大学的guillermo navas palencia博士做的包。最佳分箱是将数值特征约束离散化到给定二进制目标的箱中,从而最大化诸如 Jeffrey 散度或 Gini 之类的统计数据。 分箱是二进制分类中常用的一种数据预处理技术,但当前支持约束的现有分箱算法列表缺乏处理流数据的方法。 在这Optbinning文章中,提出了一种新的可扩展、内存高效且强大的算法,用于在流设置中执行最佳分箱。 所描述的算法将在开源 python 库 OptBinning 0.7.0 版中实现。

Githubhttps://github.com/guillermo-navas-palencia/optbinning/

文档http://gnpalencia.org/optbinning/

论文:

Optimal counterfactual explanations for scorecard modelling. https://arxiv.org/abs/2104.08619

Optimal binning: mathematical programming formulation. http://arxiv.org/abs/2001.08025

博客: Optimal binning for streaming data. Optimal binning for streaming data

案例Tutorials — optbinning 0.14.0 documentation

Optbinning的安装

1. pip install optbinning
2. pip install -i https://pypi.tuna.tsinghua.edu.cn/simple optbinning

Optbinning的使用方法

1、一键算IV

IV

2、根据特定条件的初步变量筛选

1. selected_data = toad.selection.select(data,target = 'target', empty = 0.5, iv = 0.02, corr = 0.7, return_drop=True, exclude=['ID','month'])
2. final_data = toad.selection.stepwise(data_woe,target = 'target', estimator='ols', direction = 'both', criterion = 'aic', exclude = to_drop)

3、分箱及可视化

1. # Chi-squared fine binning
2. c = toad.transform.Combiner()
3. c.fit(data_selected.drop(to_drop, axis=1), y = 'target', method = 'chi', min_samples = 0.05)
4. print(c.export())
5. 
6. 
7. # Visualisation to check binning results
8. col = 'feature_name'
9. bin_plot(c.transform(data_selected[[col,'target']], labels=True), x=col, target='target')

4、模型结果展示:

toad.metrics.KS_bucket(pred_proba, final_data['target'], bucket=10, method = 'quantile')

5、评分卡转化:

1. card = toad.ScoreCard(
2.     combiner = c,
3.     transer = transer,
4.     class_weight = 'balanced',
5.     C=0.1,
6.     base_score = 600,
7.     base_odds = 35 ,
8.     pdo = 60,
9.     rate = 2
10. )
11. card.fit(final_data[col], final_data['target'])
12. print(card.export())

文章知识点与官方知识档案匹配,可进一步学习相关知识



相关文章
|
JavaScript 前端开发 数据可视化
Py之mpld3:mpld3的简介、安装、使用方法之详细攻略
Py之mpld3:mpld3的简介、安装、使用方法之详细攻略
Py之mpld3:mpld3的简介、安装、使用方法之详细攻略
|
机器学习/深度学习 Python
Py之yacs:yacs的简介、安装、使用方法之详细攻略
Py之yacs:yacs的简介、安装、使用方法之详细攻略
Py之yacs:yacs的简介、安装、使用方法之详细攻略
|
JavaScript 前端开发 Python
Py之easydict:easydict的简介、安装、使用方法之详细攻略
Py之easydict:easydict的简介、安装、使用方法之详细攻略
Py之easydict:easydict的简介、安装、使用方法之详细攻略
Py之scorecardpy:scorecardpy的简介、安装、使用方法之详细攻略
Py之scorecardpy:scorecardpy的简介、安装、使用方法之详细攻略
Py之scorecardpy:scorecardpy的简介、安装、使用方法之详细攻略
|
存储 程序员 Python
Py之configobj:configobj的简介、安装、使用方法之详细攻略
Py之configobj:configobj的简介、安装、使用方法之详细攻略
Py之configobj:configobj的简介、安装、使用方法之详细攻略
|
Linux Python Windows
Py之terminaltables:terminaltables的简介、安装、使用方法之详细攻略
Py之terminaltables:terminaltables的简介、安装、使用方法之详细攻略
Py之terminaltables:terminaltables的简介、安装、使用方法之详细攻略
|
Unix Linux API
Py之portalocker:portalocker的简介、安装、使用方法之详细攻略
Py之portalocker:portalocker的简介、安装、使用方法之详细攻略
Py之portalocker:portalocker的简介、安装、使用方法之详细攻略
|
人工智能 并行计算 API
Py之cupy:cupy的简介、安装、使用方法之详细攻略
Py之cupy:cupy的简介、安装、使用方法之详细攻略
Py之cupy:cupy的简介、安装、使用方法之详细攻略
|
机器学习/深度学习 C++ Python
Py之scikiti -survival:scikiti -survival库的简介、安装、使用方法之详细攻略
Py之scikiti -survival:scikiti -survival库的简介、安装、使用方法之详细攻略
Py之scikiti -survival:scikiti -survival库的简介、安装、使用方法之详细攻略
Py之zhon:zhon库的简介、安装、使用方法之详细攻略
Py之zhon:zhon库的简介、安装、使用方法之详细攻略
Py之zhon:zhon库的简介、安装、使用方法之详细攻略