Example usage for org.apache.mahout.cf.taste.impl.neighborhood CachingUserNeighborhood CachingUserNeighborhood

List of usage examples for org.apache.mahout.cf.taste.impl.neighborhood CachingUserNeighborhood CachingUserNeighborhood

Introduction

In this page you can find the example usage for org.apache.mahout.cf.taste.impl.neighborhood CachingUserNeighborhood CachingUserNeighborhood.

Prototype

public CachingUserNeighborhood(UserNeighborhood neighborhood, DataModel dataModel) throws TasteException 

Source Link

Usage

From source file:norbert.mynemo.core.recommendation.recommender.UserSimilarityRecommender.java

License:Apache License

@Override
public Recommender buildRecommender(DataModel dataModel) throws TasteException {
    UserSimilarity currentSimilarity;/*from  www  .  jav  a  2 s . c o m*/
    if (!configuration.allowCachedSimilarityReuse()) {
        // create a new similarity each time
        currentSimilarity = createSimilarity(dataModel);
    } else {
        if (cachedSimilarity == null) {
            // lazy initialization
            cachedSimilarity = createSimilarity(configuration.getDataModel());
        }
        currentSimilarity = cachedSimilarity;
    }

    UserNeighborhood neighborhood = new NearestNUserNeighborhood(configuration.getNeighborNumber(),
            currentSimilarity, dataModel);
    neighborhood = new CachingUserNeighborhood(neighborhood, dataModel);

    return new GenericUserBasedRecommender(dataModel, neighborhood, currentSimilarity);
}

From source file:org.zaizi.mahout.config.ClassNameNeighborHoodConfiguration.java

License:Open Source License

public UserNeighborhood getNeighborhood(DataModel dataModel, UserSimilarity userSimilarity)
        throws TasteException {

    UserNeighborhood neighborhood = null;
    if (ThresholdUserNeighborhood.class.getName().equals(neighborHoodClassName)) {
        if (samplingRate > 0d) {
            neighborhood = new ThresholdUserNeighborhood(threshold, userSimilarity, dataModel, samplingRate);
        } else {/*  w  w  w .  j  ava2  s  .  c o  m*/
            neighborhood = new ThresholdUserNeighborhood(threshold, userSimilarity, dataModel);
        }
    } else {
        if (samplingRate > 0d) {
            neighborhood = new NearestNUserNeighborhood(neighborhoodSize, minSimilarity, userSimilarity,
                    dataModel, samplingRate);
        } else {
            neighborhood = new NearestNUserNeighborhood(neighborhoodSize, minSimilarity, userSimilarity,
                    dataModel);
        }
    }
    return new CachingUserNeighborhood(neighborhood, dataModel);
}