Struct oozie::recommender::BasicItemRecommender
[−]
[src]
pub struct BasicItemRecommender<'a, D: DataHandler + 'a> { /* fields omitted */ }
An item based threshold neighbors recommender
Methods
impl<'a, D: DataHandler + 'a> BasicItemRecommender<'a, D>
[src]
fn new(
data_handler: &mut D,
threshold: f64,
similarity: fn(_: &HashMap<usize, f64>, _: &HashMap<usize, f64>, _: usize) -> f64
) -> BasicItemRecommender<D>
data_handler: &mut D,
threshold: f64,
similarity: fn(_: &HashMap<usize, f64>, _: &HashMap<usize, f64>, _: usize) -> f64
) -> BasicItemRecommender<D>
Initializes a new recommender from a data handler, computes and stores the similarities between items
fn add_user(&mut self, user_id: ID) -> bool
Adds an user to the data handler
fn add_item(&mut self, item_id: ID) -> bool
Adds an item to the data handler
fn add_rating(&mut self, user_id: ID, item_id: ID, rating: f64) -> bool
Adds a rating to the data handler, it computes the similarities for the item which had a new rating
Trait Implementations
impl<'a, D: DataHandler + 'a> Recommender for BasicItemRecommender<'a, D>
[src]
fn predict(&self, user_id: ID, item_id: ID) -> f64
Predicts the rating for an user and item averaging the ratings of the items whose similarities with the item are above the threshold. If there are no item above the threshold it returns -1.0
fn recommend(&self, user_id: ID) -> Vec<(ID, f64)>
Generates a sorted vector of item IDs by a predicted rating which is computed in the same way that the predict method. It ignores items that have a predicted rating of -1.0