ITMO_FS.filters.multivariate
.MultivariateFilter¶
-
class
ITMO_FS.filters.multivariate.
MultivariateFilter
(measure, n_features, beta=None, gamma=None)¶ Provides basic functionality for multivariate filters.
Parameters: - measure (string or callable) – A metric name defined in GLOB_MEASURE or a callable with signature measure(selected_features, free_features, dataset, labels) which should return a list of metric values for each feature in the dataset.
- n_features (int) – Number of features to select.
- beta (float, optional) – Initialize only in case you run MIFS or generalizedCriteria metrics.
- gamma (float, optional) – Initialize only in case you run generalizedCriteria metric.
Examples
>>> from ITMO_FS.filters.multivariate import MultivariateFilter >>> from sklearn.datasets import make_classification >>> from sklearn.preprocessing import KBinsDiscretizer >>> import numpy as np >>> dataset = make_classification(n_samples=100, n_features=20, n_informative=4, n_redundant=0, shuffle=False) >>> est = KBinsDiscretizer(n_bins=10, encode='ordinal') >>> data, target = np.array(dataset[0]), np.array(dataset[1]) >>> est.fit(data) >>> data = est.transform(data) >>> model = MultivariateFilter('MRMR', 8) >>> model.fit(data, target) >>> print(model.selected_features)
-
__init__
(measure, n_features, beta=None, gamma=None)¶ Initialize self. See help(type(self)) for accurate signature.
-
fit
(X, y, feature_names=None)¶ Fits the filter.
Parameters: - X (array-like, shape (n_samples, n_features)) – The training input samples.
- y (array-like, shape (n_samples, )) – The target values.
- feature_names (list of strings, optional) – In case you want to define feature names
Returns: Return type: None
-
fit_transform
(X, y=None, feature_names=None, **fit_params)¶ Fits the filter and transforms given dataset X.
Parameters: - X (array-like, shape (n_features, n_samples)) – The training input samples.
- y (array-like, shape (n_samples, ), optional) – The target values.
- feature_names (list of strings, optional) – In case you want to define feature names
- **fit_params – dictonary of measure parameter if needed.
Returns: Return type: X dataset sliced with features selected by the filter
-
transform
(X)¶ Transform given data by slicing it with selected features.
Parameters: X (array-like, shape (n_samples, n_features)) – The training input samples. Returns: Return type: Transformed 2D numpy array