opennlp.tools.util.eval
Class CrossValidationPartitioner<E>

java.lang.Object
  extended by opennlp.tools.util.eval.CrossValidationPartitioner<E>

public class CrossValidationPartitioner<E>
extends 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.


Nested Class Summary
static class CrossValidationPartitioner.TrainingSampleStream<E>
          The TrainingSampleStream which iterates over all training elements.
 
Constructor Summary
CrossValidationPartitioner(Collection<E> elements, int numberOfPartitions)
          Initializes the current instance.
CrossValidationPartitioner(ObjectStream<E> inElements, int numberOfPartitions)
          Initializes the current instance.
 
Method Summary
 boolean hasNext()
          Checks if there are more partitions available.
 CrossValidationPartitioner.TrainingSampleStream<E> next()
          Retrieves the next training and test partitions.
 String toString()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

CrossValidationPartitioner

public CrossValidationPartitioner(ObjectStream<E> inElements,
                                  int numberOfPartitions)
Initializes the current instance.

Parameters:
inElements -
numberOfPartitions -

CrossValidationPartitioner

public CrossValidationPartitioner(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.


next

public CrossValidationPartitioner.TrainingSampleStream<E> next()
                                                        throws IOException
Retrieves the next training and test partitions.

Throws:
IOException

toString

public String toString()
Overrides:
toString in class Object


Copyright © 2013 The Apache Software Foundation. All Rights Reserved.