jubatus_core  0.1.2
Jubatus: Online machine learning framework for distributed environment
Public Member Functions | Protected Attributes | Private Attributes | List of all members
jubatus::core::nearest_neighbor::nearest_neighbor_base Class Referenceabstract

#include <nearest_neighbor_base.hpp>

Inheritance diagram for jubatus::core::nearest_neighbor::nearest_neighbor_base:
Inheritance graph
Collaboration diagram for jubatus::core::nearest_neighbor::nearest_neighbor_base:
Collaboration graph

Public Member Functions

virtual float calc_similarity (float distance) const
 
virtual void clear ()
 
void get_all_row_ids (std::vector< std::string > &ids) const
 
jubatus::util::lang::shared_ptr< const storage::column_tableget_const_table () const
 
framework::mixableget_mixable () const
 
jubatus::util::lang::shared_ptr< storage::column_tableget_table ()
 
 nearest_neighbor_base (jubatus::util::lang::shared_ptr< storage::column_table > table, const std::string &id)
 
virtual void neighbor_row (const common::sfv_t &query, std::vector< std::pair< std::string, float > > &ids, uint64_t ret_num) const =0
 
virtual void neighbor_row (const std::string &query_id, std::vector< std::pair< std::string, float > > &ids, uint64_t ret_num) const =0
 
void pack (framework::packer &packer) const
 
virtual void set_row (const std::string &id, const common::sfv_t &sfv)=0
 
virtual void similar_row (const common::sfv_t &query, std::vector< std::pair< std::string, float > > &ids, uint64_t ret_num) const
 
virtual void similar_row (const std::string &query_id, std::vector< std::pair< std::string, float > > &ids, uint64_t ret_num) const
 
virtual std::string type () const =0
 
void unpack (msgpack::object o)
 
virtual ~nearest_neighbor_base ()
 

Protected Attributes

std::string my_id_
 

Private Attributes

jubatus::util::lang::shared_ptr< framework::mixable_versioned_tablemixable_table_
 

Detailed Description

Definition at line 37 of file nearest_neighbor_base.hpp.

Constructor & Destructor Documentation

jubatus::core::nearest_neighbor::nearest_neighbor_base::nearest_neighbor_base ( jubatus::util::lang::shared_ptr< storage::column_table table,
const std::string &  id 
)
explicit

Definition at line 34 of file nearest_neighbor_base.cpp.

References mixable_table_.

37  : my_id_(id),
38  mixable_table_(new framework::mixable_versioned_table) {
39  mixable_table_->set_model(table);
40 }
jubatus::util::lang::shared_ptr< framework::mixable_versioned_table > mixable_table_
virtual jubatus::core::nearest_neighbor::nearest_neighbor_base::~nearest_neighbor_base ( )
inlinevirtual

Definition at line 42 of file nearest_neighbor_base.hpp.

42 {}

Member Function Documentation

virtual float jubatus::core::nearest_neighbor::nearest_neighbor_base::calc_similarity ( float  distance) const
inlinevirtual

Reimplemented in jubatus::core::nearest_neighbor::euclid_lsh.

Definition at line 67 of file nearest_neighbor_base.hpp.

67  {
68  return 1 - distance;
69  }
void jubatus::core::nearest_neighbor::nearest_neighbor_base::clear ( )
virtual

Definition at line 52 of file nearest_neighbor_base.cpp.

References mixable_table_.

52  {
53  mixable_table_->get_model()->clear();
54 }
jubatus::util::lang::shared_ptr< framework::mixable_versioned_table > mixable_table_
void jubatus::core::nearest_neighbor::nearest_neighbor_base::get_all_row_ids ( std::vector< std::string > &  ids) const

Definition at line 42 of file nearest_neighbor_base.cpp.

References get_const_table().

