jubatus_core  0.1.2
Jubatus: Online machine learning framework for distributed environment
Public Member Functions | List of all members
jubatus::core::classifier::perceptron Class Reference

#include <perceptron.hpp>

Inheritance diagram for jubatus::core::classifier::perceptron:
Inheritance graph
Collaboration diagram for jubatus::core::classifier::perceptron:
Collaboration graph

Public Member Functions

std::string name () const
 
 perceptron (storage_ptr storage)
 
void train (const common::sfv_t &sfv, const std::string &label)
 
- Public Member Functions inherited from jubatus::core::classifier::linear_classifier
std::string classify (const common::sfv_t &fv) const
 
void classify_with_scores (const common::sfv_t &fv, classify_result &scores) const
 
void clear ()
 
bool delete_label (const std::string &label)
 
std::vector< std::string > get_labels () const
 
framework::mixableget_mixable ()
 
virtual void get_status (std::map< std::string, std::string > &status) const
 
jubatus::util::lang::shared_ptr< unlearner::unlearner_baselabel_unlearner () const
 
 linear_classifier (storage_ptr storage)
 
void pack (framework::packer &pk) const
 
bool set_label (const std::string &label)
 
void set_label_unlearner (jubatus::util::lang::shared_ptr< unlearner::unlearner_base > label_unlearner)
 
bool unlearn_label (const std::string &label)
 
void unpack (msgpack::object o)
 
virtual ~linear_classifier ()
 
- Public Member Functions inherited from jubatus::core::classifier::classifier_base
 classifier_base ()
 
virtual ~classifier_base ()
 

Additional Inherited Members

- Protected Member Functions inherited from jubatus::core::classifier::linear_classifier
float calc_margin (const common::sfv_t &sfv, const std::string &label, std::string &incorrect_label) const
 
float calc_margin_and_variance (const common::sfv_t &sfv, const std::string &label, std::string &incorrect_label, float &variance) const
 
void check_touchable (const std::string &label)
 
std::string get_largest_incorrect_label (const common::sfv_t &sfv, const std::string &label, classify_result &scores) const
 
void touch (const std::string &label)
 
void update_weight (const common::sfv_t &sfv, float step_weigth, const std::string &pos_label, const std::string &neg_class)
 
- Static Protected Member Functions inherited from jubatus::core::classifier::linear_classifier
static float squared_norm (const common::sfv_t &sfv)
 
- Protected Attributes inherited from jubatus::core::classifier::linear_classifier
framework::linear_function_mixer mixable_storage_
 
storage_ptr storage_
 
jubatus::util::lang::shared_ptr< unlearner::unlearner_baseunlearner_
 

Detailed Description

Definition at line 28 of file perceptron.hpp.

Constructor & Destructor Documentation

jubatus::core::classifier::perceptron::perceptron ( storage_ptr  storage)
explicit

Definition at line 27 of file perceptron.cpp.

28  : linear_classifier(storage) {
29 }

Member Function Documentation

string jubatus::core::classifier::perceptron::name ( ) const
virtual

Implements jubatus::core::classifier::linear_classifier.

Definition at line 42 of file perceptron.cpp.

42  {
43  return string("perceptron");
44 }
void jubatus::core::classifier::perceptron::train ( const common::sfv_t sfv,
const std::string &  label 
)
virtual

Implements jubatus::core::classifier::linear_classifier.

Definition at line 31 of file perceptron.cpp.

References jubatus::core::classifier::linear_classifier::check_touchable(), jubatus::core::classifier::linear_classifier::classify(), jubatus::core::classifier::linear_classifier::touch(), and jubatus::core::classifier::linear_classifier::update_weight().

31  {
32  check_touchable(label);
33 
34  std::string predicted_label = classify(sfv);
35  if (label == predicted_label) {
36  return;
37  }
38  update_weight(sfv, 1.f, label, predicted_label);
39  touch(label);
40 }
void check_touchable(const std::string &label)
std::string classify(const common::sfv_t &fv) const
void update_weight(const common::sfv_t &sfv, float step_weigth, const std::string &pos_label, const std::string &neg_class)

Here is the call graph for this function:


The documentation for this class was generated from the following files: