Package elki.data.projection.random
Class RandomSubsetProjectionFamily
- java.lang.Object
-
- elki.data.projection.random.AbstractRandomProjectionFamily
-
- elki.data.projection.random.RandomSubsetProjectionFamily
-
- All Implemented Interfaces:
RandomProjectionFamily
@Reference(authors="L. Breiman", title="Bagging predictors", booktitle="Machine learning 24.2", url="https://doi.org/10.1007/BF00058655", bibkey="DBLP:journals/ml/Breiman96b") public class RandomSubsetProjectionFamily extends AbstractRandomProjectionFamily
Random projection family based on selecting random features.The basic idea of using this for data mining should probably be attributed to L. Breiman, who used it to improve the performance of predictors in an ensemble.
Reference:
L. Breiman
Bagging predictors
Machine learning 24.2- Since:
- 0.6.0
- Author:
- Erich Schubert
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
RandomSubsetProjectionFamily.Par
Parameterization class.static class
RandomSubsetProjectionFamily.SubsetProjection
Random subset projection.-
Nested classes/interfaces inherited from class elki.data.projection.random.AbstractRandomProjectionFamily
AbstractRandomProjectionFamily.MatrixProjection
-
Nested classes/interfaces inherited from interface elki.data.projection.random.RandomProjectionFamily
RandomProjectionFamily.Projection
-
-
Field Summary
-
Fields inherited from class elki.data.projection.random.AbstractRandomProjectionFamily
random
-
-
Constructor Summary
Constructors Constructor Description RandomSubsetProjectionFamily(RandomFactory random)
Constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description RandomProjectionFamily.Projection
generateProjection(int idim, int odim)
Generate a projection matrix for the given dimensionalities.static int[]
randomPermutation(int[] out, java.util.Random random)
Perform a random permutation of the array, in-place.private static int[]
sequence(int e)
Generate the integer sequence 0 .. e-1
-
-
-
Constructor Detail
-
RandomSubsetProjectionFamily
public RandomSubsetProjectionFamily(RandomFactory random)
Constructor.- Parameters:
random
- Random generator.
-
-
Method Detail
-
generateProjection
public RandomProjectionFamily.Projection generateProjection(int idim, int odim)
Description copied from interface:RandomProjectionFamily
Generate a projection matrix for the given dimensionalities.- Parameters:
idim
- Input Dimensionalityodim
- Output Dimensionality- Returns:
- Projection matrix
-
randomPermutation
public static int[] randomPermutation(int[] out, java.util.Random random)
Perform a random permutation of the array, in-place. Knuth / Fisher-Yates style shuffle TODO: move to shared code.- Parameters:
out
- Existing output arrayrandom
- Random generator.- Returns:
- Same array.
-
sequence
private static int[] sequence(int e)
Generate the integer sequence 0 .. e-1TODO: move to shared code.
- Parameters:
e
- End (exclusive)- Returns:
- End
-
-