DecisionTreeClassifier
#include <Skigen/Tree>
template <typename Scalar = double>
class Skigen::DecisionTreeClassifier(max_depth=-1, min_samples_split=2)
A decision tree classifier.
A non-parametric supervised learning method used for classification. The model predicts the value of a target variable by learning simple decision rules inferred from the data features. Uses Gini impurity as the splitting criterion.
Mirrors sklearn.tree.DecisionTreeClassifier.
Parameters:
-
max_depth : int, default=-1 Maximum depth (
int, default-1for unlimited). -
min_samples_split : int, default=2 Minimum samples to split (
int, default2).
Methods
fit(X, y)
Build a decision tree classifier from the training set.
predict(X)
Predict class labels for samples in X.
Example
// Best model
Skigen::DecisionTreeClassifier<double> best(5);
best.fit(split.X_train, split.y_train);
auto best_pred = best.predict(split.X_test);
std::cout << "\n=== Confusion Matrix (depth=5) ===\n";
auto cm = Skigen::Metrics::confusion_matrix(split.y_test, best_pred);
std::cout << cm << "\n";