Package elki.datasource.filter.transform
Class LinearDiscriminantAnalysisFilter<V extends NumberVector>
- java.lang.Object
-
- elki.datasource.filter.transform.AbstractSupervisedProjectionVectorFilter<V>
-
- elki.datasource.filter.transform.LinearDiscriminantAnalysisFilter<V>
-
- Type Parameters:
V
- Vector type
- All Implemented Interfaces:
ObjectFilter
@Alias("lda") @Reference(authors="R. A. Fisher", title="The use of multiple measurements in taxonomic problems", booktitle="Annals of Eugenics 7.2", url="https://doi.org/10.1111/j.1469-1809.1936.tb02137.x", bibkey="doi:10.1111/j.1469-1809.1936.tb02137.x") public class LinearDiscriminantAnalysisFilter<V extends NumberVector> extends AbstractSupervisedProjectionVectorFilter<V>
Linear Discriminant Analysis (LDA) / Fisher's linear discriminant.Reference:
R. A. Fisher
The use of multiple measurements in taxonomic problems
Annals of Eugenics 7.2- Since:
- 0.6.0
- Author:
- Angela Peng, Erich Schubert
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
LinearDiscriminantAnalysisFilter.Par<V extends NumberVector>
Parameterization class.
-
Field Summary
Fields Modifier and Type Field Description private static Logging
LOG
Class logger.-
Fields inherited from class elki.datasource.filter.transform.AbstractSupervisedProjectionVectorFilter
tdim
-
-
Constructor Summary
Constructors Constructor Description LinearDiscriminantAnalysisFilter(int projdimension)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.util.List<Centroid>
computeCentroids(int dim, java.util.List<V> vectorcolumn, java.util.List<ClassLabel> keys, java.util.Map<ClassLabel,it.unimi.dsi.fastutil.ints.IntList> classes)
Compute the centroid for each class.protected double[][]
computeProjectionMatrix(java.util.List<V> vectorcolumn, java.util.List<? extends ClassLabel> classcolumn, int dim)
computes the projection matrixprotected Logging
getLogger()
Class logger.-
Methods inherited from class elki.datasource.filter.transform.AbstractSupervisedProjectionVectorFilter
convertedType, filter, partition
-
-
-
-
Field Detail
-
LOG
private static final Logging LOG
Class logger.
-
-
Method Detail
-
computeProjectionMatrix
protected double[][] computeProjectionMatrix(java.util.List<V> vectorcolumn, java.util.List<? extends ClassLabel> classcolumn, int dim)
Description copied from class:AbstractSupervisedProjectionVectorFilter
computes the projection matrix- Specified by:
computeProjectionMatrix
in classAbstractSupervisedProjectionVectorFilter<V extends NumberVector>
- Parameters:
vectorcolumn
- Vectorsclasscolumn
- Class informationdim
- Dimensionality Dimensionality- Returns:
- Projection matrix
-
computeCentroids
protected java.util.List<Centroid> computeCentroids(int dim, java.util.List<V> vectorcolumn, java.util.List<ClassLabel> keys, java.util.Map<ClassLabel,it.unimi.dsi.fastutil.ints.IntList> classes)
Compute the centroid for each class.- Parameters:
dim
- Dimensionalityvectorcolumn
- Vector columnkeys
- Key indexclasses
- Classes- Returns:
- Centroids for each class.
-
getLogger
protected Logging getLogger()
Class logger.- Specified by:
getLogger
in classAbstractSupervisedProjectionVectorFilter<V extends NumberVector>
- Returns:
- Logger
-
-