Imbalanced Classification with Deep Reinforcement Learning.
Project description
imbDRL
Imbalanced Classification with Deep Reinforcement Learning.
This repository contains an (Double) Deep Q-Network implementation of binary classification on unbalanced datasets using TensorFlow 2.3 / 2.4 and TF Agents 0.6:
- The Double Deep Q-network as published in this paper by van Hasselt et al. is using a custom environment based on this paper by Lin et al.
Example scripts on the Mnist, Fashion Mnist and Credit Card Fraud datasets can be found in the ./imbDRL/examples/ddqn/
folder.
Requirements
- Python 3.7+
pip install -r requirements.txt
- Logs are by default saved in
./logs/
- Trained models are by default saved in
./models/
- Optional:
./data/
folder located at the root of this repository.- This folder must contain
creditcard.csv
downloaded from Kaggle if you would like to use the Credit Card Fraud dataset. - Note:
creditcard.csv
needs to be split in a seperate train and test file. Please use the functionimbDRL.utils.split_csv
- This folder must contain
Getting started
Run any of the following scripts:
python .\imbDRL\examples\ddqn\train_credit.py
python .\imbDRL\examples\ddqn\train_famnist.py
python .\imbDRL\examples\ddqn\train_mnist.py
TensorBoard
To enable TensorBoard, run tensorboard --logdir logs
Tests and linting
Extra arguments are handled with the ./tox.ini
file.
- Pytest:
python -m pytest
- Flake8:
flake8
- Coverage can be found in the generated
./htmlcov
folder
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
imbDRL-2020.12.29.1.tar.gz
(16.6 kB
view hashes)
Built Distribution
Close
Hashes for imbDRL-2020.12.29.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c174ec18e8d611879b45e24b2f098de5cd9ff0fd24c4ab5ae7484ed7d8f548df |
|
MD5 | 926de86f2f4709dd0b7b1c0c534eaa9e |
|
BLAKE2b-256 | c98932ef73755859e7e2747f05e3756bcc84f79f2d60c64fb2d691490cdc15c2 |