Package elki.datasource.filter.transform
Class NumberVectorRandomFeatureSelectionFilter<V extends elki.data.NumberVector>
- java.lang.Object
-
- elki.datasource.filter.AbstractStreamFilter
-
- elki.datasource.filter.AbstractStreamConversionFilter<I,O>
-
- elki.datasource.filter.AbstractVectorStreamConversionFilter<V,V>
-
- elki.datasource.filter.transform.NumberVectorRandomFeatureSelectionFilter<V>
-
- Type Parameters:
V- vector type
- All Implemented Interfaces:
elki.datasource.bundle.BundleStreamSource,elki.datasource.filter.ObjectFilter,elki.datasource.filter.StreamFilter
public class NumberVectorRandomFeatureSelectionFilter<V extends elki.data.NumberVector> extends AbstractVectorStreamConversionFilter<V,V>
Parser to project the ParsingResult obtained by a suitable base parser onto a randomly selected subset of attributes.- Since:
- 0.4.0
- Author:
- Arthur Zimek
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classNumberVectorRandomFeatureSelectionFilter.ParParameterization class.
-
Field Summary
Fields Modifier and Type Field Description protected intkHolds the desired cardinality of the subset of attributes selected for projection.protected elki.utilities.random.RandomFactoryrndHolds a random generator.protected long[]selectedAttributesThe selected attributes.-
Fields inherited from class elki.datasource.filter.AbstractVectorStreamConversionFilter
factory
-
Fields inherited from class elki.datasource.filter.AbstractStreamFilter
source
-
-
Constructor Summary
Constructors Constructor Description NumberVectorRandomFeatureSelectionFilter(int dim, elki.utilities.random.RandomFactory rnd)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected elki.data.type.SimpleTypeInformation<? super V>convertedType(elki.data.type.SimpleTypeInformation<V> in)Get the output type from the input type after conversion.protected VfilterSingleObject(V obj)Normalize a single instance.protected elki.data.type.SimpleTypeInformation<? super V>getInputTypeRestriction()Get the input type restriction used for negotiating the data query.(package private) voidinitializeRandomAttributes(elki.data.type.SimpleTypeInformation<V> in)Initialize random attributes.-
Methods inherited from class elki.datasource.filter.AbstractVectorStreamConversionFilter
initializeOutputType
-
Methods inherited from class elki.datasource.filter.AbstractStreamConversionFilter
data, getMeta, nextEvent
-
Methods inherited from class elki.datasource.filter.AbstractStreamFilter
asMultipleObjectsBundle, assignDBID, filter, hasDBIDs, init, toString
-
-
-
-
Method Detail
-
filterSingleObject
protected V filterSingleObject(V obj)
Description copied from class:AbstractStreamConversionFilterNormalize a single instance. You can implement this as UnsupportedOperationException if you override both public "normalize" functions!- Specified by:
filterSingleObjectin classAbstractStreamConversionFilter<V extends elki.data.NumberVector,V extends elki.data.NumberVector>- Parameters:
obj- Database object to normalize- Returns:
- Normalized database object
-
getInputTypeRestriction
protected elki.data.type.SimpleTypeInformation<? super V> getInputTypeRestriction()
Description copied from class:AbstractStreamConversionFilterGet the input type restriction used for negotiating the data query.- Specified by:
getInputTypeRestrictionin classAbstractStreamConversionFilter<V extends elki.data.NumberVector,V extends elki.data.NumberVector>- Returns:
- Type restriction
-
convertedType
protected elki.data.type.SimpleTypeInformation<? super V> convertedType(elki.data.type.SimpleTypeInformation<V> in)
Description copied from class:AbstractStreamConversionFilterGet the output type from the input type after conversion.- Specified by:
convertedTypein classAbstractStreamConversionFilter<V extends elki.data.NumberVector,V extends elki.data.NumberVector>- Parameters:
in- input type restriction- Returns:
- output type restriction
-
initializeRandomAttributes
void initializeRandomAttributes(elki.data.type.SimpleTypeInformation<V> in)
Initialize random attributes. Invoke this fromconvertedType(elki.data.type.SimpleTypeInformation<V>)!- Parameters:
in- Type information.
-
-