Package org.apache.mahout.cf.taste.impl.common

Examples of org.apache.mahout.cf.taste.impl.common.LongPrimitiveIterator


    return createFactorization(userVectors, itemVectors);
  }

  double getAveragePreference() throws TasteException {
    RunningAverage average = new FullRunningAverage();
    LongPrimitiveIterator it = dataModel.getUserIDs();
    while (it.hasNext()) {
      for (Preference pref : dataModel.getPreferencesFromUser(it.nextLong())) {
        average.addDatum(pref.getValue());
      }
    }
    return average.getAverage();
  }
View Full Code Here


      stage();
    }

    private int countPreferences(DataModel dataModel) throws TasteException {
      int numPreferences = 0;
      LongPrimitiveIterator userIDs = dataModel.getUserIDs();
      while (userIDs.hasNext()) {
        PreferenceArray preferencesFromUser = dataModel.getPreferencesFromUser(userIDs.nextLong());
        numPreferences += preferencesFromUser.length();
      }
      return numPreferences;
    }
View Full Code Here

    private void cachePreferences(DataModel dataModel) throws TasteException {
      int numPreferences = countPreferences(dataModel);
      preferences = new Preference[numPreferences];

      LongPrimitiveIterator userIDs = dataModel.getUserIDs();
      int index = 0;
      while (userIDs.hasNext()) {
        long userID = userIDs.nextLong();
        PreferenceArray preferencesFromUser = dataModel.getPreferencesFromUser(userID);
        for (Preference preference : preferencesFromUser) {
          preferences[index++] = preference;
        }
      }
View Full Code Here

      entry.getValue().sortByUser();
    }

    this.userIDs = new long[userData.size()];
    int i = 0;
    LongPrimitiveIterator it = userData.keySetIterator();
    while (it.hasNext()) {
      userIDs[i++] = it.next();
    }
    Arrays.sort(userIDs);

    this.timestamps = timestamps;
  }
View Full Code Here

   * @return a {@link FastByIDMap} mapping user IDs to {@link PreferenceArray}s representing
   *  that user's preferences
   */
  public static FastByIDMap<PreferenceArray> toDataMap(DataModel dataModel) throws TasteException {
    FastByIDMap<PreferenceArray> data = new FastByIDMap<PreferenceArray>(dataModel.getNumUsers());
    LongPrimitiveIterator it = dataModel.getUserIDs();
    while (it.hasNext()) {
      long userID = it.nextLong();
      data.put(userID, dataModel.getPreferencesFromUser(userID));
    }
    return data;
  }
View Full Code Here

    try {
      userIDs = new FastIDSet(dataModel.getNumUsers());
      itemIDs = new FastIDSet(dataModel.getNumItems());
      preferences = Lists.newArrayList();

      LongPrimitiveIterator userIDsIterator = dataModel.getUserIDs();
      while (userIDsIterator.hasNext()) {
        long userID = userIDsIterator.nextLong();
        userIDs.add(userID);
        for (Preference preference : dataModel.getPreferencesFromUser(userID)) {
          itemIDs.add(preference.getItemID());
          preferences.add(new GenericPreference(userID, preference.getItemID(), preference.getValue()));
        }
View Full Code Here

                              Recommender recommender2,
                              int samples,
                              RunningAverage tracker,
                              String tag) throws TasteException {
    printHeader();
    LongPrimitiveIterator users = recommender1.getDataModel().getUserIDs();

    while (users.hasNext()) {
      long userID = users.nextLong();
      List<RecommendedItem> recs1 = recommender1.recommend(userID, samples);
      List<RecommendedItem> recs2 = recommender2.recommend(userID, samples);
      FastIDSet commonSet = new FastIDSet();
      long maxItemID = setBits(commonSet, recs1, samples);
      FastIDSet otherSet = new FastIDSet();
View Full Code Here

                              DataModel model,
                              int samples,
                              RunningAverage tracker,
                              String tag) throws TasteException {
    printHeader();
    LongPrimitiveIterator users = recommender.getDataModel().getUserIDs();
    while (users.hasNext()) {
      long userID = users.nextLong();
      List<RecommendedItem> recs1 = recommender.recommend(userID, model.getNumItems());
      PreferenceArray prefs2 = model.getPreferencesFromUser(userID);
      prefs2.sortByValueReversed();
      FastIDSet commonSet = new FastIDSet();
      long maxItemID = setBits(commonSet, recs1, samples);
View Full Code Here

                              DataModel model2,
                              int samples,
                              RunningAverage tracker,
                              String tag) throws TasteException {
    printHeader();
    LongPrimitiveIterator users = model1.getUserIDs();
    while (users.hasNext()) {
      long userID = users.nextLong();
      PreferenceArray prefs1 = model1.getPreferencesFromUser(userID);
      PreferenceArray prefs2 = model2.getPreferencesFromUser(userID);
      prefs1.sortByValueReversed();
      prefs2.sortByValueReversed();
      FastIDSet commonSet = new FastIDSet();
View Full Code Here

    DataModel dataModel = getDataModel();
    UserSimilarity userSimilarityImpl = getUserSimilarity();
   
    TopItems.Estimator<Long> estimator = new Estimator(userSimilarityImpl, userID, minSimilarity);
   
    LongPrimitiveIterator userIDs = SamplingLongPrimitiveIterator.maybeWrapIterator(dataModel.getUserIDs(),
      getSamplingRate());
   
    return TopItems.getTopUsers(n, userIDs, null, estimator);
  }
View Full Code Here

TOP

Related Classes of org.apache.mahout.cf.taste.impl.common.LongPrimitiveIterator

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.