Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Evolutionary-Neuro-Fuzzy System for Medical Diagnosis

This repo contains the code of our project for the course of Bio-inspired Artificial Intelligence (a.y. 2024/25).

We explore the development and application of EAs to evolve a Neuro-Fuzzy Inference System in different medical fields. We developed an EA on top of a pre-existing Neuro-Fuzzy System, developed into an on-working study conducted by FBK.

Authors: Nicola Muraro, Vincenzo Netti, Marina Segala and Giovanni Valer.

Project structure

Project-Bio-Inspired-AI
├── data
│   ├── datasets
│   │   ├── sepsis
│   │   │   ├── sepsis_survival_primary_cohort.csv
│   │   │   ├── sepsis_survival_study_cohort.csv
│   │   │   └── sepsis_survival_validation_cohort.csv
│   │   ├── diabetes.csv
│   │   ├── maternal_health_risk.csv
│   │   └──  obesity.csv
│   └── data.py
├── experiments
│   ├── configurations
│   │   ├── diabetes
│   │   │   ├── conf_V.json
│   │   │   ├── conf_standard.json
│   │   │   └── conf_w.json
│   │   ├── maternal_hr
│   │   │   ├── conf-00-fast.json
│   │   │   ├── conf_V.json
│   │   │   ├── conf_standard.json
│   │   │   └── conf_w.json
│   │   ├── obesity
│   │   │   ├── conf_V.json
│   │   │   ├── conf_standard.json
│   │   │   └── conf_w.json
│   │   └── sepsis
│   │   │   ├── conf-01-V.json
│   │   │   ├── conf-01-weights.json
│   │   │   └── conf-01.json
│   │   ├── conf_general_V.json
│   │   ├── conf_general_weights.json
│   │   └──  configurations.py
│   ├── results
│   │   ├── tables
│   │   │   ├── summary_results_diabetes.csv
│   │   │   ├── summary_results_maternal.csv
│   │   │   ├── summary_results_sepsis.csv
│   │   │   └── table_confrontation.py
│   │   ├── no_evo_diabete.css
│   │   ├── no_evo_maternal.csv
│   │   ├── no_evo_sepsis.csv
│   │   ├── res_w_diabetes.csv
│   │   ├── res_w_maternal.csv
│   │   ├── res_w_sepsis.csv
│   │   ├── show_results_diabets.ipynb
│   │   ├── show_results_maternal.ipynb
│   │   └── show_results_sepsis.ipynb
│   ├── calculate.py
│   ├── evolution.py
│   ├── plots.py
│   └── utils.py
├── models
├── env2.yml
├── environment.yml
├── README.md
└── main.py

Running the Code

1. Set up the Project Environment

  • First, ensure you have Conda installed. If not, follow the instructions here.

  • Then, create the project environment using the provided environment.yml file:

    conda env create -f environment.yml
  • And activate it:

    conda activate neurofuzzy

2. Set up Configuration

  • Ensure you have a configuration file located in the experiments/configurations/<dataset>/ directory.

  • This file should contain experiment settings such as the number of seeds, neuron types, fitness fn, parameters for mutation and crossover etc, and the path for storing the results.

3. Command-line Arguments

  • The script accepts command-line arguments to a specific dataset and path to the configuration file

  • Use the following command-line arguments:

    • -dataset: Specify the dataset to use
    • -path_to_conf: Provide a path to the configuration file

4. Run the Script

  • Run the main script using Python:
    python main.py -dataset <dataset> -path_to_conf ./experiments/configurations/<dataset>/<name_of_conf>.json 

About

Repo of our group project for the course of Bio-inspired Artificial Intelligence

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages