This is a python application of DARC. DARC is a competition held at PETs on the AIcrowd plateform. To participate please go on AIcrowd website.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
In order to run the tests and to test your submission you need to do the following:
If you want to use DARC core:
If you only want to test it with docker:
- docker and docker-compose
On linux you can use your package manager to intall them as below
#Ubuntu
apt-get install docker
#Arch-Linux
sudo pacman -S docker
Install the requirements via pip:
pip install -r requirements.txt
To run the test on the core execute the following command:
docker-compose up --build --remove-orphans --renew-anon-volumes --abort-on-container-exit test
It will run test to check if the current version of the DARC core and the older
one behaves in the same way. To check the result consult the file
./data/testing_files/testing.log
TODO : Make some unit test to check the methods
To test if the platform (darc_evaluator) is working do:
docker-compose up --build --remove-orphans --renew-anon-volumes --abort-on-container-exit darc
To set the path of the submission for both round 1 and 2 during the test of
the platefrom, change the following variables in config.py
:
class Config()
#...
R1_SUBMISSION_FILE = "data/example_files/submission_DEL.csv"
R2_SUBMISSION_FILE = "./data/example_files/F_a_attempt_2.tar"
To use the DARC core just import it in your project as :
import darc_core
from darc_core.preprocessing import round1_preprocessing
from darc_core.utils import check_format_trans_file
# Read database from files
ground_truth, submission = round1_preprocessing(
self.answer_file_path, submission_file_path
)
# Check the format of the Anonymized Transaction file
check_format_trans_file(ground_truth, submission)
# Run metrics for a submission (AT)
metric = darc_core.Metrics(ground_truth, submission)
scores = metric.scores()
Please free to contributing in the darc_core code. Espetially in term of optimization or architecture model.
All the persons below have participated to DARC implementation and deployements
- Antoine Laurent - Ph.D candidate at UQAM
- Sébastien Gambs - Professor at UQAM
- Louis Béziaud - Ph.D candidate at UQAM
- Sharada Mohanty - CEO & Co-funder of AIcrowd
- Yoann Pagnoux - Master Student at INSA
And of course all the people from the comite.
This project is licensed under the MIT License - see the LICENSE.md file for details
- We would like to thank all our colleagues, previous trainees and students who gave their time and energy for the competition test.