Environment for
DeveLoping
KDD-Applications
Supported by Index-Structures

de.lmu.ifi.dbs.elki.distance.similarityfunction.kernel
Class ArbitraryKernelFunctionWrapper<O extends RealVector<O,?>>

java.lang.Object
  extended by de.lmu.ifi.dbs.elki.logging.AbstractLoggable
      extended by de.lmu.ifi.dbs.elki.utilities.optionhandling.AbstractParameterizable
          extended by de.lmu.ifi.dbs.elki.distance.AbstractMeasurementFunction<O,D>
              extended by de.lmu.ifi.dbs.elki.distance.distancefunction.AbstractDistanceFunction<O,D>
                  extended by de.lmu.ifi.dbs.elki.distance.similarityfunction.kernel.AbstractKernelFunction<O,DoubleDistance>
                      extended by de.lmu.ifi.dbs.elki.distance.similarityfunction.kernel.AbstractDoubleKernelFunction<O>
                          extended by de.lmu.ifi.dbs.elki.distance.similarityfunction.kernel.ArbitraryKernelFunctionWrapper<O>
Type Parameters:
O - object type
All Implemented Interfaces:
DistanceFunction<O,DoubleDistance>, MeasurementFunction<O,DoubleDistance>, KernelFunction<O,DoubleDistance>, SimilarityFunction<O,DoubleDistance>, Parameterizable

public class ArbitraryKernelFunctionWrapper<O extends RealVector<O,?>>
extends AbstractDoubleKernelFunction<O>

Provides a wrapper for arbitrary kernel functions whose kernel matrix has been precomputed.

Author:
Simon Paradies

Field Summary
private  KernelMatrix<O> kernelMatrix
          The global kernel Matrix.
 
Fields inherited from class de.lmu.ifi.dbs.elki.distance.AbstractMeasurementFunction
INFINITY_PATTERN
 
Fields inherited from class de.lmu.ifi.dbs.elki.utilities.optionhandling.AbstractParameterizable
optionHandler
 
Fields inherited from class de.lmu.ifi.dbs.elki.logging.AbstractLoggable
debug, logger
 
Constructor Summary
ArbitraryKernelFunctionWrapper()
          Provides a wrapper for arbitrary kernel functions whose kernel matrix has already been precomputed.
 
Method Summary
 DoubleDistance distance(Integer id1, Integer id2)
          Returns the distance between the two objects specified by their object ids.
 DoubleDistance distance(O o1, O o2)
          Returns the distance between the two specified objects.
 void setDatabase(Database<O> database, boolean verbose, boolean time)
          Set the database that holds the associations for the DatabaseObject for which the measurements should be computed.
 String shortDescription()
          Returns the required input pattern.
 DoubleDistance similarity(O o1, O o2)
          Provides a wrapper for arbitrary kernel functions whose kernel matrix has already been precomputed.
 
Methods inherited from class de.lmu.ifi.dbs.elki.distance.similarityfunction.kernel.AbstractDoubleKernelFunction
infiniteDistance, nullDistance, undefinedDistance, valueOf
 
Methods inherited from class de.lmu.ifi.dbs.elki.distance.similarityfunction.kernel.AbstractKernelFunction
similarity, similarity
 
Methods inherited from class de.lmu.ifi.dbs.elki.distance.distancefunction.AbstractDistanceFunction
distance, isInfiniteDistance, isNullDistance, isUndefinedDistance
 
Methods inherited from class de.lmu.ifi.dbs.elki.distance.AbstractMeasurementFunction
getDatabase, matches, requiredInputPattern, setRequiredInputPattern
 
Methods inherited from class de.lmu.ifi.dbs.elki.utilities.optionhandling.AbstractParameterizable
addOption, addParameterizable, addParameterizable, checkGlobalParameterConstraints, collectOptions, getAttributeSettings, getParameters, rememberParametersExcept, removeOption, removeParameterizable, setParameters
 
Methods inherited from class de.lmu.ifi.dbs.elki.logging.AbstractLoggable
debugFine, debugFiner, debugFinest, exception, progress, verbose, warning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface de.lmu.ifi.dbs.elki.distance.distancefunction.DistanceFunction
distance
 
Methods inherited from interface de.lmu.ifi.dbs.elki.distance.MeasurementFunction
isInfiniteDistance, isNullDistance, isUndefinedDistance, requiredInputPattern
 
Methods inherited from interface de.lmu.ifi.dbs.elki.utilities.optionhandling.Parameterizable
checkGlobalParameterConstraints, collectOptions, getParameters, setParameters
 

Field Detail

kernelMatrix

private KernelMatrix<O extends RealVector<O,?>> kernelMatrix
The global kernel Matrix.

Constructor Detail

ArbitraryKernelFunctionWrapper

public ArbitraryKernelFunctionWrapper()
Provides a wrapper for arbitrary kernel functions whose kernel matrix has already been precomputed.

Method Detail

similarity

public DoubleDistance similarity(O o1,
                                 O o2)
Provides a wrapper for arbitrary kernel functions whose kernel matrix has already been precomputed. Returns the value that is stored in the kernel matrix which itself is stored in the database.

Parameters:
o1 - first vector
o2 - second vector
Returns:
the linear kernel similarity which is stored in the Global Database

distance

public DoubleDistance distance(O o1,
                               O o2)
Returns the distance between the two specified objects.

Specified by:
distance in interface DistanceFunction<O extends RealVector<O,?>,DoubleDistance>
Overrides:
distance in class AbstractDoubleKernelFunction<O extends RealVector<O,?>>
Parameters:
o1 - first DatabaseObject
o2 - second DatabaseObject
Returns:
the distance between the two object specified by their object ids

distance

public DoubleDistance distance(Integer id1,
                               Integer id2)
Returns the distance between the two objects specified by their object ids.

Specified by:
distance in interface DistanceFunction<O extends RealVector<O,?>,DoubleDistance>
Overrides:
distance in class AbstractDistanceFunction<O extends RealVector<O,?>,DoubleDistance>
Parameters:
id1 - first object id
id2 - second object id
Returns:
the distance between the two objects specified by their object ids

shortDescription

public String shortDescription()
Description copied from class: AbstractMeasurementFunction
Returns the required input pattern.

Specified by:
shortDescription in interface Parameterizable
Overrides:
shortDescription in class AbstractMeasurementFunction<O extends RealVector<O,?>,DoubleDistance>
Returns:
Description of the class

setDatabase

public void setDatabase(Database<O> database,
                        boolean verbose,
                        boolean time)
Description copied from interface: MeasurementFunction
Set the database that holds the associations for the DatabaseObject for which the measurements should be computed.

Specified by:
setDatabase in interface MeasurementFunction<O extends RealVector<O,?>,DoubleDistance>
Overrides:
setDatabase in class AbstractMeasurementFunction<O extends RealVector<O,?>,DoubleDistance>
Parameters:
database - Database
verbose - unused
time - unused

Release 0.2.1 (2009-07-13_1605)