Vowpal Wabbit
Namespaces | Classes | Typedefs | Functions
VW::LEARNER Namespace Reference

Contains the VW::LEARNER::learner object and utilities for interacting with it. More...

Namespaces

 details
 

Classes

struct  base_learner_builder
 
struct  common_learner_builder
 
struct  learner
 Defines the interface for a learning algorithm. More...
 
struct  reduction_learner_builder
 
struct  reduction_no_data_learner_builder
 

Typedefs

using base_learner = learner< char, char >
 Used to type erase the object and pass around common type. More...
 
using single_learner = learner< char, example >
 Used for reductions that process single ::example objects at at time. It type erases the specific reduction object type. More...
 
using multi_learner = learner< char, multi_ex >
 Used for multiline examples where there are several ::example objects required to describe the overall example. It type erases the specific reduction object type. More...
 

Functions

void generic_driver (VW::workspace &all)
 
void generic_driver (const std::vector< VW::workspace *> &alls)
 
void generic_driver_onethread (VW::workspace &all)
 
bool ec_is_example_header (example const &ec, label_type_t label_type)
 
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)
 
template<class DataT , class ExampleT , class BaseLearnerT >
VW_WARNING_STATE_POP reduction_learner_builder< DataT, ExampleT, BaseLearnerT > make_reduction_learner (std::unique_ptr< DataT > &&data, BaseLearnerT *base, void(*learn_fn)(DataT &, BaseLearnerT &, ExampleT &), void(*predict_fn)(DataT &, BaseLearnerT &, ExampleT &), const std::string &name)
 
template<class ExampleT , class BaseLearnerT >
reduction_no_data_learner_builder< ExampleT, BaseLearnerT > make_no_data_reduction_learner (BaseLearnerT *base, void(*learn_fn)(char &, BaseLearnerT &, ExampleT &), void(*predict_fn)(char &, BaseLearnerT &, ExampleT &), const std::string &name)
 
template<class DataT , class ExampleT >
base_learner_builder< DataT, ExampleT > make_base_learner (std::unique_ptr< DataT > &&data, void(*learn_fn)(DataT &, base_learner &, ExampleT &), void(*predict_fn)(DataT &, base_learner &, ExampleT &), const std::string &name, prediction_type_t out_pred_type, label_type_t in_label_type)
 
template<class ExampleT >
base_learner_builder< char, ExampleT > make_no_data_base_learner (void(*learn_fn)(char &, base_learner &, ExampleT &), void(*predict_fn)(char &, base_learner &, ExampleT &), const std::string &name, prediction_type_t out_pred_type, label_type_t in_label_type)
 

Detailed Description

Contains the VW::LEARNER::learner object and utilities for interacting with it.

Typedef Documentation

◆ base_learner

typedef learner< char, char > VW::LEARNER::base_learner

Used to type erase the object and pass around common type.

◆ multi_learner

typedef learner< char, multi_ex > VW::LEARNER::multi_learner

Used for multiline examples where there are several ::example objects required to describe the overall example. It type erases the specific reduction object type.

◆ single_learner

typedef learner< char, example > VW::LEARNER::single_learner

Used for reductions that process single ::example objects at at time. It type erases the specific reduction object type.

Function Documentation

◆ as_multiline()

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

◆ as_singleline()

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

◆ ec_is_example_header()

bool VW::LEARNER::ec_is_example_header ( example const &  ec,
label_type_t  label_type 
)

◆ generic_driver() [1/2]

void VW::LEARNER::generic_driver ( VW::workspace all)

◆ generic_driver() [2/2]

void VW::LEARNER::generic_driver ( const std::vector< VW::workspace *> &  alls)

◆ generic_driver_onethread()

void VW::LEARNER::generic_driver_onethread ( VW::workspace all)

◆ make_base()

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

◆ make_base_learner()

template<class DataT , class ExampleT >
base_learner_builder<DataT, ExampleT> VW::LEARNER::make_base_learner ( std::unique_ptr< DataT > &&  data,
void(*)(DataT &, base_learner &, ExampleT &)  learn_fn,
void(*)(DataT &, base_learner &, ExampleT &)  predict_fn,
const std::string &  name,
prediction_type_t  out_pred_type,
label_type_t  in_label_type 
)

◆ make_no_data_base_learner()

template<class ExampleT >
base_learner_builder<char, ExampleT> VW::LEARNER::make_no_data_base_learner ( void(*)(char &, base_learner &, ExampleT &)  learn_fn,
void(*)(char &, base_learner &, ExampleT &)  predict_fn,
const std::string &  name,
prediction_type_t  out_pred_type,
label_type_t  in_label_type 
)

◆ make_no_data_reduction_learner()

template<class ExampleT , class BaseLearnerT >
reduction_no_data_learner_builder<ExampleT, BaseLearnerT> VW::LEARNER::make_no_data_reduction_learner ( BaseLearnerT *  base,
void(*)(char &, BaseLearnerT &, ExampleT &)  learn_fn,
void(*)(char &, BaseLearnerT &, ExampleT &)  predict_fn,
const std::string &  name 
)

◆ make_reduction_learner()

template<class DataT , class ExampleT , class BaseLearnerT >
VW_WARNING_STATE_POP reduction_learner_builder<DataT, ExampleT, BaseLearnerT> VW::LEARNER::make_reduction_learner ( std::unique_ptr< DataT > &&  data,
BaseLearnerT *  base,
void(*)(DataT &, BaseLearnerT &, ExampleT &)  learn_fn,
void(*)(DataT &, BaseLearnerT &, ExampleT &)  predict_fn,
const std::string &  name 
)

◆ multiline_learn_or_predict()

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