17 #ifndef JUBATUS_CORE_DRIVER_RECOMMENDER_HPP_
18 #define JUBATUS_CORE_DRIVER_RECOMMENDER_HPP_
23 #include "jubatus/util/lang/shared_ptr.h"
24 #include "../recommender/recommender_base.hpp"
25 #include "../framework/mixable.hpp"
26 #include "../framework/diffv.hpp"
27 #include "../fv_converter/mixable_weight_manager.hpp"
28 #include "../fv_converter/datum_to_fv_converter.hpp"
33 namespace fv_converter {
35 class datum_to_fv_converter;
37 namespace recommender {
38 class recommender_base;
45 jubatus::util::lang::shared_ptr<core::recommender::recommender_base>
47 jubatus::util::lang::shared_ptr<fv_converter::datum_to_fv_converter>
55 void unpack(msgpack::object o);
60 const std::string&
id,
75 jubatus::util::lang::shared_ptr<fv_converter::datum_to_fv_converter>
77 jubatus::util::lang::shared_ptr<core::recommender::recommender_base>
86 #endif // JUBATUS_CORE_DRIVER_RECOMMENDER_HPP_
std::vector< std::pair< std::string, float > > similar_row_from_datum(const fv_converter::datum &data, size_t size)
fv_converter::datum complete_row_from_id(const std::string &id)
void unpack(msgpack::object o)
void clear_row(const std::string &id)
jubatus::util::lang::shared_ptr< core::recommender::recommender_base > recommender_
void pack(framework::packer &pk) const
fv_converter::mixable_weight_manager wm_
std::vector< std::string > get_all_rows()
void update_row(const std::string &id, const fv_converter::datum &dat)
std::vector< std::pair< std::string, float > > similar_row_from_id(const std::string &id, size_t ret_num)
fv_converter::datum decode_row(const std::string &id)
recommender(jubatus::util::lang::shared_ptr< core::recommender::recommender_base > method, jubatus::util::lang::shared_ptr< fv_converter::datum_to_fv_converter > converter)
float calc_similality(const fv_converter::datum &l, const fv_converter::datum &r)
jubatus::util::lang::shared_ptr< fv_converter::datum_to_fv_converter > converter_
float calc_l2norm(const fv_converter::datum &q)
fv_converter::datum complete_row_from_datum(const fv_converter::datum &dat)