25 #ifndef __MLPACK_METHODS_CF_CF_HPP
26 #define __MLPACK_METHODS_CF_CF_HPP
89 CF(
const size_t numRecs, arma::mat& data);
104 Log::Warn <<
"CF::NumRecs(): invalid value (< 1) "
105 "ignored." << std::endl;
108 this->numRecs = recs;
122 Log::Warn <<
"CF::NumUsersForSimilarity(): invalid value (< 1) "
123 "ignored." << std::endl;
126 this->numUsersForSimilarity = num;
136 const arma::mat&
W()
const {
return w; }
138 const arma::mat&
H()
const {
return h; }
160 arma::Col<size_t>& users);
170 arma::Col<size_t>& users,
size_t num);
182 arma::Col<size_t>& users,
size_t num,
214 const size_t neighbor,
216 arma::Mat<size_t>& recommendations,
217 arma::mat& values)
const;
const arma::sp_mat & CleanedData() const
Get the cleaned data matrix.
arma::sp_mat cleanedData
Cleaned data matrix.
const arma::mat & Data() const
Get the data matrix.
const arma::mat & W() const
Get the User Matrix.
void NumRecs(size_t recs)
Sets number of Recommendations.
CF(const size_t numRecs, const size_t numUsersForSimilarity, arma::mat &data)
Create a CF object and (optionally) set the parameters with which collaborative filtering will be run...
void GetRecommendations(arma::Mat< size_t > &recommendations)
Generates default number of recommendations for all users.
size_t numRecs
Number of recommendations.
void NumUsersForSimilarity(size_t num)
Sets number of user for calculating similarity.
size_t NumRecs()
Gets numRecs.
const arma::mat & H() const
Get the Item Matrix.
void InsertNeighbor(const size_t queryIndex, const size_t pos, const size_t neighbor, const double value, arma::Mat< size_t > &recommendations, arma::mat &values) const
Helper function to insert a point into the recommendation matrices.
void CleanData()
Converts the User, Item, Value Matrix to User-Item Table.
size_t numUsersForSimilarity
Number of users for similarity.
const arma::mat & Rating() const
Get the Rating Matrix.
static util::PrefixedOutStream Warn
Prints warning messages prefixed with [WARN ].
arma::mat rating
Rating matrix.
arma::mat data
Initial data matrix.
This class implements Collaborative Filtering (CF).
size_t NumUsersForSimilarity()
Gets number of users for calculating similarity/.