de.lmu.ifi.dbs.elki.algorithm.clustering
Class AbstractProjectedClustering<R extends Clustering<Model>,V extends NumberVector<V,?>>

java.lang.Object
  extended by de.lmu.ifi.dbs.elki.algorithm.AbstractAlgorithm<R>
      extended by de.lmu.ifi.dbs.elki.algorithm.clustering.AbstractProjectedClustering<R,V>
Type Parameters:
R - the result we return
V - the type of FeatureVector handled by this Algorithm
All Implemented Interfaces:
Algorithm, ClusteringAlgorithm<R>, InspectionUtilFrequentlyScanned, Parameterizable
Direct Known Subclasses:
ORCLUS, PROCLUS

public abstract class AbstractProjectedClustering<R extends Clustering<Model>,V extends NumberVector<V,?>>
extends AbstractAlgorithm<R>
implements ClusteringAlgorithm<R>

Abstract superclass for projected clustering algorithms, like PROCLUS and ORCLUS.


Nested Class Summary
static class AbstractProjectedClustering.Parameterizer
          Parameterization class.
 
Field Summary
private  DistanceFunction<? super V,DoubleDistance> distanceFunction
          The euclidean distance function.
protected  int k
          Holds the value of K_ID.
protected  int k_i
          Holds the value of K_I_ID.
static OptionID K_I_ID
          Parameter to specify the multiplier for the initial number of seeds, must be an integer greater than 0.
static OptionID K_ID
          Parameter to specify the number of clusters to find, must be an integer greater than 0.
protected  int l
          Holds the value of L_ID.
static OptionID L_ID
          Parameter to specify the dimensionality of the clusters to find, must be an integer greater than 0.
 
Constructor Summary
AbstractProjectedClustering(int k, int k_i, int l)
          Internal constructor.
 
Method Summary
protected  DistanceFunction<? super V,DoubleDistance> getDistanceFunction()
          Returns the distance function.
protected  DistanceQuery<V,DoubleDistance> getDistanceQuery(Database database)
          Returns the distance function.
 
Methods inherited from class de.lmu.ifi.dbs.elki.algorithm.AbstractAlgorithm
getInputTypeRestriction, getLogger, makeParameterDistanceFunction, run
 
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.algorithm.clustering.ClusteringAlgorithm
run
 
Methods inherited from interface de.lmu.ifi.dbs.elki.algorithm.Algorithm
getInputTypeRestriction
 

Field Detail

K_ID

public static final OptionID K_ID
Parameter to specify the number of clusters to find, must be an integer greater than 0.

Key: -projectedclustering.k


K_I_ID

public static final OptionID K_I_ID
Parameter to specify the multiplier for the initial number of seeds, must be an integer greater than 0.

Default value: 30

Key: -projectedclustering.k_i


L_ID

public static final OptionID L_ID
Parameter to specify the dimensionality of the clusters to find, must be an integer greater than 0.

Key: -projectedclustering.l


k

protected int k
Holds the value of K_ID.


k_i

protected int k_i
Holds the value of K_I_ID.


l

protected int l
Holds the value of L_ID.


distanceFunction

private DistanceFunction<? super V extends NumberVector<V,?>,DoubleDistance> distanceFunction
The euclidean distance function.

Constructor Detail

AbstractProjectedClustering

public AbstractProjectedClustering(int k,
                                   int k_i,
                                   int l)
Internal constructor.

Parameters:
k - K parameter
k_i - K_i parameter
l - L parameter
Method Detail

getDistanceFunction

protected DistanceFunction<? super V,DoubleDistance> getDistanceFunction()
Returns the distance function.

Returns:
the distance function

getDistanceQuery

protected DistanceQuery<V,DoubleDistance> getDistanceQuery(Database database)
Returns the distance function.

Returns:
the distance function

Release 0.4.0 (2011-09-20_1324)