Vowpal Wabbit
Classes | Typedefs | Functions
LEARNER Namespace Reference

Classes

class  custom_examples_queue
 
struct  finish_example_data
 
struct  func_data
 
struct  learn_data
 
struct  learner
 
class  multi_example_handler
 
class  multi_instance_context
 
class  ready_examples_queue
 
struct  save_load_data
 
struct  sensitivity_data
 
class  single_example_handler
 
class  single_instance_context
 

Typedefs

using base_learner = learner< char, char >
 
using single_learner = learner< char, example >
 
using multi_learner = learner< char, multi_ex >
 

Functions

void learn_ex (example &ec, vw &all)
 
void learn_multi_ex (multi_ex &ec_seq, vw &all)
 
void end_pass (example &ec, vw &all)
 
void save (example &ec, vw &all)
 
bool example_is_newline_not_header (example &ec, vw &all)
 
bool is_save_cmd (example *ec)
 
void drain_examples (vw &all)
 
template<typename queue_type , typename handler_type >
void process_examples (queue_type &examples, handler_type &handler)
 
template<typename context_type >
void generic_driver (ready_examples_queue &examples, context_type &context)
 
void generic_driver (vw &all)
 
void generic_driver (const std::vector< vw *> &all)
 
template<typename handler_type >
void generic_driver_onethread (vw &all)
 
float recur_sensitivity (void *, base_learner &base, example &ec)
 
func_data tuple_dbf (void *data, base_learner *base, void(*func)(void *))
 
void noop_sl (void *, io_buf &, bool, bool)
 
void noop (void *)
 
float noop_sensitivity (void *, base_learner &, example &)
 
void increment_offset (example &ex, const size_t increment, const size_t i)
 
void increment_offset (multi_ex &ec_seq, const size_t increment, const size_t i)
 
void decrement_offset (example &ex, const size_t increment, const size_t i)
 
void decrement_offset (multi_ex &ec_seq, const size_t increment, const size_t i)
 
template<class T , class E , class 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)
 
template<class T , class E , class L >
learner< T, E > & init_learner (free_ptr< T > &dat, void(*learn)(T &, L &, E &), void(*predict)(T &, L &, E &), size_t params_per_weight)
 
template<class T , class E , class L >
learner< T, E > & init_learner (void(*predict)(T &, L &, E &), size_t params_per_weight)
 
template<class T , class E , class L >
learner< T, E > & init_learner (free_ptr< T > &dat, void(*learn)(T &, L &, E &), void(*predict)(T &, L &, E &), size_t params_per_weight, prediction_type::prediction_type_t pred_type)
 
template<class T , class E , class 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)
 
template<class T , class E , class L >
learner< T, E > & init_learner (free_ptr< T > &dat, L *base, void(*learn)(T &, L &, E &), void(*predict)(T &, L &, E &))
 
template<class T , class E , class L >
learner< T, E > & init_learner (L *base, void(*learn)(T &, L &, E &), void(*predict)(T &, L &, E &))
 
template<class T , class E , class L >
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)
 
template<class T , class E , class L >
learner< T, E > & init_cost_sensitive_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)
 
template<class T , class E >
base_learnermake_base (learner< T, E > &base)
 
template<class T , class E >
multi_learneras_multiline (learner< T, E > *l)
 
template<class T , class E >
single_learneras_singleline (learner< T, E > *l)
 
template<bool is_learn>
void multiline_learn_or_predict (multi_learner &base, multi_ex &examples, const uint64_t offset, const uint32_t id=0)
 

Typedef Documentation

◆ base_learner

typedef learner< char, char > LEARNER::base_learner

Definition at line 15 of file conditional_contextual_bandit.h.

◆ multi_learner

Definition at line 41 of file learner.h.

◆ single_learner

Definition at line 40 of file learner.h.

Function Documentation

◆ as_multiline()

template<class T , class E >
multi_learner* LEARNER::as_multiline ( learner< T, E > *  l)

