Ejemplo n.º 1
0
    def train(self, trainset):

        # Here again: call base method before doing anything.
        AlgoBase.train(self, trainset)

        user_num = self.trainset.n_users
        item_num = self.trainset.n_items
        rating = sparse.lil_matrix((user_num, item_num))

        for u, i, r in self.trainset.all_ratings():
            if r > 3:
                rating[u, i] = r

        self.A = st.SparseMatrix(rating)

        self.W = st.train(
            self.A,
            l1_ratio=self.l1_ratio,
            eps=self.eps,
            n_alphas=self.n_alphas,
            alphas=self.alphas,
            positive=self.positive,
            max_iter=self.max_iter)

        self.A = sparse.csc_matrix(self.A)
        self.W = sparse.csc_matrix(self.W)

        self.estimator = self.A * self.W
Ejemplo n.º 2
0
    def train(self, trainset):

        AlgoBase.train(self, trainset)

        # Compute baselines and similarities
        self.bu, self.bi = self.compute_baselines()
        self.sim = self.compute_similarities()
Ejemplo n.º 3
0
    def train(self, trainset):

        # Here again: call base method before doing anything.
        AlgoBase.train(self, trainset)

        # Compute the average rating
        self.the_mean = np.mean([r for (_, _, r) in self.trainset.all_ratings()])
Ejemplo n.º 4
0
    def train(self, trainset):

        AlgoBase.train(self, trainset)
        self.sim = self.compute_similarities()

        raw_rating_df = pd.read_csv(
            'new_ratings_all.txt',
            sep=':',
            header=None,
            names=['userid', 'movieid', 'rating', 'date', 'comment_level'],
            dtype={
                'movieid': np.str,
                'userid': np.str
            })

        self.user_comment_indictor = self.get_user_comment_indictor(
            raw_rating_df)

        self.user_rating_date_indictor = self.get_user_rating_date_indictor(
            raw_rating_df)

        self.user_professional_indictor = self.get_user_professional_indictor(
            self.user_comment_indictor, self.user_rating_date_indictor)

        self.inner_uid_2_professional = {
            iuid: self.user_professional_indictor['std'][
                self.trainset.to_raw_uid(iuid)]
            for iuid, _ in self.trainset.ur.iteritems()
        }
Ejemplo n.º 5
0
    def train(self, trainset):
        AlgoBase.train(self, trainset)
        self.trainset = trainset

        self.sim = self.compute_similarities()
        self.iuid_ifriends = self.read_social(trainset)

        self.sbmf(trainset)
Ejemplo n.º 6
0
    def train(self, trainset):

        # Here again: call base method before doing anything.
        AlgoBase.train(self, trainset)

        # Compute the average rating. We might as well use the
        # trainset.global_mean attribute ;)
        self.the_mean = numpy.mean(
            [r for (_, _, r) in self.trainset.all_ratings()])
Ejemplo n.º 7
0
    def train(self, trainset):

        # Here again: call base method before doing anything.
        AlgoBase.train(self, trainset)

        users = np.array([u for (u, _, _) in self.trainset.all_ratings()])
        items = np.array([i for (_, i, _) in self.trainset.all_ratings()])
        ratings = np.array([r for (_, _, r) in self.trainset.all_ratings()])

        user_means, item_means = {}, {}
        for user in np.unique(users):
            user_means[user] = ratings[users == user].mean()
        for item in np.unique(items):
            item_means[item] = ratings[items == item].mean()

        self.global_mean = ratings.mean()
        self.user_means = user_means
        self.item_means = item_means
Ejemplo n.º 8
0
        def train(self, trainset):

            AlgoBase.train(self, trainset)
            self.est = 3
            self.bu, self.bi = 1, 1
            self.cnt += 1
Ejemplo n.º 9
0
 def train(self, trainset):
     AlgoBase.train(self, trainset)
     # remember DF is uid, iid, rating
     self.mean = np.mean(
         [rating for (_, _, rating) in self.trainset.all_ratings()])
Ejemplo n.º 10
0
    def train(self, trainset):

        AlgoBase.train(self, trainset)

        # Computing the average rating
        self.the_mean = np.mean([r for (_, _, r) in self.trainset.all_ratings()])
Ejemplo n.º 11
0
        def train(self, trainset):

            AlgoBase.train(self, trainset)
            self.est = 3
            self.bu, self.bi = 1, 1
            self.cnt += 1
 def train(self, trainset):
     AlgoBase.train(self, trainset)
     self.user_bias = bias_user_df
     self.business_bias = bias_business_df
 def train(self, trainset):
     AlgoBase.train(self, trainset)
     self.mean = self.trainset.global_mean