mlpack_hoeffding_tree(1)

πŸ’– mlpack_hoeffding_tree πŸ’–

okay bestie, buckle up, because this one is the streaming decision tree of your dreams and i am so ready to walk you through it. this page is mlpack_hoeffding_tree from the mlpack crew, and honestly? she ate.


✨ NAME ✨

mlpack_hoeffding_tree β€” hoeffding trees 🌳


πŸ¦‹ SYNOPSIS πŸ¦‹

mlpack_hoeffding_tree [-b bool] [-B int] [-c double] [-m unknown] [-l unknown] [-n int] [-I int] [-N string] [-o int] [-s int] [-T string] [-L unknown] [-t string] [-V bool] [-M unknown] [-p unknown] [-P unknown] [-h -v]

πŸ’… DESCRIPTION πŸ’…

so this program implements Hoeffding trees, which are a form of streaming decision tree and they're literally built for large datasets or straight-up streaming data. she supports both categorical and numeric data, no biggie. give her an input dataset and she will train the tree with a whole menu of training options, then save that model to a file. she can also take a trained model (or a model chillin' in a file) and predict classes for a test set. main character energy, fr fr.

the training file and its associated labels go in --training_file (-t) and --labels_file (-l) respectively. cute little bonus: if you don't pass --labels_file (-l), the program just assumes the labels are the last dimension of your training dataset. convenient? yes. iconic? also yes. πŸŽ€

you can train in batch mode (like a typical decision tree algorithm) by passing --batch_mode (-b), but ngl, that might not be the move for large datasets. 🫢

once a model is trained, you can save it with the --output_model_file (-M) output parameter. and you can load a model from a file for further training or testing with the --input_model_file (-m) parameter. slay.

test data goes in --test_file (-T), and if you want performance statistics for that test set, drop your labels in --test_labels_file (-L). predictions for each test point get saved with --predictions_file (-p), and class probabilities for each prediction get saved with --probabilities_file (-P). πŸ’–

for example, to train a Hoeffding tree with confidence 0.99 with data dataset.csv, saving the trained tree to tree.bin, the following command may be used:

$ mlpack_hoeffding_tree --training_file dataset.arff --confidence 0.99
--output_model_file tree.bin

then, this tree may be used to make predictions on the test set test_set.csv, saving the predictions into predictions.csv and the class probabilities into class_probs.csv with the following command:

$ mlpack_hoeffding_tree --input_model_file tree.bin --test_file
test_set.arff --predictions_file predictions.csv --probabilities_file
class_probs.csv

🌸 OPTIONAL INPUT OPTIONS 🌸

one bullet per flag, bestie, because we do not skip options in this house. periodt.

  • --batch_mode (-b) [bool] β€” if true, the samples get considered in batch instead of as a stream. this generally results in better trees, but it costs you memory usage and runtime. so like, better trees but she's hungry. πŸ“
  • --bins (-B) [int] β€” if the 'domingos' split strategy is being used, this specifies the number of bins for each numeric split. default value 10.
  • --confidence (-c) [double] β€” the confidence before splitting, between 0 and 1. default value 0.95.
  • --help (-h) [bool] β€” default help info.
  • --info [string] β€” print help on a specific option. default value ''.
  • --info_gain (-i) [bool] β€” if set, information gain is used instead of Gini impurity for calculating Hoeffding bounds.
  • --input_model_file (-m) [unknown] β€” input trained Hoeffding tree model.
  • --labels_file (-l) [unknown] β€” labels for training dataset.
  • --max_samples (-n) [int] β€” maximum number of samples before splitting. default value 5000.
  • --min_samples (-I) [int] β€” minimum number of samples before splitting. default value 100.
  • --numeric_split_strategy (-N) [string] β€” the splitting strategy to use for numeric features: 'domingos' or 'binary'. default value 'binary'.
  • --observations_before_binning (-o) [int] β€” if the 'domingos' split strategy is used, this specifies the number of samples observed before binning is performed. default value 100.
  • --passes (-s) [int] β€” number of passes to take over the dataset. default value 1.
  • --test_file (-T) [string] β€” testing dataset (may be categorical).
  • --test_labels_file (-L) [unknown] β€” labels of test data.
  • --training_file (-t) [string] β€” training dataset (may be categorical).
  • --verbose (-v) [bool] β€” display informational messages and the full list of parameters and timers at the end of execution.
  • --version (-V) [bool] β€” display the version of mlpack. πŸ‘‘

πŸŽ€ OPTIONAL OUTPUT OPTIONS πŸŽ€

the "where does my stuff go" section, and yes she's giving:

  • --output_model_file (-M) [unknown] β€” output for trained Hoeffding tree model.
  • --predictions_file (-p) [unknown] β€” matrix to output label predictions for test data into.
  • --probabilities_file (-P) [unknown] β€” in addition to predicting labels, provide rediction probabilities in this matrix.
ngl yes, that's what it says. we keep the lore exactly as it is, no edits from me. πŸ’€

🌈 ADDITIONAL INFORMATION 🌈

for further information, including relevant papers, citations, and theory, consult the documentation found at http://www.mlpack.org or included with your distribution of mlpack. go read, it's giving scholarly. πŸ“šβœ¨


lowkey a vibe check for future you: every default, every flag, every file path up there is doing real work. don't sleep on --batch_mode (-b) memory costs and don't sleep on that default --numeric_split_strategy (-N) of 'binary'. iykyk. πŸ’œ

anyway bestie, that's the whole page, no cap. this was mlpack-4.8.0, dated 22 June 2026, and she's literally the mlpack_hoeffding_tree(1) manual β€” go stream some data and split some nodes. mwah. πŸ’…πŸŒ³βœ¨

πŸ“¦ where this page comes from