other versions
- jessie 1.0.10-1
mlpack::cf::CF< FactorizerType >(3) | MLPACK | mlpack::cf::CF< FactorizerType >(3) |
NAME¶
mlpack::cf::CF< FactorizerType > - This class implements Collaborative Filtering ( CF).SYNOPSIS¶
Public Member Functions¶
CF (arma::mat &data, const size_t numUsersForSimilarity=5, const size_t rank=0)
Private Member Functions¶
void CleanData ()
Private Attributes¶
arma::sp_mat cleanedData
Detailed Description¶
template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>>class mlpack::cf::CF< FactorizerType >¶
This class implements Collaborative Filtering ( CF). This implementation presently supports Alternating Least Squares (ALS) for collaborative filtering. A simple example of how to run Collaborative Filtering is shown below.extern arma::mat data; // (user, item, rating) table extern arma::Col<size_t> users; // users seeking recommendations arma::Mat<size_t> recommendations; // Recommendations CF<> cf(data); // Default options. // Generate 10 recommendations for all users. cf.GetRecommendations(10, recommendations); // Generate 10 recommendations for specified users. cf.GetRecommendations(10, recommendations, users);The data matrix is a (user, item, rating) table. Each column in the matrix should have three rows. The first represents the user; the second represents the item; and the third represents the rating. The user and item, while they are in a matrix that holds doubles, should hold integer (or size_t) values. The user and item indices are assumed to start at 0. Template Parameters:
FactorizerType The type of matrix factorization to
use to decompose the rating matrix (a W and H matrix). This must implement the
method Apply(arma::sp_mat& data, size_t rank, arma::mat& W,
arma::mat& H).
Definition at line 76 of file cf.hpp.
Constructor & Destructor Documentation¶
template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> mlpack::cf::CF< FactorizerType >:: CF (arma::mat &data, const size_tnumUsersForSimilarity = 5, const size_trank = 0)¶
Initialize the CF object. Store a reference to the data that we will be using. There are parameters that can be set; default values are provided for each of them. If the rank is left unset (or is set to 0), a simple density-based heuristic will be used to choose a rank. Parameters:data Initial (user, item, rating) matrix.
numUsersForSimilarity Size of the neighborhood.
rank Rank parameter for matrix factorization.
Member Function Documentation¶
template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> void mlpack::cf::CF< FactorizerType >::CleanData () [private]¶
Converts the User, Item, Value Matrix to User-Item Table.template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> const arma::sp_mat& mlpack::cf::CF< FactorizerType >::CleanedData () const [inline]¶
Get the cleaned data matrix. Definition at line 138 of file cf.hpp. References mlpack::cf::CF< FactorizerType >::cleanedData.template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> const arma::mat& mlpack::cf::CF< FactorizerType >::Data () const [inline]¶
Get the data matrix. Definition at line 136 of file cf.hpp. References mlpack::cf::CF< FactorizerType >::data.template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> void mlpack::cf::CF< FactorizerType >::Factorizer (const FactorizerType &f) [inline]¶
Sets factorizer for NMF. Definition at line 124 of file cf.hpp. References mlpack::cf::CF< FactorizerType >::factorizer.template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> void mlpack::cf::CF< FactorizerType >::GetRecommendations (const size_tnumRecs, arma::Mat< size_t > &recommendations)¶
Generates the given number of recommendations for all users. Parameters:numRecs Number of Recommendations
recommendations Matrix to save recommendations into.
template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> void mlpack::cf::CF< FactorizerType >::GetRecommendations (const size_tnumRecs, arma::Mat< size_t > &recommendations, arma::Col< size_t > &users)¶
Generates the given number of recommendations for the specified users. Parameters:numRecs Number of Recommendations
recommendations Matrix to save recommendations
users Users for which recommendations are to be generated
template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> const arma::mat& mlpack::cf::CF< FactorizerType >::H () const [inline]¶
Get the Item Matrix. Definition at line 132 of file cf.hpp. References mlpack::cf::CF< FactorizerType >::h.template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> void mlpack::cf::CF< FactorizerType >::InsertNeighbor (const size_tqueryIndex, const size_tpos, const size_tneighbor, const doublevalue, arma::Mat< size_t > &recommendations, arma::mat &values) const [private]¶
Helper function to insert a point into the recommendation matrices. Parameters:queryIndex Index of point whose recommendations we
are inserting into.
pos Position in list to insert into.
neighbor Index of item being inserted as a recommendation.
value Value of recommendation.
template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> void mlpack::cf::CF< FactorizerType >::NumUsersForSimilarity (const size_tnum) [inline]¶
Sets number of users for calculating similarity. Definition at line 94 of file cf.hpp. References mlpack::cf::CF< FactorizerType >::numUsersForSimilarity, and mlpack::Log::Warn.template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> size_t mlpack::cf::CF< FactorizerType >::NumUsersForSimilarity () const [inline]¶
Gets number of users for calculating similarity. Definition at line 106 of file cf.hpp. References mlpack::cf::CF< FactorizerType >::numUsersForSimilarity.template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> void mlpack::cf::CF< FactorizerType >::Rank (const size_trankValue) [inline]¶
Sets rank parameter for matrix factorization. Definition at line 112 of file cf.hpp. References mlpack::cf::CF< FactorizerType >::rank.template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> size_t mlpack::cf::CF< FactorizerType >::Rank () const [inline]¶
Gets rank parameter for matrix factorization. Definition at line 118 of file cf.hpp. References mlpack::cf::CF< FactorizerType >::rank.template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> const arma::mat& mlpack::cf::CF< FactorizerType >::Rating () const [inline]¶
Get the Rating Matrix. Definition at line 134 of file cf.hpp. References mlpack::cf::CF< FactorizerType >::rating.template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> std::string mlpack::cf::CF< FactorizerType >::ToString () const¶
Returns a string representation of this object.template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> const arma::mat& mlpack::cf::CF< FactorizerType >::W () const [inline]¶
Get the User Matrix. Definition at line 130 of file cf.hpp. References mlpack::cf::CF< FactorizerType >::w.Member Data Documentation¶
template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> arma::sp_mat mlpack::cf::CF< FactorizerType >::cleanedData [private]¶
Cleaned data matrix. Definition at line 181 of file cf.hpp. Referenced by mlpack::cf::CF< FactorizerType >::CleanedData().template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> arma::mat mlpack::cf::CF< FactorizerType >::data [private]¶
Initial data matrix. Definition at line 167 of file cf.hpp. Referenced by mlpack::cf::CF< FactorizerType >::Data().template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> FactorizerType mlpack::cf::CF< FactorizerType >::factorizer [private]¶
Instantiated factorizer object. Definition at line 173 of file cf.hpp. Referenced by mlpack::cf::CF< FactorizerType >::Factorizer().template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> arma::mat mlpack::cf::CF< FactorizerType >::h [private]¶
Item matrix. Definition at line 177 of file cf.hpp. Referenced by mlpack::cf::CF< FactorizerType >::H().template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> size_t mlpack::cf::CF< FactorizerType >::numUsersForSimilarity [private]¶
Number of users for similarity. Definition at line 169 of file cf.hpp. Referenced by mlpack::cf::CF< FactorizerType >::NumUsersForSimilarity().template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> size_t mlpack::cf::CF< FactorizerType >::rank [private]¶
Rank used for matrix factorization. Definition at line 171 of file cf.hpp. Referenced by mlpack::cf::CF< FactorizerType >::Rank().template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> arma::mat mlpack::cf::CF< FactorizerType >::rating [private]¶
Rating matrix. Definition at line 179 of file cf.hpp. Referenced by mlpack::cf::CF< FactorizerType >::Rating().template<typename FactorizerType = amf::AMF<amf::SimpleResidueTermination, amf::RandomInitialization, amf::NMFALSUpdate>> arma::mat mlpack::cf::CF< FactorizerType >::w [private]¶
User matrix. Definition at line 175 of file cf.hpp. Referenced by mlpack::cf::CF< FactorizerType >::W().Author¶
Generated automatically by Doxygen for MLPACK from the source code.Tue Sep 9 2014 | Version 1.0.10 |