de.fu_berlin.ties.combi
Class TrivialStrategy

java.lang.Object
  extended by de.fu_berlin.ties.combi.CombinationStrategy
      extended by de.fu_berlin.ties.combi.TrivialStrategy

public class TrivialStrategy
extends CombinationStrategy

The trivial combination strategy simply uses a single tag for each class; no prefixes are used. Thus is cannot express the instances of the same class immediately following one after other -- they would be joined in a single instance. "A" is used for anything else/outside of any class (thus it cannot be used as the name of a class).

CombinationState.isEnd() is not supported by this class and will always return false.

Version:
$Revision: 1.7 $, $Date: 2004/09/16 11:12:53 $, $Author: siefkes $
Author:
Christian Siefkes

Field Summary
 
Fields inherited from class de.fu_berlin.ties.combi.CombinationStrategy
CONFIG_COMBINATION
 
Constructor Summary
TrivialStrategy(Set<String> theClasses)
          Creates a new instance.
 
Method Summary
 Set<String>[] activeClasses()
          Builds a set of class names (Strings) to pass to the classifier to consider for the next decision.
 Set<String>[] allClasses()
          Returns an array of immutable sets of all classes (Strings) that can possible occur during classification for each classifier.
 String[] translateCurrentState(CombinationState currentState)
          Translates an expected class to a class name to feed to the classifiers in training mode.
 CombinationState translateResult(PredictionDistribution[] predictions)
          Translates the classes predicted by the classifiers in a decision for the caller.
 
Methods inherited from class de.fu_berlin.ties.combi.CombinationStrategy
createStrategy, createStrategy, getValidClasses, reset, resetHook, state, toString, updateState
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

TrivialStrategy

public TrivialStrategy(Set<String> theClasses)
Creates a new instance.

Parameters:
theClasses - a set of valid class names (String)
Method Detail

activeClasses

public Set<String>[] activeClasses()
Builds a set of class names (Strings) to pass to the classifier to consider for the next decision. This implementation returns the classes in alphabetic order (using a SortedSet).

Specified by:
activeClasses in class CombinationStrategy
Returns:
a set of class names

allClasses

public Set<String>[] allClasses()
Returns an array of immutable sets of all classes (Strings) that can possible occur during classification for each classifier. The "background" class (outside any extractions) should be the first member of each set.

Specified by:
allClasses in class CombinationStrategy
Returns:
an array of immutable sets of class names

translateCurrentState

public String[] translateCurrentState(CombinationState currentState)
                               throws IllegalArgumentException
Translates an expected class to a class name to feed to the classifiers in training mode. This method reverses the direction of CombinationStrategy.translateResult(PredictionDistribution[]).

The return value can be feed to the classifiers for training it.

Specified by:
translateCurrentState in class CombinationStrategy
Parameters:
currentState - the current state
Returns:
the array of classes to feed to each classifier for training
Throws:
IllegalArgumentException - if the specified argument is invalid (non-empty string that is not in the set of valid classes, or empty string when null was given in the preceding call)

translateResult

public CombinationState translateResult(PredictionDistribution[] predictions)
                                 throws IllegalArgumentException
Translates the classes predicted by the classifiers in a decision for the caller. The end information might be unreliably/absent for same classes.

Specified by:
translateResult in class CombinationStrategy
Parameters:
predictions - array containing the prediction distributions of all classifier
Returns:
the translated result
Throws:
IllegalArgumentException - if the specified argument was invalid (not in the set of currently active classes


Copyright © 2003-2004 Christian Siefkes. All Rights Reserved.