◆ as_singleline()

template<class T , class E >
single_learner* LEARNER::as_singleline ( learner< T, E > *  l)

◆ decrement_offset() [1/2]

void LEARNER::decrement_offset ( example ex,
const size_t  increment,
const size_t  i 
)
inline

Definition at line 120 of file learner.h.

References example_predict::ft_offset.

121 {
122  assert(ex.ft_offset >= increment * i);
123  ex.ft_offset -= static_cast<uint32_t>(increment * i);
124 }

◆ decrement_offset() [2/2]

void LEARNER::decrement_offset ( multi_ex ec_seq,
const size_t  increment,
const size_t  i 
)
inline

Definition at line 126 of file learner.h.

Referenced by LEARNER::learner< CB_EXPLORE::cb_explore, example >::learn(), LEARNER::learner< CB_EXPLORE::cb_explore, example >::multipredict(), LEARNER::learner< CB_EXPLORE::cb_explore, example >::predict(), LEARNER::learner< CB_EXPLORE::cb_explore, example >::sensitivity(), and LEARNER::learner< CB_EXPLORE::cb_explore, example >::update().

127 {
128  for (auto ec : ec_seq)
129  {
130  assert(ec->ft_offset >= increment * i);
131  ec->ft_offset -= static_cast<uint32_t>(increment * i);
132  }
133 }

◆ drain_examples()

void LEARNER::drain_examples ( vw all)

Definition at line 89 of file learner.cc.

References vw::early_terminate, LEARNER::learner< T, E >::end_examples(), VW::finish_example(), VW::get_example(), vw::l, and vw::p.

Referenced by generic_driver().

90 {
91  if (all.early_terminate)
92  { // drain any extra examples from parser.
93  example* ec = nullptr;
94  while ((ec = VW::get_example(all.p)) != nullptr) VW::finish_example(all, *ec);
95  }
96  all.l->end_examples();
97 }
void end_examples()
Definition: learner.h:289
example * get_example(parser *p)
Definition: parser.cc:909
parser * p
Definition: global_data.h:377
void finish_example(vw &, example &)
Definition: parser.cc:881
LEARNER::base_learner * l
Definition: global_data.h:383
bool early_terminate
Definition: global_data.h:500

◆ end_pass()

void LEARNER::end_pass ( example ec,
vw all 
)

Definition at line 44 of file learner.cc.

References vw::current_pass, LEARNER::learner< T, E >::end_pass(), VW::finish_example(), and vw::l.

Referenced by bfgs_setup(), CSOAA::csldf_setup(), ftrl_setup(), gd_mf_setup(), memory_tree_setup(), nn_setup(), GD::setup(), Search::setup(), and stagewise_poly_setup().

45 {
46  all.current_pass++;
47  all.l->end_pass();
48 
49  VW::finish_example(all, ec);
50 }
uint64_t current_pass
Definition: global_data.h:396
void finish_example(vw &, example &)
Definition: parser.cc:881
void end_pass()
Definition: learner.h:280
LEARNER::base_learner * l
Definition: global_data.h:383

◆ example_is_newline_not_header()

bool LEARNER::example_is_newline_not_header ( example ec,
vw all 
)
inline

Definition at line 68 of file learner.cc.

References label_type::ccb, CB::ec_is_example_header(), CCB::ec_is_example_header(), example_is_newline(), and vw::label_type.

Referenced by LEARNER::multi_example_handler< context_type >::complete_multi_ex(), EXPLORE_EVAL::output_example(), CB_ADF::output_example(), and CB_ADF::output_rank_example().

69 {
70  // If we are using CCB, test against CCB implementation otherwise fallback to previous behavior.
71  bool is_header = false;
72  if (all.label_type == label_type::ccb)
73  {
74  is_header = CCB::ec_is_example_header(ec);
75  }
76  else
77  {
78  is_header = CB::ec_is_example_header(ec);
79  }
80 
81  return example_is_newline(ec) && !is_header;
82 }
bool ec_is_example_header(example const &ec)
Definition: cb.cc:170
label_type::label_type_t label_type
Definition: global_data.h:550
int example_is_newline(example const &ec)
Definition: example.h:104
bool ec_is_example_header(example const &ec)

