@Title(value="Weighted Covariance Matrix / PCA") @Description(value="A PCA modification by using weights while building the covariance matrix, to obtain more stable results") @Reference(authors="Hans-Peter Kriegel, Peer Kr\u00f6ger, Erich Schubert, Arthur Zimek", title="A General Framework for Increasing the Robustness of PCA-based Correlation Clustering Algorithms", booktitle="Proc. 20th Intl. Conf. on Scientific and Statistical Database Management (SSDBM)", url="https://doi.org/10.1007/978-3-540-69497-7_27", bibkey="DBLP:conf/ssdbm/KriegelKSZ08") public class WeightedCovarianceMatrixBuilder extends java.lang.Object implements CovarianceMatrixBuilder
CovarianceMatrixBuilder with weights.
This builder uses a weight function to weight points differently during build a covariance matrix. Covariance can be canonically extended with weights, as shown in the article
Reference:
A General Framework for Increasing the Robustness of PCA-Based Correlation
Clustering Algorithms
Hans-Peter Kriegel and Peer Kröger and Erich Schubert and Arthur Zimek
Proc. 20th Int. Conf. on Scientific and Statistical Database Management
(SSDBM)
| Modifier and Type | Class and Description |
|---|---|
static class |
WeightedCovarianceMatrixBuilder.Parameterizer
Parameterization class.
|
| Modifier and Type | Field and Description |
|---|---|
private PrimitiveDistanceFunction<? super NumberVector> |
weightDistance
Holds the distance function used for weight calculation.
|
protected WeightFunction |
weightfunction
Holds the weight function.
|
| Constructor and Description |
|---|
WeightedCovarianceMatrixBuilder(WeightFunction weightfunction)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
double[][] |
processIds(DBIDs ids,
Relation<? extends NumberVector> relation)
Weighted Covariance Matrix for a set of IDs.
|
double[][] |
processQueryResults(DoubleDBIDList results,
Relation<? extends NumberVector> database,
int k)
Compute Covariance Matrix for a QueryResult Collection.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitprocessQueryResults, processRelationprotected WeightFunction weightfunction
private PrimitiveDistanceFunction<? super NumberVector> weightDistance
public WeightedCovarianceMatrixBuilder(WeightFunction weightfunction)
weightfunction - Weighting functionpublic double[][] processIds(DBIDs ids, Relation<? extends NumberVector> relation)
processIds in interface CovarianceMatrixBuilderids - Database ids to processrelation - Relation to processpublic double[][] processQueryResults(DoubleDBIDList results, Relation<? extends NumberVector> database, int k)
processQueryResults in interface CovarianceMatrixBuilderresults - a collection of QueryResultsdatabase - the database usedk - number of elements to processCopyright © 2019 ELKI Development Team. License information.