Files
Platform/CHANGELOG.md

4.3 KiB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

Changed

  • BREAKING: Migrated dependency management from vcpkg to Conan
  • Updated build system to use Conan toolchain files instead of vcpkg
  • Updated make init command to use conan install instead of vcpkg install
  • Modified CMakeLists.txt to use Conan's find_package mechanism
  • Updated documentation in CLAUDE.md to reflect Conan usage

Added

  • conanfile.py - Conan recipe for dependency management with all required dependencies
  • CMakeUserPresets.json (generated by Conan)
  • Support for Conan build profiles (Release/Debug)

Removed

  • vcpkg.json - vcpkg manifest file
  • vcpkg-configuration.json - vcpkg registry configuration
  • vcpkg toolchain dependency in build system

Notes

  • The migration maintains compatibility with existing make targets and workflow
  • All dependencies now managed through Conan package manager

[1.1.0] - 2025-07-02

Added

  • AdaBoost Implementation: Complete multi-class SAMME AdaBoost classifier with optimization
    • Optimized AdaBoostPredict with 100 estimators as default
    • Enhanced predictProbaSample functionality
    • Full predict_proba support for probabilistic predictions
  • Decision Tree Classifier: New base classifier implementation with comprehensive tests
  • XA1DE Model Family: Extended Averaged One-Dependence Estimators
    • XA1DE, XBAODE, XSPODE variants with threading support
    • Complete integration with memory optimization
    • Prior probability computation in prediction
  • Wilcoxon Statistical Test: Statistical significance testing for model comparison
  • Folder Management: Enhanced file organization with folder parameter support across tools
    • Added folder parameter to b_best, b_grid, b_main, and b_manage
  • vcpkg Integration: Package management system integration (now migrated to Conan)

Enhanced

  • Grid Search System: Complete refactoring with MPI parallelization
    • Grid experiment functionality with conditional result saving
    • Fixed smoothing problems and dataset ordering
    • Enhanced reporting and summary generation
  • Excel Reporting: Advanced Excel export capabilities
    • ReportExcelCompared class for side-by-side result comparison
    • Enhanced formatting with colors and fixed headers
    • Automatic file opening after generation
  • Results Management: Comprehensive result handling and validation
    • JSON schema validation for result format integrity
    • Improved console reporting with classification reports
    • Pagination support for large result sets
  • Statistical Analysis: Enhanced statistical testing and reporting
    • AUC (Area Under Curve) computation and reporting
    • Confusion matrix generation and visualization
    • Classification reports with color coding

Performance Improvements

  • Optimized AdaBoost training and prediction algorithms
  • Enhanced memory management in XA1DE implementations
  • Improved discretization algorithms with MDLP integration
  • Faster ROC-AUC computation for binary classification problems

Developer Experience

  • Testing Framework: Comprehensive test suite with Catch2
  • Build System: Streamlined CMake configuration with dependency management
  • Documentation: Enhanced project documentation and build instructions
  • Code Quality: Refactored codebase with improved error handling and logging

Bug Fixes

  • Fixed predict_proba implementations across multiple classifiers
  • Resolved grid search dataset ordering issues
  • Fixed Excel report formatting and column width problems
  • Corrected time output formatting in various tools
  • Fixed memory leaks and stability issues in model implementations

[1.0.0] - 2024-01-09

Initial Release

  • Core Framework: Machine learning experimentation platform for Bayesian Networks
  • Basic Classifiers: Initial set of Bayesian network classifiers
  • Experiment Management: Basic experiment orchestration and result storage
  • Dataset Support: ARFF file format support with discretization
  • Build System: CMake-based build system with external library integration
  • Command Line Tools: Initial versions of b_main, b_best, b_list utilities