Coder Social home page Coder Social logo

metamimic's Introduction

metaMIMIC

analysis of hyperparameter transferability for tabular data using MIMIC-IV database

What is this?

This is a repository containing code used to reproduce the results presented in the metaMIMIC study available here.

What is needed to reproduce the results?

To reproduce the results you will need the following:

It is important to mention that both the PostgreSQL database and the proposed calculations may be considered resource-heavy. It took us several days of CPU time using 48 cores and 256 GB of RAM to generate all the results.

How to reproduce the results?

Results of the experiments are already available in the respective experiment directories, but you can also reproduce them by making sure you have all the above available and following these steps:

  1. Create the 1_metaMIMIC_data/metaMIMIC.csv file containing the base data for all models. To do this, provide PostgreSQL database credentials and location (username, password, host address, and database name) in the 1_metaMIMIC_data/connection_info.txt file and run the 1_metaMIMIC_data/metaMIMIC_data.py script (e.g. cd 1_metaMIMIC_data && nano connection_info.txt && python metaMIMIC_data.py on Linux).
  2. Run the first two experiments. To do this, remove or rename the already provided (2-3)_metaMIMIC_experiment_(1-2)/results.csv results file (the script will not run if it is present) and run the (2-3)_metaMIMIC_experiment_(1-2)/metaMIMIC_experiment_(1-2).py script (e.g. cd 2_metaMIMIC_experiment_1 && mv results.csv original_results.csv && python metaMIMIC_experiment_1 on Linux).
  3. Prepare the data needed for the third experiment. To do this, run the 4_metaMIMIC_columns/metaMIMIC_columns.py script (e.g. cd 4_metaMIMIC_columns && python metaMIMIC_columns.py on Linux).
  4. Run the third experiment. To do this, remove or rename the already provided 5_metaMIMIC_experiment_3/results.csv results file (the script will not run if it is present) and run the 5_metaMIMIC_experiment_3/metaMIMIC_experiment_3.py script (e.g. cd 5_metaMIMIC_experiment_3 && ls results* | xargs -I {} mv {} official_{} && python metaMIMIC_experiment_3.py on Linux).
  5. Run the last experiment. To do this, remove or rename the already provided 6_metaMIMIC_experiment_bayes/results.csv results file (the script will not run if it is present) and run the 6_metaMIMIC_experiment_bayes/metaMIMIC_experiment_bayes.py script (e.g. cd 6_metaMIMIC_experiment_bayes && mv results.csv original_results.csv && python metaMIMIC_experiment_bayes.py on Linux).

All the exemplary commands are supposed to be run from the toplevel directory of this repository.

Additional information

Directory mementoML_results contains the results from the mementoML study available here: https://arxiv.org/abs/2008.13162. Our results were prepared using the same hyperparameter grid and we used the mementoML results for a comparison.

The code we used to analyse the results and prepare figures for the metaMIMIC paper can be found in the results_analysis directory.

metamimic's People

Contributors

zuzanna-trafas avatar mgrzyb99 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.