This repository implements the AdaBoost algortihm in Julia and tests several AdaBoost-based machine learning models. The project includes scripts for training, testing, and analyzing models, as well as utilities for data processing and result visualization.
The most recent code and experiments can be found in the /adaboost directory, below an overview of its content.
tl_adaboost_mc.jl: Main implementation of AdaBoost for multi-class classification.tl_adaboost_mc_bin.jl: Binary classification version of AdaBoost.tl_adaboost_mc_bin_synth.jl: AdaBoost implementation for synthetic binary datasets.utility.jl: Utility functions for data processing, loss computation, and accuracy evaluation.setup.jl: Environment setup and configuration, when running on a cluster.analyze_weights.jl: Analysis of model weights during training.old_tl_adaboost_mc.jl: Old implementation of AdaBoost multi-class.
env_adaboostmc/: Julia environment files (Project.tomlandManifest.toml) for dependency management.logs/: Logs from model training and testing runs.results/: Results from experiments with multi-class AdaBoost.results_bin/: Results from binary classification experiments.results_bin_synth/: Results from synthetic binary dataset experiments.
Julia 1.9.3 was used for all the experiments.
- Activate the Julia environment using the
env_adaboostmcfolder (run this command inside the/adaboostdirectory):julia --project=env_adaboostmc
- In the Julia REPL run:
to install all the dependencies listed in the Manifest.toml file of the
using Pkg Pkg.instantiate()env_adaboostmcenvironment.