• v1.2.1 89142f8997

    rmontanana released this 2025-07-19 20:52:59 +00:00 | 0 commits to main since this release

    Internal

    • Update Libtorch to version 2.7.1
    • Update libraries versions:
      • mdlp: 2.1.1
      • Folding: 1.1.2
      • ArffFiles: 1.2.1
    • Add docs generation to CMakeLists.txt.
    • Add new hyperparameters to the Ld classifiers:
      • ld_algorithm: algorithm to use for local discretization, with the following options: "MDLP", "BINQ", "BINU".
      • ld_proposed_cuts: number of cut points to return.
      • mdlp_min_length: minimum length of a partition in MDLP algorithm to be evaluated for partition.
      • mdlp_max_depth: maximum level of recursion in MDLP algorithm.
      • max_iterations: maximum number of iterations of discretization-build model loop.
      • verbose_convergence: display status messages during the convergence process.
    • Remove vcpkg as a dependency manager, now the library is built with Conan package manager and CMake.
    • Add build_type option to the sample target in the Makefile to allow building in Debug or Release mode. Default is Debug.
    Downloads
  • v1.1.0 5f95117dd4

    rmontanana released this 2025-04-27 20:57:10 +00:00 | 54 commits to main since this release

    Internal

    • Add changes to .clang-format to adjust to vscode format style thanks to https://clang-format-configurator.site/
    • Remove all the dependencies as git submodules and add them as vcpkg dependencies.
    • Fix the dependencies versions for this specific BayesNet version.
    Downloads
  • v1.0.7 7076efc2a1

    rmontanana released this 2025-03-16 18:01:23 +00:00 | 66 commits to main since this release

    Added

    • A new hyperparameter to the BoostAODE class, alphablock, to control the way α is computed, with the last model or with the ensmble built so far. Default value is false.
    • A new hyperparameter to the SPODE class, parent, to set the root node of the model. If no value is set the root parameter of the constructor is used.
    • A new hyperparameter to the TAN class, parent, to set the root node of the model. If not set the first feature is used as root.
    • A new model named XSPODE, an optimized for speed averaged one dependence estimator.
    • A new model named XSP2DE, an optimized for speed averaged two dependence estimator.
    • A new model named XBAODE, an optimized for speed BoostAODE model.
    • A new model named XBA2DE, an optimized for speed BoostA2DE model.

    Internal

    • Optimize ComputeCPT method in the Node class.
    • Add methods getCount and getMaxCount to the CountingSemaphore class, returning the current count and the maximum count of threads respectively.

    Changed

    • Hyperparameter maxTolerance in the BoostAODE class is now in [1, 6] range (it was in [1, 4] range before).
    Downloads
  • v1.0.6 d84adf6172

    rmontanana released this 2024-11-23 18:15:09 +00:00 | 105 commits to main since this release

    Fixed

    • Prevent existing edges to be added to the network in the add_edge method.
    • Don't allow to add nodes or edges on already fiited networks.
    • Number of threads spawned
    • Network class tests

    Added

    • Library logo generated with https://openart.ai to README.md
    • Link to the coverage report in the README.md coverage label.
    • convergence_best hyperparameter to the BoostAODE class, to control the way the prior accuracy is computed if convergence is set. Default value is false.
    • SPnDE model.
    • A2DE model.
    • BoostA2DE model.
    • A2DE & SPnDE tests.
    • Add tests to reach 99% of coverage.
    • Add tests to check the correct version of the mdlp, folding and json libraries.
    • Library documentation generated with Doxygen.
    • Link to documentation in the README.md.
    • Three types of smoothing the Bayesian Network ORIGINAL, LAPLACE and CESTNIK.

    Internal

    • Fixed doxygen optional dependency
    • Add env parallel variable to Makefile
    • Add CountingSemaphore class to manage the number of threads spawned.
    • Ignore CUDA language in CMake CodeCoverage module.
    • Update mdlp library as a git submodule.
    • Create library ShuffleArffFile to limit the number of samples with a parameter and shuffle them.
    • Refactor catch2 library location to test/lib
    • Refactor loadDataset function in tests.
    • Remove conditionalEdgeWeights method in BayesMetrics.
    • Refactor Coverage Report generation.
    • Add devcontainer to work on apple silicon.
    • Change build cmake folder names to Debug & Release.
    • Add a Makefile target (doc) to generate the documentation.
    • Add a Makefile target (doc-install) to install the documentation.

    Libraries versions

    • mdlp: 2.0.1
    • Folding: 1.1.0
    • json: 3.11
    • ArffFiles: 1.1.0
    Downloads
  • v1.0.5 b956aa3873

    rmontanana released this 2024-04-20 16:04:03 +00:00 | 185 commits to main since this release

    Added

    • Install command and instructions in README.md
    • Prefix to install command to install the package in the any location.
    • The 'block_update' hyperparameter to the BoostAODE class, to control the way weights/significances are updated. Default value is false.
    • Html report of coverage in the coverage folder. It is created with make viewcoverage
    • Badges of coverage and code quality (codacy) in README.md. Coverage badge is updated with make viewcoverage
    • Tests to reach 97% of coverage.
    • Copyright header to source files.
    • Diagrams to README.md: UML class diagram & dependency diagram
    • Action to create diagrams to Makefile: make diagrams

    Changed

    • Sample app now is a separate target in the Makefile and shows how to use the library with a sample dataset
    • The worse model count in BoostAODE is reset to 0 every time a new model produces better accuracy, so the tolerance of the model is meant to be the number of consecutive models that produce worse accuracy.
    • Default hyperparameter values in BoostAODE: bisection is true, maxTolerance is 3, convergence is true
    Downloads
  • v1.0.4 538af0253b

    rmontanana released this 2024-03-11 09:56:08 +00:00 | 232 commits to main since this release

    Added

    • Change ascending hyperparameter to order with these possible values {"asc", "desc", "rand"}, Default is "desc".
    • Add the predict_single hyperparameter to control if only the last model created is used to predict in boost training or the whole ensemble (all the models built so far). Default is true.
    • sample app to show how to use the library (make sample)

    Changed

    • Change the library structure adding folders for each group of classes (classifiers, ensembles, etc).
    • The significances of the models generated under the feature selection algorithm are now computed after all the models have been generated and an αt value is computed and assigned to each model.
    Downloads