public abstract class MatrixFactorizationRecommender extends AbstractRecommender
Created by Keqiang Wang
Modifier and Type | Field and Description |
---|---|
protected float |
initMean
init mean
|
protected float |
initStd
init standard deviation
|
protected DenseMatrix |
itemFactors
item latent factors
|
protected float |
learnRate
learn rate, maximum learning rate
|
protected float |
maxLearnRate
learn rate, maximum learning rate
|
protected int |
numFactors
the number of latent factors;
|
protected int |
numIterations
the number of iterations
|
protected float |
regItem
item regularization
|
protected float |
regUser
user regularization
|
protected DenseMatrix |
userFactors
user latent factors
|
conf, context, decay, earlyStop, globalMean, isBoldDriver, isRanking, itemMappingData, lastLoss, LOG, loss, maxRate, minRate, numItems, numRates, numUsers, ratingScale, recommendedList, testMatrix, topN, trainMatrix, userMappingData, validMatrix, verbose
Constructor and Description |
---|
MatrixFactorizationRecommender() |
Modifier and Type | Method and Description |
---|---|
protected double |
predict(int userIdx,
int itemIdx)
predict a specific rating for user userIdx on item itemIdx.
|
protected void |
setup()
setup
init member method
|
protected void |
updateLRate(int iter)
Update current learning rate after each epoch
bold driver: Gemulla et al., Large-scale matrix factorization with distributed stochastic gradient descent, KDD 2011. constant decay: Niu et al, Hogwild!: A lock-free approach to parallelizing stochastic gradient descent, NIPS 2011. Leon Bottou, Stochastic Gradient Descent Tricks more ways to adapt learning rate can refer to: http://www.willamette.edu/~gorr/classes/cs449/momrate.html |
cleanup, evaluate, evaluateMap, getContext, getDataModel, getRecommendedList, isConverged, loadModel, predict, recommend, recommend, recommendRank, recommendRating, saveModel, setContext, trainModel
protected float learnRate
protected float maxLearnRate
protected DenseMatrix userFactors
protected DenseMatrix itemFactors
protected int numFactors
protected int numIterations
protected float initMean
protected float initStd
protected float regUser
protected float regItem
protected void setup() throws LibrecException
setup
in class AbstractRecommender
LibrecException
- if error occurs during setting upprotected double predict(int userIdx, int itemIdx) throws LibrecException
predict
in class AbstractRecommender
userIdx
- user indexitemIdx
- item indexLibrecException
- if error occurs during predictingprotected void updateLRate(int iter)
iter
- the current iterationCopyright © 2017. All Rights Reserved.