42  {
43  vector<string> ret;
44  shared_ptr<const storage::column_table> table = get_const_table();
45  ret.reserve(table->size());
46  for (size_t i = 0; i < table->size(); ++i) {
47  ret.push_back(table->get_key(i));
48  }
49  ret.swap(ids);
50 }
jubatus::util::lang::shared_ptr< const storage::column_table > get_const_table() const

Here is the call graph for this function:

jubatus::util::lang::shared_ptr<const storage::column_table> jubatus::core::nearest_neighbor::nearest_neighbor_base::get_const_table ( ) const
inline

Definition at line 47 of file nearest_neighbor_base.hpp.

References mixable_table_.

Referenced by get_all_row_ids(), and pack().

47  {
48  return mixable_table_->get_model();
49  }
jubatus::util::lang::shared_ptr< framework::mixable_versioned_table > mixable_table_

Here is the caller graph for this function:

framework::mixable * jubatus::core::nearest_neighbor::nearest_neighbor_base::get_mixable ( ) const

Definition at line 84 of file nearest_neighbor_base.cpp.

References mixable_table_.

84  {
85  return mixable_table_.get();
86 }
jubatus::util::lang::shared_ptr< framework::mixable_versioned_table > mixable_table_
jubatus::util::lang::shared_ptr<storage::column_table> jubatus::core::nearest_neighbor::nearest_neighbor_base::get_table ( )
inline

Definition at line 50 of file nearest_neighbor_base.hpp.

References mixable_table_.

Referenced by unpack().

50  {
51  return mixable_table_->get_model();
52  }
jubatus::util::lang::shared_ptr< framework::mixable_versioned_table > mixable_table_

Here is the caller graph for this function:

virtual void jubatus::core::nearest_neighbor::nearest_neighbor_base::neighbor_row ( const common::sfv_t query,
std::vector< std::pair< std::string, float > > &  ids,
uint64_t  ret_num 
) const
pure virtual
virtual void jubatus::core::nearest_neighbor::nearest_neighbor_base::neighbor_row ( const std::string &  query_id,
std::vector< std::pair< std::string, float > > &  ids,
uint64_t  ret_num 
) const
pure virtual
void jubatus::core::nearest_neighbor::nearest_neighbor_base::pack ( framework::packer packer) const

Definition at line 76 of file nearest_neighbor_base.cpp.

References get_const_table().

76  {
77  get_const_table()->pack(packer);
78 }
msgpack::packer< jubatus_packer > packer
Definition: bandit_base.hpp:31
jubatus::util::lang::shared_ptr< const storage::column_table > get_const_table() const

Here is the call graph for this function:

virtual void jubatus::core::nearest_neighbor::nearest_neighbor_base::set_row ( const std::string &  id,
const common::sfv_t sfv 
)
pure virtual
virtual void jubatus::core::nearest_neighbor::nearest_neighbor_base::similar_row ( const common::sfv_t query,
std::vector< std::pair< std::string, float > > &  ids,
uint64_t  ret_num 
) const
virtual
virtual void jubatus::core::nearest_neighbor::nearest_neighbor_base::similar_row ( const std::string &  query_id,
std::vector< std::pair< std::string, float > > &  ids,
uint64_t  ret_num 
) const
virtual
virtual std::string jubatus::core::nearest_neighbor::nearest_neighbor_base::type ( ) const
pure virtual
void jubatus::core::nearest_neighbor::nearest_neighbor_base::unpack ( msgpack::object  o)

Definition at line 80 of file nearest_neighbor_base.cpp.

References get_table().

80  {
81  get_table()->unpack(o);
82 }
jubatus::util::lang::shared_ptr< storage::column_table > get_table()

Here is the call graph for this function:

Member Data Documentation

jubatus::util::lang::shared_ptr<framework::mixable_versioned_table> jubatus::core::nearest_neighbor::nearest_neighbor_base::mixable_table_
private
std::string jubatus::core::nearest_neighbor::nearest_neighbor_base::my_id_
protected

Definition at line 86 of file nearest_neighbor_base.hpp.


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