◆ generic_driver() [1/3]

template<typename context_type >
void LEARNER::generic_driver ( ready_examples_queue examples,
context_type &  context 
)

Definition at line 253 of file learner.cc.

References drain_examples(), and process_examples().

Referenced by main(), and VW_Finish_Passes().

254 {
255  if (context.get_master().l->is_multiline)
256  {
257  using handler_type = multi_example_handler<context_type>;
258  handler_type handler(context);
259  process_examples(examples, handler);
260  }
261  else
262  {
263  using handler_type = single_example_handler<context_type>;
264  handler_type handler(context);
265  process_examples(examples, handler);
266  }
267  drain_examples(context.get_master());
268 }
void process_examples(queue_type &examples, handler_type &handler)
Definition: learner.cc:245
void drain_examples(vw &all)
Definition: learner.cc:89

◆ generic_driver() [2/3]

void LEARNER::generic_driver ( vw all)

Definition at line 270 of file learner.cc.

References generic_driver().

271 {
272  single_instance_context context(all);
273  ready_examples_queue examples(all);
274  generic_driver(examples, context);
275 }
void generic_driver(const std::vector< vw *> &all)
Definition: learner.cc:277

◆ generic_driver() [3/3]

void LEARNER::generic_driver ( const std::vector< vw *> &  all)

Definition at line 277 of file learner.cc.

References LEARNER::multi_instance_context::get_master().

Referenced by generic_driver().

278 {
279  multi_instance_context context(all);
280  ready_examples_queue examples(context.get_master());
281  generic_driver(examples, context);
282 }
void generic_driver(const std::vector< vw *> &all)
Definition: learner.cc:277

◆ generic_driver_onethread()

template<typename handler_type >
void LEARNER::generic_driver_onethread ( vw all)

Definition at line 285 of file learner.cc.

References LEARNER::learner< T, E >::end_examples(), parser::end_parsed_examples, LEARNER::learner< T, E >::is_multiline, vw::l, vw::p, parse_dispatch(), and process_examples().

Referenced by main().

286 {
287  single_instance_context context(all);
288  handler_type handler(context);
289  auto multi_ex_fptr = [&handler](vw& all, v_array<example*> examples) {
290  all.p->end_parsed_examples += examples.size(); // divergence: lock & signal
291  custom_examples_queue examples_queue(examples);
292  process_examples(examples_queue, handler);
293  };
294  parse_dispatch(all, multi_ex_fptr);
295  all.l->end_examples();
296 }
void end_examples()
Definition: learner.h:289
void parse_dispatch(vw &all, dispatch_fptr dispatch)
parser * p
Definition: global_data.h:377
void process_examples(queue_type &examples, handler_type &handler)
Definition: learner.cc:245
uint64_t end_parsed_examples
Definition: parser.h:82
LEARNER::base_learner * l
Definition: global_data.h:383

◆ increment_offset() [1/2]

void LEARNER::increment_offset ( example ex,
const size_t  increment,
const size_t  i 
)
inline

Definition at line 110 of file learner.h.

References example_predict::ft_offset.

111 {
112  ex.ft_offset += static_cast<uint32_t>(increment * i);
113 }

◆ increment_offset() [2/2]

void LEARNER::increment_offset ( multi_ex ec_seq,
const size_t  increment,
const size_t  i 
)
inline

◆ init_cost_sensitive_learner()

template<class T , class E , class L >
learner<T, E>& LEARNER::init_cost_sensitive_learner ( free_ptr< T > &  dat,
L *  base,
void(*)(T &, L &, E &)  learn,
void(*)(T &, L &, E &)  predict,
parser p,
size_t  ws,
prediction_type::prediction_type_t  pred_type = prediction_type::multiclass 
)

