Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## prea.recommender.etc
Class SlopeOne

    java.lang.Object
      prea.recommender.etc.SlopeOne

All Implemented Interfaces:
  Recommender

    public class SlopeOne

extends java.lang.Object
implements Recommender

This is a class implementing Slope-One algorithm. Technical detail of the algorithm can be found in Daniel Lemire and Anna Maclachlan, Slope One Predictors for Online Rating-Based Collaborative Filtering, Society for Industrial Mathematics, 05:471-480, 2005.

Since:
  2012. 4. 20
Version:
  1.1
Author:
  Joonseok Lee

Field Summary
`private DenseMatrix` | `diffMatrix` Prepared difference matrix
`private DenseMatrix` | `freqMatrix` Prepared frequency matrix
`int` | `itemCount` The number of items.
`double` | `maxValue` Maximum value of rating, existing in the dataset.
`double` | `minValue` Minimum value of rating, existing in the dataset.
`SparseMatrix` | `rateMatrix` Rating matrix for each user (row) and item (column)
`int` | `userCount` The number of users.

Constructor Summary
`SlopeOne(int uc, int ic, double max, double min)` 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.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### rateMatrix

    public SparseMatrix rateMatrix

  Rating matrix for each user (row) and item (column)

### userCount

    public int userCount

  The number of users.

### itemCount

    public int itemCount

  The number of items.

### maxValue

    public double maxValue

  Maximum value of rating, existing in the dataset.

### minValue

    public double minValue

  Minimum value of rating, existing in the dataset.

### diffMatrix

    private DenseMatrix diffMatrix

  Prepared difference matrix

### freqMatrix

    private DenseMatrix freqMatrix

  Prepared frequency matrix

Constructor Detail

### SlopeOne

    public SlopeOne(int uc,
                    int ic,
                    double max,
                    double min)

  Construct a Fast NPCA model with the given data.

  Parameters:
    `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.

Method Detail

### buildModel

    public void buildModel(SparseMatrix rm)

  Build a model with the given data and algorithm.

  Specified by:
    `buildModel` in interface `Recommender`
  Parameters:
    `rm` - The rating matrix with train data.

### evaluate

    public EvaluationMetrics evaluate(SparseMatrix testMatrix)

  Evaluate the designated algorithm with the given test data.

  Specified by:
    `evaluate` in interface `Recommender`
  Parameters:
    `testMatrix` - The rating matrix with test data.
  Returns:
    The result of evaluation, such as MAE, RMSE, and rank-score.

### getEstimation

    private SparseVector getEstimation(int u,
                                       int[] testItems)

  Estimate of ratings for a given user and a set of test items.

  Parameters:
    `u` - The user number.
    `testItems` - The list of items to be predicted.
  Returns:
    A list containing predicted rating scores.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD