Hierarchical Classifiers
LocalClassifierPerLevel
- class LocalClassifierPerLevel.LocalClassifierPerLevel(local_classifier: Optional[BaseEstimator] = None, verbose: int = 0, edge_list: Optional[str] = None, replace_classifiers: bool = True, n_jobs: int = 1)
Bases:
BaseEstimator,HierarchicalClassifierAssign local classifiers to each level of the hierarchy, except the root node.
A local classifier per level is a local hierarchical classifier that fits one local multi-class classifier for each level of the class hierarchy, except for the root node.
- __init__(local_classifier: Optional[BaseEstimator] = None, verbose: int = 0, edge_list: Optional[str] = None, replace_classifiers: bool = True, n_jobs: int = 1)
Initialize a local classifier per level.
- Parameters
local_classifier (BaseEstimator, default=LogisticRegression) – The local_classifier used to create the collection of local classifiers. Needs to have fit, predict and clone methods.
verbose (int, default=0) – Controls the verbosity when fitting and predicting. See https://verboselogs.readthedocs.io/en/latest/readme.html#overview-of-logging-levels for more information.
edge_list (str, default=None) – Path to write the hierarchy built.
replace_classifiers (bool, default=True) – Turns on (True) the replacement of a local classifier with a constant classifier when trained on only a single unique class.
n_jobs (int, default=1) – The number of jobs to run in parallel. Only
fitis parallelized.
- fit(X, y)
Fit a local classifier per level.
- Parameters
X ({array-like, sparse matrix} of shape (n_samples, n_features)) – The training input samples. Internally, its dtype will be converted to
dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparsecsc_matrix.y (array-like of shape (n_samples, n_levels)) – The target values, i.e., hierarchical class labels for classification.
- Returns
self – Fitted estimator.
- Return type
object
- get_metadata_routing()
Get metadata routing of this object.
Please check User Guide on how the routing mechanism works.
- Returns
routing – A
MetadataRequestencapsulating routing information.- Return type
MetadataRequest
- get_params(deep=True)
Get parameters for this estimator.
- Parameters
deep (bool, default=True) – If True, will return the parameters for this estimator and contained subobjects that are estimators.
- Returns
params – Parameter names mapped to their values.
- Return type
dict
- predict(X)
Predict classes for the given data.
Hierarchical labels are returned.
- Parameters
X ({array-like, sparse matrix} of shape (n_samples, n_features)) – The input samples. Internally, its dtype will be converted to
dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparsecsr_matrix.- Returns
y – The predicted classes.
- Return type
ndarray of shape (n_samples,) or (n_samples, n_outputs)
- set_params(**params)
Set the parameters of this estimator.
The method works on simple estimators as well as on nested objects (such as
Pipeline). The latter have parameters of the form<component>__<parameter>so that it’s possible to update each component of a nested object.- Parameters
**params (dict) – Estimator parameters.
- Returns
self – Estimator instance.
- Return type
estimator instance
LocalClassifierPerNode
- class LocalClassifierPerNode.LocalClassifierPerNode(local_classifier: Optional[BaseEstimator] = None, binary_policy: str = 'siblings', verbose: int = 0, edge_list: Optional[str] = None, replace_classifiers: bool = True, n_jobs: int = 1)
Bases:
BaseEstimator,HierarchicalClassifierAssign local classifiers to each node of the graph, except the root node.
A local classifier per node is a local hierarchical classifier that fits one local binary classifier for each node of the class hierarchy, except for the root node.
- __init__(local_classifier: Optional[BaseEstimator] = None, binary_policy: str = 'siblings', verbose: int = 0, edge_list: Optional[str] = None, replace_classifiers: bool = True, n_jobs: int = 1)
Initialize a local classifier per node.
- Parameters
local_classifier (BaseEstimator, default=LogisticRegression) – The local_classifier used to create the collection of local classifiers. Needs to have fit, predict and clone methods.
binary_policy (str, default="siblings") – Rules for defining positive and negative training examples.
verbose (int, default=0) – Controls the verbosity when fitting and predicting. See https://verboselogs.readthedocs.io/en/latest/readme.html#overview-of-logging-levels for more information.
edge_list (str, default=None) – Path to write the hierarchy built.
replace_classifiers (bool, default=True) – Turns on (True) the replacement of a local classifier with a constant classifier when trained on only a single unique class.
n_jobs (int, default=1) – The number of jobs to run in parallel. Only
fitis parallelized.
- fit(X, y)
Fit a local classifier per node.
- Parameters
X ({array-like, sparse matrix} of shape (n_samples, n_features)) – The training input samples. Internally, its dtype will be converted to
dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparsecsc_matrix.y (array-like of shape (n_samples, n_levels)) – The target values, i.e., hierarchical class labels for classification.
- Returns
self – Fitted estimator.
- Return type
object
- get_metadata_routing()
Get metadata routing of this object.
Please check User Guide on how the routing mechanism works.
- Returns
routing – A
MetadataRequestencapsulating routing information.- Return type
MetadataRequest
- get_params(deep=True)
Get parameters for this estimator.
- Parameters
deep (bool, default=True) – If True, will return the parameters for this estimator and contained subobjects that are estimators.
- Returns
params – Parameter names mapped to their values.
- Return type
dict
- predict(X)
Predict classes for the given data.
Hierarchical labels are returned.
- Parameters
X ({array-like, sparse matrix} of shape (n_samples, n_features)) – The input samples. Internally, its dtype will be converted to
dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparsecsr_matrix.- Returns
y – The predicted classes.
- Return type
ndarray of shape (n_samples,) or (n_samples, n_outputs)
- set_params(**params)
Set the parameters of this estimator.
The method works on simple estimators as well as on nested objects (such as
Pipeline). The latter have parameters of the form<component>__<parameter>so that it’s possible to update each component of a nested object.- Parameters
**params (dict) – Estimator parameters.
- Returns
self – Estimator instance.
- Return type
estimator instance
LocalClassifierPerParentNode
- class LocalClassifierPerParentNode.LocalClassifierPerParentNode(local_classifier: Optional[BaseEstimator] = None, verbose: int = 0, edge_list: Optional[str] = None, replace_classifiers: bool = True, n_jobs: int = 1)
Bases:
BaseEstimator,HierarchicalClassifierAssign local classifiers to each parent node of the graph.
A local classifier per parent node is a local hierarchical classifier that fits one multi-class classifier for each parent node of the class hierarchy.
- __init__(local_classifier: Optional[BaseEstimator] = None, verbose: int = 0, edge_list: Optional[str] = None, replace_classifiers: bool = True, n_jobs: int = 1)
Initialize a local classifier per parent node.
- Parameters
local_classifier (BaseEstimator, default=LogisticRegression) – The local_classifier used to create the collection of local classifiers. Needs to have fit, predict and clone methods.
verbose (int, default=0) – Controls the verbosity when fitting and predicting. See https://verboselogs.readthedocs.io/en/latest/readme.html#overview-of-logging-levels for more information.
edge_list (str, default=None) – Path to write the hierarchy built.
replace_classifiers (bool, default=True) – Turns on (True) the replacement of a local classifier with a constant classifier when trained on only a single unique class.
n_jobs (int, default=1) – The number of jobs to run in parallel. Only
fitis parallelized.
- fit(X, y)
Fit a local classifier per parent node.
- Parameters
X ({array-like, sparse matrix} of shape (n_samples, n_features)) – The training input samples. Internally, its dtype will be converted to
dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparsecsc_matrix.y (array-like of shape (n_samples, n_levels)) – The target values, i.e., hierarchical class labels for classification.
- Returns
self – Fitted estimator.
- Return type
object
- get_metadata_routing()
Get metadata routing of this object.
Please check User Guide on how the routing mechanism works.
- Returns
routing – A
MetadataRequestencapsulating routing information.- Return type
MetadataRequest
- get_params(deep=True)
Get parameters for this estimator.
- Parameters
deep (bool, default=True) – If True, will return the parameters for this estimator and contained subobjects that are estimators.
- Returns
params – Parameter names mapped to their values.
- Return type
dict
- predict(X)
Predict classes for the given data.
Hierarchical labels are returned.
- Parameters
X ({array-like, sparse matrix} of shape (n_samples, n_features)) – The input samples. Internally, its dtype will be converted to
dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparsecsr_matrix.- Returns
y – The predicted classes.
- Return type
ndarray of shape (n_samples,) or (n_samples, n_outputs)
- set_params(**params)
Set the parameters of this estimator.
The method works on simple estimators as well as on nested objects (such as
Pipeline). The latter have parameters of the form<component>__<parameter>so that it’s possible to update each component of a nested object.- Parameters
**params (dict) – Estimator parameters.
- Returns
self – Estimator instance.
- Return type
estimator instance