
public class HiCSDimensionSimilarity extends Object implements DimensionSimilarity<NumberVector<?>>
 Based on:
 F. Keller, E. Müller, and K. Böhm.
 HiCS: High Contrast Subspaces for Density-Based Outlier Ranking. 
 In ICDE, pages 1037–1048, 2012.
 
| Modifier and Type | Class and Description | 
|---|---|
static class  | 
HiCSDimensionSimilarity.Parameterizer
Parameterization class. 
 | 
| Modifier and Type | Field and Description | 
|---|---|
private double | 
alpha
Alpha threshold 
 | 
private int | 
m
Monte-Carlo iterations 
 | 
private RandomFactory | 
rnd
Random generator 
 | 
private GoodnessOfFitTest | 
statTest
Statistical test to use 
 | 
| Constructor and Description | 
|---|
HiCSDimensionSimilarity(GoodnessOfFitTest statTest,
                       int m,
                       double alpha,
                       RandomFactory rnd)
Constructor. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
private ArrayList<ArrayDBIDs> | 
buildOneDimIndexes(Relation<? extends NumberVector<?>> relation,
                  DBIDs ids,
                  DimensionSimilarityMatrix matrix)
Calculates "index structures" for every attribute, i.e. sorts a
 ModifiableArray of every DBID in the database for every dimension and
 stores them in a list 
 | 
private double | 
calculateContrast(Relation<? extends NumberVector<?>> relation,
                 DBIDs subset,
                 ArrayDBIDs subspaceIndex1,
                 ArrayDBIDs subspaceIndex2,
                 int dim1,
                 int dim2,
                 Random random)
Calculates the actual contrast of a given subspace 
 | 
void | 
computeDimensionSimilarites(Database database,
                           Relation<? extends NumberVector<?>> relation,
                           DBIDs subset,
                           DimensionSimilarityMatrix matrix)
Compute the dimension similarity matrix 
 | 
private int m
private double alpha
private GoodnessOfFitTest statTest
private RandomFactory rnd
public HiCSDimensionSimilarity(GoodnessOfFitTest statTest, int m, double alpha, RandomFactory rnd)
statTest - Test functionm - Number of monte-carlo iterationsalpha - Alpha thresholdrnd - Random sourcepublic void computeDimensionSimilarites(Database database, Relation<? extends NumberVector<?>> relation, DBIDs subset, DimensionSimilarityMatrix matrix)
DimensionSimilaritycomputeDimensionSimilarites in interface DimensionSimilarity<NumberVector<?>>database - Database contextrelation - Relationsubset - DBID subset (for sampling / selection)matrix - Matrix to fillprivate ArrayList<ArrayDBIDs> buildOneDimIndexes(Relation<? extends NumberVector<?>> relation, DBIDs ids, DimensionSimilarityMatrix matrix)
relation - Relation to indexids - IDs to usematrix - Matrix (for dimension subset)private double calculateContrast(Relation<? extends NumberVector<?>> relation, DBIDs subset, ArrayDBIDs subspaceIndex1, ArrayDBIDs subspaceIndex2, int dim1, int dim2, Random random)
relation - Data relationsubset - Subset to processsubspaceIndex1 - Index of first subspacesubspaceIndex2 - Index of second subspacedim1 - First dimensiondim2 - Second dimensionrandom - Random generator