1226 auto tree = scoped_calloc_or_throw<memory_tree>();
1233 .help(
"Make a memory tree with at most <n> nodes"))
1236 .help(
"max number of unique label"))
1237 .
add(
make_option(
"leaf_example_multiplier", tree->leaf_example_multiplier)
1239 .help(
"multiplier on examples per leaf (default = log nodes)"))
1240 .
add(
make_option(
"alpha", tree->alpha).default_value(0.1
f).help(
"Alpha"))
1243 .help(
"number of dream operations per example (default = 1)"))
1244 .
add(
make_option(
"top_K", tree->top_K).default_value(1).help(
"top K prediction error (default 1)"))
1245 .
add(
make_option(
"learn_at_leaf", tree->learn_at_leaf).help(
"whether or not learn at leaf (defualt = True)"))
1249 .help(
"turn on dream operations at reward based update as well"))
1250 .
add(
make_option(
"online", tree->online).help(
"turn on dream operations at reward based update as well"));
1252 if (!tree->max_nodes)
1259 tree->current_pass = 0;
1262 tree->max_leaf_examples = (size_t)(tree->leaf_example_multiplier * (log(tree->max_nodes) / log(2)));
1269 <<
"max_nodes = " << tree->max_nodes <<
" " 1270 <<
"max_leaf_examples = " << tree->max_leaf_examples <<
" " 1271 <<
"alpha = " << tree->alpha <<
" " 1272 <<
"oas = " << tree->oas <<
" " 1273 <<
"online =" << tree->online <<
" " << std::endl;
1275 size_t num_learners = 0;
1278 if (tree->oas ==
false)
1280 num_learners = tree->max_nodes + 1;
1291 num_learners = tree->max_nodes + 1 + tree->max_num_labels;
void(* delete_prediction)(void *)
void predict(memory_tree &b, single_learner &base, example &ec)
void(* delete_label)(void *)
label_type::label_type_t label_type
base_learner * make_base(learner< T, E > &base)
virtual void add_and_parse(const option_group_definition &group)=0
void set_save_load(void(*sl)(T &, io_buf &, bool, bool))
void end_pass(memory_tree &b)
std::shared_ptr< rand_state > get_random_state()
single_learner * as_singleline(learner< T, E > *l)
learner< T, E > & init_learner(free_ptr< T > &dat, L *base, void(*learn)(T &, L &, E &), void(*predict)(T &, L &, E &), size_t ws, prediction_type::prediction_type_t pred_type)
void save_load_memory_tree(memory_tree &b, io_buf &model_file, bool read, bool text)
void init_tree(memory_tree &b)
int add(svm_params ¶ms, svm_example *fec)
typed_option< T > make_option(std::string name, T &location)
void set_end_pass(void(*f)(T &))
learner< T, E > & init_multiclass_learner(free_ptr< T > &dat, L *base, void(*learn)(T &, L &, E &), void(*predict)(T &, L &, E &), parser *p, size_t ws, prediction_type::prediction_type_t pred_type=prediction_type::multiclass)
LEARNER::base_learner * setup_base(options_i &options, vw &all)
void learn(memory_tree &b, single_learner &base, example &ec)