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.preprocessing import KBinsDiscretizer >>> import numpy as np
>>> est = KBinsDiscretizer(n_bins=10, encode='ordinal') >>> X = np.array([[1, 2, 3, 3, 1],[2, 2, 3, 3, 2], [1, 3, 3, 1, 3],[3, 1, 3, 1, 4],[4, 4, 3, 1, 5]], dtype = np.integer) >>> y = np.array([1, 2, 3, 4, 5], dtype=np.integer) >>> est.fit(X) KBinsDiscretizer(encode='ordinal', n_bins=10) >>> data = est.transform(X) >>> model = MultivariateFilter('MIM', 3) >>> model.fit(X, y) >>> model.selected_features array([4, 0, 1])
-
__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