emolib.classifier.heuristic
Class FiveIntervalsKE

java.lang.Object
  extended by emolib.util.proc.TextDataProcessor
      extended by emolib.classifier.Classifier
          extended by emolib.classifier.heuristic.FiveIntervalsKE
All Implemented Interfaces:
Configurable, DataProcessor

public class FiveIntervalsKE
extends Classifier

The FiveIntervalsKE is a heuristic rules-based classifier operating on the circumplex with emotions.

There are five possible emotions (surprise, joy, sadness, anger and fear, apart from the neutral feeling) according to the proposal of David Garcí in his Master's Thesis, derived from (Albrecht et al., 2005).

The KE (Knowledge Engineering) particle refers to the fact that these rules have been stated by a human expert, thus this is not a trainable classifier. Then, it is not saved nor loaded (but used directly) and by default it has been hard coded to return the emotion label in English.

--
(Albrecht et al., 2005) Albrecht, I., Scröder, M., Haber, J. and Seidel, H.-P., "Mixed Feelings: Expression of Non-Basic Emotions in a Muscle-Based Talking Head", DFKI, Germany, 2005.

Author:
David García, Alexandre Trilla (atrilla@salle.url.edu)

Constructor Summary
FiveIntervalsKE()
          Main constructor of this rules classifier.
 
Method Summary
 java.lang.String getCategory(FeatureBox inputFeatures)
          The function that decides the most appropriate emotional category.
 void load(java.lang.String path)
          Generic function to load a previously saved classifier.
 void save(java.lang.String path)
          Generic method to save the fully fledged classifier into a given file path.
 void trainingProcedure()
          Void method to train required by the Classifier class.
 
Methods inherited from class emolib.classifier.Classifier
applyClassification, getData, getListOfExampleCategories, getListOfExampleFeatures, initialize, inputTrainingExample, newProperties, register, resetExamples, train
 
Methods inherited from class emolib.util.proc.TextDataProcessor
flush, getName, getPredecessor, setPredecessor, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

FiveIntervalsKE

public FiveIntervalsKE()
Main constructor of this rules classifier.

Method Detail

getCategory

public java.lang.String getCategory(FeatureBox inputFeatures)
Description copied from class: Classifier
The function that decides the most appropriate emotional category. This is required for any classifier. The classifier in question has to previously run any training algorithm in order to provide the required prediction.

Specified by:
getCategory in class Classifier
Parameters:
inputFeatures - The input emotional features.
Returns:
The most appropriate emotional category.

trainingProcedure

public void trainingProcedure()
Void method to train required by the Classifier class.

Specified by:
trainingProcedure in class Classifier

save

public void save(java.lang.String path)
Description copied from class: Classifier
Generic method to save the fully fledged classifier into a given file path. It is recommended to use a plain text file (such as XML) to save the classifier's configuration since it's readable directly.

Specified by:
save in class Classifier
Parameters:
path - The file path to save the classifier.

load

public void load(java.lang.String path)
Description copied from class: Classifier
Generic function to load a previously saved classifier. This function should be consistent with the design followed in the saving procedure.

Specified by:
load in class Classifier
Parameters:
path - The path of the file which contains the previously saved classifier.