Vowpal Wabbit
Functions
mf.h File Reference

Go to the source code of this file.

Functions

LEARNER::base_learnermf_setup (VW::config::options_i &options, vw &all)
 

Function Documentation

◆ mf_setup()

LEARNER::base_learner* mf_setup ( VW::config::options_i options,
vw all 
)

Definition at line 195 of file mf.cc.

References VW::config::options_i::add_and_parse(), LEARNER::as_singleline(), finish(), LEARNER::init_learner(), learn(), LEARNER::make_base(), VW::config::make_option(), vw::pairs, vw::random_positive_weights, LEARNER::learner< T, E >::set_finish(), setup_base(), and VW::config::options_i::was_supplied().

Referenced by parse_reductions().

196 {
197  auto data = scoped_calloc_or_throw<mf>();
198  option_group_definition new_options("Matrix Factorization Reduction");
199  new_options.add(make_option("new_mf", data->rank).keep().help("rank for reduction-based matrix factorization"));
200  options.add_and_parse(new_options);
201 
202  if (!options.was_supplied("new_mf"))
203  return nullptr;
204 
205  data->all = &all;
206  // store global pairs in local data structure and clear global pairs
207  // for eventual calls to base learner
208  data->pairs = all.pairs;
209  all.pairs.clear();
210 
211  all.random_positive_weights = true;
212 
214  init_learner(data, as_singleline(setup_base(options, all)), learn, predict<false>, 2 * data->rank + 1);
215  l.set_finish(finish);
216  return make_base(l);
217 }
void learn(mf &data, single_learner &base, example &ec)
Definition: mf.cc:111
void finish(mf &o)
Definition: mf.cc:189
std::vector< std::string > pairs
Definition: global_data.h:459
bool random_positive_weights
Definition: global_data.h:493
base_learner * make_base(learner< T, E > &base)
Definition: learner.h:462
virtual void add_and_parse(const option_group_definition &group)=0
single_learner * as_singleline(learner< T, E > *l)
Definition: learner.h:476
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)
Definition: learner.h:369
virtual bool was_supplied(const std::string &key)=0
typed_option< T > make_option(std::string name, T &location)
Definition: options.h:80
void set_finish(void(*f)(T &))
Definition: learner.h:265
LEARNER::base_learner * setup_base(options_i &options, vw &all)
Definition: parse_args.cc:1222