org.mymedialite.data
Class PosOnlyFeedbackCrossValidationSplit<T extends IPosOnlyFeedback>

java.lang.Object
  extended by org.mymedialite.data.PosOnlyFeedbackCrossValidationSplit<T>
All Implemented Interfaces:
ISplit<IPosOnlyFeedback>

public class PosOnlyFeedbackCrossValidationSplit<T extends IPosOnlyFeedback>
extends java.lang.Object
implements ISplit<IPosOnlyFeedback>

K-fold cross-validation split for item prediction from implicit feedback. Items with less than k events associated are ignored for testing and always assigned to the training set. The dataset must not be modified after the split - this would lead to undefined behavior.


Constructor Summary
PosOnlyFeedbackCrossValidationSplit(IPosOnlyFeedback feedback, int num_folds, java.util.List<IPosOnlyFeedback> train, java.util.List<IPosOnlyFeedback> test)
          Create a k-fold split of positive-only item prediction data.
 
Method Summary
 int numberOfFolds()
          The number of folds in this split.
 java.util.List<IPosOnlyFeedback> test()
          Test data for the different folds.
 java.util.List<IPosOnlyFeedback> train()
          Training data for the different folds.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PosOnlyFeedbackCrossValidationSplit

public PosOnlyFeedbackCrossValidationSplit(IPosOnlyFeedback feedback,
                                           int num_folds,
                                           java.util.List<IPosOnlyFeedback> train,
                                           java.util.List<IPosOnlyFeedback> test)
Create a k-fold split of positive-only item prediction data. See the class description for details.

Parameters:
feedback - the dataset
num_folds - the number of folds
Method Detail

numberOfFolds

public int numberOfFolds()
Description copied from interface: ISplit
The number of folds in this split.

Specified by:
numberOfFolds in interface ISplit<IPosOnlyFeedback>
Returns:
The number of folds in this split

train

public java.util.List<IPosOnlyFeedback> train()
Description copied from interface: ISplit
Training data for the different folds.

Specified by:
train in interface ISplit<IPosOnlyFeedback>
Returns:
A list of T

test

public java.util.List<IPosOnlyFeedback> test()
Description copied from interface: ISplit
Test data for the different folds.

Specified by:
test in interface ISplit<IPosOnlyFeedback>
Returns:
A list of T