Definition at line 450 of file learner.h.

References COST_SENSITIVE::cs_label, COST_SENSITIVE::finish_example(), init_learner(), learn(), parser::lp, predict(), and LEARNER::learner< T, E >::set_finish_example().

Referenced by cbify_setup(), and warm_cb_setup().

453 {
454  learner<T, E>& l = learner<T, E>::init_learner(dat.get(), base, learn, predict, ws, pred_type);
455  dat.release();
456  l.set_finish_example(COST_SENSITIVE::finish_example);
458  return l;
459 }
label_parser cs_label
learner< T, E > & init_learner(L *base, void(*learn)(T &, L &, E &), void(*predict)(T &, L &, E &))
Definition: learner.h:430
void finish_example(vw &all, example &ec)
void predict(bfgs &b, base_learner &, example &ec)
Definition: bfgs.cc:956
void learn(bfgs &b, base_learner &base, example &ec)
Definition: bfgs.cc:965
label_parser lp
Definition: parser.h:102

◆ init_learner() [1/7]

template<class T , class E , class L >
learner<T, E>& LEARNER::init_learner ( free_ptr< T > &  dat,
L *  base,
void(*)(T &, L &, E &)  learn,
void(*)(T &, L &, E &)  predict,
size_t  ws,
prediction_type::prediction_type_t  pred_type 
)

Definition at line 369 of file learner.h.

References init_learner(), learn(), and predict().

Referenced by active_cover_setup(), active_setup(), audit_regressor_setup(), autolink_setup(), baseline_setup(), bfgs_setup(), binary_setup(), bs_setup(), cb_adf_setup(), cb_algs_setup(), cb_explore_setup(), cb_sample_setup(), cbifyldf_setup(), CCB::ccb_explore_adf_setup(), confidence_setup(), cs_active_setup(), CSOAA::csldf_setup(), CSOAA::csoaa_setup(), explore_eval_setup(), ExpReplay::expreplay_setup(), ftrl_setup(), gd_mf_setup(), interact_setup(), kernel_svm_setup(), lda_setup(), lrq_setup(), lrqfa_setup(), marginal_setup(), memory_tree_setup(), mf_setup(), multilabel_oaa_setup(), mwt_setup(), nn_setup(), noop_setup(), OjaNewton_setup(), print_setup(), scorer_setup(), sender_setup(), VW::cb_explore_adf::softmax::setup(), VW::cb_explore_adf::greedy::setup(), VW::cb_explore_adf::first::setup(), VW::cb_explore_adf::bag::setup(), VW::cb_explore_adf::cover::setup(), VW::cb_explore_adf::regcb::setup(), GD::setup(), Search::setup(), VW::shared_feature_merger::shared_feature_merger_setup(), stagewise_poly_setup(), svrg_setup(), and topk_setup().

371 {
372  auto ret = &learner<T, E>::init_learner(dat.get(), base, learn, predict, ws, pred_type);
373 
374  dat.release();
375  return *ret;
376 }
learner< T, E > & init_learner(L *base, void(*learn)(T &, L &, E &), void(*predict)(T &, L &, E &))
Definition: learner.h:430
void predict(bfgs &b, base_learner &, example &ec)
Definition: bfgs.cc:956
void learn(bfgs &b, base_learner &base, example &ec)
Definition: bfgs.cc:965

◆ init_learner() [2/7]

template<class T , class E , class L >
learner<T, E>& LEARNER::init_learner ( free_ptr< T > &  dat,
void(*)(T &, L &, E &)  learn,
void(*)(T &, L &, E &)  predict,
size_t  params_per_weight 
)

Definition at line 380 of file learner.h.

References init_learner(), learn(), predict(), and prediction_type::scalar.

382 {
383  auto ret =
384  &learner<T, E>::init_learner(dat.get(), (L*)nullptr, learn, predict, params_per_weight, prediction_type::scalar);
385 
386  dat.release();
387  return *ret;
388 }
learner< T, E > & init_learner(L *base, void(*learn)(T &, L &, E &), void(*predict)(T &, L &, E &))
Definition: learner.h:430
void predict(bfgs &b, base_learner &, example &ec)
Definition: bfgs.cc:956
void learn(bfgs &b, base_learner &base, example &ec)
Definition: bfgs.cc:965

◆ init_learner() [3/7]

template<class T , class E , class L >
learner<T, E>& LEARNER::init_learner ( void(*)(T &, L &, E &)  predict,
size_t  params_per_weight 
)

Definition at line 392 of file learner.h.

References init_learner(), predict(), and prediction_type::scalar.

393 {
395  nullptr, (L*)nullptr, predict, predict, params_per_weight, prediction_type::scalar);
396 }
learner< T, E > & init_learner(L *base, void(*learn)(T &, L &, E &), void(*predict)(T &, L &, E &))
Definition: learner.h:430
void predict(bfgs &b, base_learner &, example &ec)
Definition: bfgs.cc:956

◆ init_learner() [4/7]

template<class T , class E , class L >
learner<T, E>& LEARNER::init_learner ( free_ptr< T > &  dat,
void(*)(T &, L &, E &)  learn,
void(*)(T &, L &, E &)  predict,
size_t  params_per_weight,
prediction_type::prediction_type_t  pred_type 
)

Definition at line 399 of file learner.h.

References init_learner(), learn(), and predict().

401 {
402  auto ret = &learner<T, E>::init_learner(dat.get(), (L*)nullptr, learn, predict, params_per_weight, pred_type);
403  dat.release();
404  return *ret;
405 }
learner< T, E > & init_learner(L *base, void(*learn)(T &, L &, E &), void(*predict)(T &, L &, E &))
Definition: learner.h:430
void predict(bfgs &b, base_learner &, example &ec)
Definition: bfgs.cc:956
void learn(bfgs &b, base_learner &base, example &ec)
Definition: bfgs.cc:965

◆ init_learner() [5/7]

template<class T , class E , class L >
learner<T, E>& LEARNER::init_learner ( free_ptr< T > &  dat,
L *  base,
void(*)(T &, L &, E &)  learn,
void(*)(T &, L &, E &)  predict,
size_t  ws 
)

Definition at line 409 of file learner.h.

References init_learner(), learn(), and predict().

411 {
412  auto ret = &learner<T, E>::init_learner(dat.get(), base, learn, predict, ws, base->pred_type);
413 
414  dat.release();
415  return *ret;
416 }
learner< T, E > & init_learner(L *base, void(*learn)(T &, L &, E &), void(*predict)(T &, L &, E &))
Definition: learner.h:430
void predict(bfgs &b, base_learner &, example &ec)
Definition: bfgs.cc:956
void learn(bfgs &b, base_learner &base, example &ec)
Definition: bfgs.cc:965

◆ init_learner() [6/7]

template<class T , class E , class L >
learner<T, E>& LEARNER::init_learner ( free_ptr< T > &  dat,
L *  base,
void(*)(T &, L &, E &)  learn,
void(*)(T &, L &, E &)  predict 
)

Definition at line 420 of file learner.h.

References init_learner(), learn(), and predict().

421 {
422  auto ret = &learner<T, E>::init_learner(dat.get(), base, learn, predict, 1, base->pred_type);
423 
424  dat.release();
425  return *ret;
426 }
learner< T, E > & init_learner(L *base, void(*learn)(T &, L &, E &), void(*predict)(T &, L &, E &))
Definition: learner.h:430
void predict(bfgs &b, base_learner &, example &ec)
Definition: bfgs.cc:956
void learn(bfgs &b, base_learner &base, example &ec)
Definition: bfgs.cc:965

◆ init_learner() [7/7]

template<class T , class E , class L >
learner<T, E>& LEARNER::init_learner ( L *  base,
void(*)(T &, L &, E &)  learn,
void(*)(T &, L &, E &)  predict 
)

Definition at line 430 of file learner.h.

References learn(), and predict().

Referenced by init_cost_sensitive_learner(), init_learner(), and init_multiclass_learner().

431 {
432  return learner<T, E>::init_learner(nullptr, base, learn, predict, 1, base->pred_type);
433 }
learner< T, E > & init_learner(L *base, void(*learn)(T &, L &, E &), void(*predict)(T &, L &, E &))
Definition: learner.h:430
void predict(bfgs &b, base_learner &, example &ec)
Definition: bfgs.cc:956
void learn(bfgs &b, base_learner &base, example &ec)
Definition: bfgs.cc:965

◆ init_multiclass_learner()

template<class T , class E , class L >
learner<T, E>& LEARNER::init_multiclass_learner ( free_ptr< T > &  dat,
L *  base,
void(*)(T &, L &, E &)  learn,
void(*)(T &, L &, E &)  predict,
parser p,
size_t  ws,
prediction_type::prediction_type_t  pred_type = prediction_type::multiclass 
)

Definition at line 437 of file learner.h.

References init_learner(), learn(), parser::lp, MULTICLASS::mc_label, predict(), and LEARNER::learner< T, E >::set_finish_example().

Referenced by cbify_setup(), ect_setup(), log_multi_setup(), memory_tree_setup(), oaa_setup(), recall_tree_setup(), and warm_cb_setup().

440 {
441  learner<T, E>& l = learner<T, E>::init_learner(dat.get(), base, learn, predict, ws, pred_type);
442 
443  dat.release();
444  l.set_finish_example(MULTICLASS::finish_example<T>);
446  return l;
447 }
label_parser mc_label
Definition: multiclass.cc:93
learner< T, E > & init_learner(L *base, void(*learn)(T &, L &, E &), void(*predict)(T &, L &, E &))
Definition: learner.h:430
void predict(bfgs &b, base_learner &, example &ec)
Definition: bfgs.cc:956
void learn(bfgs &b, base_learner &base, example &ec)
Definition: bfgs.cc:965
label_parser lp
Definition: parser.h:102

◆ is_save_cmd()

bool LEARNER::is_save_cmd ( example ec)
inline

Definition at line 84 of file learner.cc.

References v_array< T >::begin(), v_array< T >::size(), and example::tag.

Referenced by LEARNER::single_example_handler< context_type >::on_example(), and LEARNER::multi_example_handler< context_type >::try_complete_multi_ex().

85 {
86  return (ec->tag.size() >= 4) && (0 == strncmp((const char*)ec->tag.begin(), "save", 4));
87 }
v_array< char > tag
Definition: example.h:63
T *& begin()
Definition: v_array.h:42
size_t size() const
Definition: v_array.h:68

◆ learn_ex()

void LEARNER::learn_ex ( example ec,
vw all 
)

Definition at line 32 of file learner.cc.

References as_singleline(), LEARNER::learner< T, E >::finish_example(), vw::l, and vw::learn().

33 {
34  all.learn(ec);
35  as_singleline(all.l)->finish_example(all, ec);
36 }
void finish_example(vw &all, E &ec)
Definition: learner.h:302
void learn(example &)
Definition: global_data.cc:137
single_learner * as_singleline(learner< T, E > *l)
Definition: learner.h:476
LEARNER::base_learner * l
Definition: global_data.h:383

◆ learn_multi_ex()

void LEARNER::learn_multi_ex ( multi_ex ec_seq,
vw all 
)

Definition at line 38 of file learner.cc.

References as_multiline(), LEARNER::learner< T, E >::finish_example(), vw::l, and vw::learn().

39 {
40  all.learn(ec_seq);
41  as_multiline(all.l)->finish_example(all, ec_seq);
42 }
void finish_example(vw &all, E &ec)
Definition: learner.h:302
void learn(example &)
Definition: global_data.cc:137
LEARNER::base_learner * l
Definition: global_data.h:383
multi_learner * as_multiline(learner< T, E > *l)
Definition: learner.h:468

