Class CrossValidationPartitioner<E>


  • public class CrossValidationPartitioner<E>
    extends java.lang.Object
    Provides access to training and test partitions for n-fold cross validation.

    Cross validation is used to evaluate the performance of a classifier when only training data is available. The training set is split into n parts and the training / evaluation is performed n times on these parts. The training partition always consists of n -1 parts and one part is used for testing.

    To use the CrossValidationPartioner a client iterates over the n TrainingSampleStreams. Each TrainingSampleStream represents one partition and is used first for training and afterwards for testing. The TestSampleStream can be obtained from the TrainingSampleStream with the getTestSampleStream method.

    • Constructor Detail

      • CrossValidationPartitioner

        public CrossValidationPartitioner​(ObjectStream<E> inElements,
                                          int numberOfPartitions)
        Initializes the current instance.
        Parameters:
        inElements -
        numberOfPartitions -
      • CrossValidationPartitioner

        public CrossValidationPartitioner​(java.util.Collection<E> elements,
                                          int numberOfPartitions)
        Initializes the current instance.
        Parameters:
        elements -
        numberOfPartitions -
    • Method Detail

      • hasNext

        public boolean hasNext()
        Checks if there are more partitions available.
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object