|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectprea.recommender.etc.FastNPCA
public class FastNPCA
This is a class implementing Fast Nonparametric Principal Component Analysis (NPCA). Technical detail of the algorithm can be found in Kai Yu et al, Fast Nonparametric Matrix Factorization for Large-scale Collaborative Filtering, Proceedings of the 32nd international ACM SIGIR conference on Research and development in information retrieval, 2009.
| Field Summary | |
|---|---|
int |
itemCount
The number of items. |
private SparseMatrix |
K
|
int |
maxIter
Maximum number of iteration. |
double |
maxValue
Maximum value of rating, existing in the dataset. |
double |
minValue
Minimum value of rating, existing in the dataset. |
private SparseVector |
mu
|
SparseMatrix |
rateMatrix
Rating matrix for each user (row) and item (column) |
boolean |
showProgress
Indicator whether to show progress of iteration. |
int |
userCount
The number of users. |
private SparseMatrix |
validationMatrix
Rating matrix for items which will be used during the validation phase. |
double |
validationRatio
Proportion of dataset, using for validation purpose. |
| Constructor Summary | |
|---|---|
FastNPCA(int uc,
int ic,
double max,
double min,
double vr,
int iter)
Construct a Fast NPCA model with the given data. |
|
| Method Summary | |
|---|---|
void |
buildModel(SparseMatrix rm)
Build a model with the given data and algorithm. |
EvaluationMetrics |
evaluate(SparseMatrix testMatrix)
Evaluate the designated algorithm with the given test data. |
private SparseVector |
getEstimation(int u,
int[] testItems)
Estimate of ratings for a given user and a set of test items. |
private void |
makeValidationSet(double validationRatio)
Items which will be used for validation purpose are moved from rateMatrix to validationMatrix. |
private void |
restoreValidationSet()
Items in validationMatrix are moved to original rateMatrix. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public SparseMatrix rateMatrix
private SparseMatrix validationMatrix
public int userCount
public int itemCount
public double maxValue
public double minValue
public int maxIter
public double validationRatio
public boolean showProgress
private SparseMatrix K
private SparseVector mu
| Constructor Detail |
|---|
public FastNPCA(int uc,
int ic,
double max,
double min,
double vr,
int iter)
uc - The number of users in the dataset.ic - The number of items in the dataset.max - The maximum rating value in the dataset.min - The minimum rating value in the dataset.vr - The proportion of dataset which will be used for validation.iter - The maximum number of iteration.| Method Detail |
|---|
public void buildModel(SparseMatrix rm)
buildModel in interface Recommenderrm - The rating matrix with train data.public EvaluationMetrics evaluate(SparseMatrix testMatrix)
evaluate in interface RecommendertestMatrix - The rating matrix with test data.
private SparseVector getEstimation(int u,
int[] testItems)
u - The user number.testItems - The list of items to be predicted.
private void makeValidationSet(double validationRatio)
validationRatio - Proportion of dataset, using for validation purpose.private void restoreValidationSet()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||