◆ make_base()

template<class T , class E >
base_learner* LEARNER::make_base ( learner< T, E > &  base)

◆ multiline_learn_or_predict()

template<bool is_learn>
void LEARNER::multiline_learn_or_predict ( multi_learner base,
multi_ex examples,
const uint64_t  offset,
const uint32_t  id = 0 
)

Definition at line 484 of file learner.h.

References LEARNER::learner< T, E >::learn(), and LEARNER::learner< T, E >::predict().

485 {
486  std::vector<uint64_t> saved_offsets;
487  for (auto ec : examples)
488  {
489  saved_offsets.push_back(ec->ft_offset);
490  ec->ft_offset = offset;
491  }
492 
493  if (is_learn)
494  base.learn(examples, id);
495  else
496  base.predict(examples, id);
497 
498  for (size_t i = 0; i < examples.size(); i++) examples[i]->ft_offset = saved_offsets[i];
499 }

◆ noop()

void LEARNER::noop ( void *  )
inline

Definition at line 102 of file learner.h.

Referenced by LEARNER::learner< CB_EXPLORE::cb_explore, example >::init_learner(), and noop_setup().

102 {}

◆ noop_sensitivity()

float LEARNER::noop_sensitivity ( void *  ,
base_learner ,
example  
)
inline

Definition at line 103 of file learner.h.

References recur_sensitivity().

Referenced by LEARNER::learner< CB_EXPLORE::cb_explore, example >::init_learner().

104 {
105  std::cout << std::endl;
106  return 0.;
107 }

◆ noop_sl()

void LEARNER::noop_sl ( void *  ,
io_buf ,
bool  ,
bool   
)
inline

Definition at line 101 of file learner.h.

Referenced by LEARNER::learner< CB_EXPLORE::cb_explore, example >::init_learner().

101 {}

◆ process_examples()

template<typename queue_type , typename handler_type >
void LEARNER::process_examples ( queue_type &  examples,
handler_type &  handler 
)

Definition at line 245 of file learner.cc.

Referenced by generic_driver(), and generic_driver_onethread().

246 {
247  example* ec;
248 
249  while ((ec = examples.pop()) != nullptr) handler.on_example(ec);
250 }

◆ recur_sensitivity()

float LEARNER::recur_sensitivity ( void *  ,
base_learner base,
example ec 
)

Definition at line 306 of file learner.cc.

References LEARNER::learner< T, E >::sensitivity().

Referenced by noop_sensitivity().

306 { return base.sensitivity(ec); }

◆ save()

void LEARNER::save ( example ec,
vw all 
)

Definition at line 52 of file learner.cc.

References v_array< T >::begin(), vw::final_regressor_name, VW::finish_example(), vw::quiet, save_predictor(), example::tag, and vw::trace_message.

53 {
54  // save state command
55  std::string final_regressor_name = all.final_regressor_name;
56 
57  if ((ec.tag).size() >= 6 && (ec.tag)[4] == '_')
58  final_regressor_name = std::string(ec.tag.begin() + 5, (ec.tag).size() - 5);
59 
60  if (!all.quiet)
61  all.trace_message << "saving regressor to " << final_regressor_name << std::endl;
62  save_predictor(all, final_regressor_name, 0);
63 
64  VW::finish_example(all, ec);
65 }
v_array< char > tag
Definition: example.h:63
bool quiet
Definition: global_data.h:487
T *& begin()
Definition: v_array.h:42
void save_predictor(vw &all, std::string reg_name, size_t current_pass)
vw_ostream trace_message
Definition: global_data.h:424
void finish_example(vw &, example &)
Definition: parser.cc:881
std::string final_regressor_name
Definition: global_data.h:535

◆ tuple_dbf()

func_data LEARNER::tuple_dbf ( void *  data,
base_learner base,
void(*)(void *)  func 
)
inline