Module smart

Module smart 

Source
Expand description

Smart Feature Engineering

Automatically infers optimal feature generation based on data characteristics and model analysis. Acts as a “Smart Feature Engineer” that prescribes features.

§Design Philosophy

Different models benefit from different features:

  • Linear models: Polynomial features (x², x³) help capture non-linearity
  • Tree models: Interaction features (x_i * x_j) capture combinations trees struggle with
  • LTT mode: Polynomial for linear phase, interactions for tree phase (on residuals)

§Example

use treeboost::analysis::{DataFrameProfile, DatasetAnalysis};
use treeboost::features::smart::{SmartFeatureEngine, SmartFeatureConfig};

let profile = DataFrameProfile::analyze(&df, "target")?;
let analysis = DatasetAnalysis::analyze(&dataset);

let plan = SmartFeatureEngine::infer(&profile, Some(&analysis));
println!("Feature Plan:\n{}", SmartFeatureEngine::summarize(&plan));

Structs§

FeaturePlan
Feature generation plan
LttFeaturePlan
LTT-specific feature plan with separate phases
SmartFeatureConfig
Configuration for smart feature engineering
SmartFeatureEngine
Smart Feature Engineering Engine

Enums§

SmartFeaturePreset
Presets for smart feature engineering.
TimeFeatureType
Time feature types to extract from DateTime columns