Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ing-bank/skorecard
scikit-learn compatible tools for building credit risk acceptance models
https://github.com/ing-bank/skorecard
credit-risk creditrisk logistic-regression machine-learning scikit-learn scorecard scorecard-model scorecards
Last synced: about 18 hours ago
JSON representation
scikit-learn compatible tools for building credit risk acceptance models
- Host: GitHub
- URL: https://github.com/ing-bank/skorecard
- Owner: ing-bank
- License: mit
- Created: 2021-06-07T11:45:30.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-04-11T15:47:06.000Z (9 months ago)
- Last Synced: 2024-05-01T22:44:46.700Z (8 months ago)
- Topics: credit-risk, creditrisk, logistic-regression, machine-learning, scikit-learn, scorecard, scorecard-model, scorecards
- Language: Python
- Homepage: https://ing-bank.github.io/skorecard/
- Size: 8.53 MB
- Stars: 80
- Watchers: 17
- Forks: 19
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# skorecard
![pytest](https://github.com/ing-bank/skorecard/workflows/Development/badge.svg)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/skorecard)
![PyPI](https://img.shields.io/pypi/v/skorecard)
![PyPI - License](https://img.shields.io/pypi/l/skorecard)
![GitHub contributors](https://img.shields.io/github/contributors/ing-bank/skorecard)
[![PyPI - Downloads](https://img.shields.io/pypi/dm/skorecard)](#)
[![Downloads](https://pepy.tech/badge/skorecard)](https://pepy.tech/project/skorecard)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)](https://github.com/pre-commit/pre-commit)`skorecard` is a scikit-learn compatible python package that helps streamline the development of credit risk acceptance models (scorecards).
Scorecards are ‘traditional’ models used by banks in the credit decision process. Internally, scorecards are Logistic Regression models that make use of features that are binned into different groups. The process of binning is usually done manually by experts, and `skorecard` provides tools to makes this process easier. `skorecard` is built on top of [scikit-learn](https://pypi.org/project/scikit-learn/) as well as other excellent open source projects like [optbinning](https://pypi.org/project/optbinning/), [dash](https://pypi.org/project/dash/) and [plotly](https://pypi.org/project/plotly/).
:point_right: Read the [blogpost introducing skorecard](https://timvink.nl/introducing-skorecard/)
## Features ⭐
- Automate bucketing of features inside scikit-learn pipelines.
- Dash webapp to help manually tweak bucketing of features with business knowledge
- Extension to `sklearn.linear_model.LogisticRegression` that is also able to report p-values
- Plots and reports to speed up analysis and writing technical documentation.## Quick demo
`skorecard` offers a range of [bucketers](https://ing-bank.github.io/skorecard/api/bucketers/OptimalBucketer/):
```python
import pandas as pd
from skorecard.bucketers import EqualWidthBucketerdf = pd.DataFrame({'column' : range(100)})
ewb = EqualWidthBucketer(n_bins=5)
ewb.fit_transform(df)ewb.bucket_table('column')
#> bucket label Count Count (%)
#> 0 -1 Missing 0.0 0.0
#> 1 0 (-inf, 19.8] 20.0 20.0
#> 2 1 (19.8, 39.6] 20.0 20.0
#> 3 2 (39.6, 59.400000000000006] 20.0 20.0
#> 4 3 (59.400000000000006, 79.2] 20.0 20.0
#> 5 4 (79.2, inf] 20.0 20.0
```That also support a dash app to explore and update bucket boundaries:
```python
ewb.fit_interactive(df)
#> Dash app running on http://127.0.0.1:8050/
```![](docs/assets/img/dash_app_unsupervised_bucketer.png)
## Installation
```shell
pip3 install skorecard
```## Documentation
See [ing-bank.github.io/skorecard/](https://ing-bank.github.io/skorecard/).
## Presentations
| Title | Host | Date | Speaker(s) |
|----------------------------------------------------|-------------------------|--------------|----------------------------------------------|
| Skorecard: Making logistic regressions great again | [ING Data Science Meetup](https://www.youtube.com/watch?v=UR_1XZxEuCw) | 10 June 2021 | Daniel Timbrell, Sandro Bjelogrlic, Tim Vink |