pyccea.coevolution package
- class pyccea.coevolution.CCEAFS(data: DataLoader, conf: dict, verbose: bool = True)[source]
Bases:
CCGA
Cooperative Co-Evolutionary-Based Feature Selection (CCEAFS).
Rashid, A. N. M., et al. “A novel penalty-based wrapper objective function for feature selection in Big Data using cooperative co-evolution.” IEEE Access 8 (2020): 150113-150129.
Methods
optimize
()Solve the feature selection problem through optimization.
- class pyccea.coevolution.CCFC(data: DataLoader, conf: dict, verbose: bool = True)[source]
Bases:
CCGA
Cooperative Co-Evolutionary Algorithm with Feature Clustering.
Decomposition strategy proposed on: Li, Haoran, et al. “MLFS-CCDE: multi-objective large-scale feature selection by cooperative coevolutionary differential evolution.” Memetic Computing 13 (2021): 1-18.
Methods
optimize
()Solve the feature selection problem through optimization.
- class pyccea.coevolution.CCFSRFG1(data: DataLoader, conf: dict, verbose: bool = True)[source]
Bases:
CCGA
Cooperative Co-Evolutionary-Based Feature Selection with Random Feature Grouping 1.
Rashid, A. N. M., et al. “Cooperative co-evolution for feature selection in Big Data with random feature grouping.” Journal of Big Data 7.1 (2020): 1-42.
Methods
optimize
()Solve the feature selection problem through optimization.
- class pyccea.coevolution.CCFSRFG2(data: DataLoader, conf: dict, verbose: bool = True)[source]
Bases:
CCGA
Cooperative Co-Evolutionary-Based Feature Selection with Random Feature Grouping 2.
Rashid, A. N. M., et al. “Cooperative co-evolution for feature selection in Big Data with random feature grouping.” Journal of Big Data 7.1 (2020): 1-42.
- Attributes:
- best_feature_idxsnp.ndarray
List of feature indices corresponding to the best decomposition.
Methods
optimize
()Solve the feature selection problem through optimization.
- class pyccea.coevolution.CCILFG(data: DataLoader, conf: dict, verbose: bool = True)[source]
Bases:
CCGA
Cooperative Co-Evolutionary Algorithm with Interaction Learning Feature Grouping (CCILFG).
Decomposition strategy proposed on: Hou, Yaqing, et al. “A correlation-guided cooperative coevolutionary method for feature selection via interaction learning-based space division.” Swarm and Evolutionary Computation 93 (2025): 101846.
Methods
optimize
()Solve the feature selection problem through optimization.
- class pyccea.coevolution.CCPSTFG(data: DataLoader, conf: dict, verbose: bool = True)[source]
Bases:
CCGA
Cooperative Co-Evolutionary Algorithm with Projection-based Self-Tuning Feature Grouping (CCPSTFG).
- Attributes:
- n_componentsint
Number of components to keep after dimensionality reduction.
- methodstr
Projection-based decomposition method. It can be ‘clustering’, ‘elitist’ and ‘distributed’.
- vip_thresholdfloat
All features whose importance is less than or equal to this threshold will be removed.
- removed_featuresnp.ndarray
Indexes of features that were removed due to their low importance.
Methods
optimize
()Solve the feature selection problem through optimization.
- CLUSTERING_METHODS = {'agglomerative_clustering': (<class 'sklearn.cluster._agglomerative.AgglomerativeClustering'>, {'linkage': 'ward', 'metric': 'euclidean'}), 'k_means': (<class 'sklearn.cluster._kmeans.KMeans'>, {})}
- class pyccea.coevolution.CCSUFG(data: DataLoader, conf: dict, verbose: bool = True)[source]
Bases:
CCGA
Cooperative Co-Evolutionary Algorithm with Symmetric Uncertainty Feature Grouping (CCSUFG).
Symmetric Uncertainty computation based on: Li, Jundong, et al. “Feature selection: A data perspective.” ACM Computing Surveys (CSUR) 50.6 (2017): 1-45.
Decomposition strategy proposed on: Song, Xian-Fang, et al. “Variable-size cooperative coevolutionary particle swarm optimization for feature selection on high-dimensional data.” IEEE Transactions on Evolutionary Computation 24.5 (2020): 882-895.
Methods
optimize
()Solve the feature selection problem through optimization.
Submodules
pyccea.coevolution.ccea module
- class pyccea.coevolution.ccea.CCEA(data: DataLoader, conf: dict, verbose: bool = True)[source]
Bases:
ABC
An abstract class for a Cooperative Co-Evolutionary-Based Feature Selection Algorithm.
- Attributes:
- subpop_sizes: list
Subpopulation sizes, that is, the number of individuals in each subpopulation.
- decomposer: object of one of the decomposition classes
Responsible for decompose the problem into smaller subproblems.
- collaborator: object of one of the collaboration classes.
Responsible for selecting collaborators for individuals.
- fitness_function: object of one of the fitness classes.
Responsible for evaluating individuals, that is, subsets of features.
- initializer: object of one of the subpopulation initializers
Responsible for initializing all individuals of all subpopulations.
- optimizers: list of objects of optimizer classes
Responsible for evolving each of the subpopulations individually.
- subpops: list
Individuals from all subpopulations. Each individual is represented by a binary n-dimensional array, where n is the number of features. If there is a 1 in the i-th position of the array, it indicates that the i-th feature should be considered and if there is a 0, it indicates that the feature should not be considered.
- fitness: list
Evaluation of all context vectors from all subpopulations.
- context_vectors: list
Complete problem solutions.
- convergence_curve: list
Best global fitness in each generation.
- current_best: dict
Current best individual of each subpopulation and its respective evaluation.
- best_context_vector: np.ndarray
Best solution of the complete problem.
- best_fitness: float
Evaluation of the best solution of the complete problem.
- feature_idxsnp.ndarray
List of feature indexes.
Methods
optimize
()Solve the feature selection problem through optimization.
pyccea.coevolution.cceafs module
- class pyccea.coevolution.cceafs.CCEAFS(data: DataLoader, conf: dict, verbose: bool = True)[source]
Bases:
CCGA
Cooperative Co-Evolutionary-Based Feature Selection (CCEAFS).
Rashid, A. N. M., et al. “A novel penalty-based wrapper objective function for feature selection in Big Data using cooperative co-evolution.” IEEE Access 8 (2020): 150113-150129.
Methods
optimize
()Solve the feature selection problem through optimization.
pyccea.coevolution.ccfc module
- class pyccea.coevolution.ccfc.CCFC(data: DataLoader, conf: dict, verbose: bool = True)[source]
Bases:
CCGA
Cooperative Co-Evolutionary Algorithm with Feature Clustering.
Decomposition strategy proposed on: Li, Haoran, et al. “MLFS-CCDE: multi-objective large-scale feature selection by cooperative coevolutionary differential evolution.” Memetic Computing 13 (2021): 1-18.
Methods
optimize
()Solve the feature selection problem through optimization.
pyccea.coevolution.ccfsrfg1 module
- class pyccea.coevolution.ccfsrfg1.CCFSRFG1(data: DataLoader, conf: dict, verbose: bool = True)[source]
Bases:
CCGA
Cooperative Co-Evolutionary-Based Feature Selection with Random Feature Grouping 1.
Rashid, A. N. M., et al. “Cooperative co-evolution for feature selection in Big Data with random feature grouping.” Journal of Big Data 7.1 (2020): 1-42.
Methods
optimize
()Solve the feature selection problem through optimization.
pyccea.coevolution.ccfsrfg2 module
- class pyccea.coevolution.ccfsrfg2.CCFSRFG2(data: DataLoader, conf: dict, verbose: bool = True)[source]
Bases:
CCGA
Cooperative Co-Evolutionary-Based Feature Selection with Random Feature Grouping 2.
Rashid, A. N. M., et al. “Cooperative co-evolution for feature selection in Big Data with random feature grouping.” Journal of Big Data 7.1 (2020): 1-42.
- Attributes:
- best_feature_idxsnp.ndarray
List of feature indices corresponding to the best decomposition.
Methods
optimize
()Solve the feature selection problem through optimization.
pyccea.coevolution.ccga module
- class pyccea.coevolution.ccga.CCGA(data: DataLoader, conf: dict, verbose: bool = True)[source]
Bases:
CCEA
Cooperative Co-Evolutionary Genetic Algorithm.
- Attributes:
- subcomp_sizeslist
Number of features in each subcomponent.
- feature_idxsnp.ndarray
Shuffled list of feature indexes.
Methods
optimize
()Solve the feature selection problem through optimization.
pyccea.coevolution.ccilfg module
- class pyccea.coevolution.ccilfg.CCILFG(data: DataLoader, conf: dict, verbose: bool = True)[source]
Bases:
CCGA
Cooperative Co-Evolutionary Algorithm with Interaction Learning Feature Grouping (CCILFG).
Decomposition strategy proposed on: Hou, Yaqing, et al. “A correlation-guided cooperative coevolutionary method for feature selection via interaction learning-based space division.” Swarm and Evolutionary Computation 93 (2025): 101846.
Methods
optimize
()Solve the feature selection problem through optimization.
pyccea.coevolution.ccpstfg module
- class pyccea.coevolution.ccpstfg.CCPSTFG(data: DataLoader, conf: dict, verbose: bool = True)[source]
Bases:
CCGA
Cooperative Co-Evolutionary Algorithm with Projection-based Self-Tuning Feature Grouping (CCPSTFG).
- Attributes:
- n_componentsint
Number of components to keep after dimensionality reduction.
- methodstr
Projection-based decomposition method. It can be ‘clustering’, ‘elitist’ and ‘distributed’.
- vip_thresholdfloat
All features whose importance is less than or equal to this threshold will be removed.
- removed_featuresnp.ndarray
Indexes of features that were removed due to their low importance.
Methods
optimize
()Solve the feature selection problem through optimization.
- CLUSTERING_METHODS = {'agglomerative_clustering': (<class 'sklearn.cluster._agglomerative.AgglomerativeClustering'>, {'linkage': 'ward', 'metric': 'euclidean'}), 'k_means': (<class 'sklearn.cluster._kmeans.KMeans'>, {})}
pyccea.coevolution.ccsufg module
- class pyccea.coevolution.ccsufg.CCSUFG(data: DataLoader, conf: dict, verbose: bool = True)[source]
Bases:
CCGA
Cooperative Co-Evolutionary Algorithm with Symmetric Uncertainty Feature Grouping (CCSUFG).
Symmetric Uncertainty computation based on: Li, Jundong, et al. “Feature selection: A data perspective.” ACM Computing Surveys (CSUR) 50.6 (2017): 1-45.
Decomposition strategy proposed on: Song, Xian-Fang, et al. “Variable-size cooperative coevolutionary particle swarm optimization for feature selection on high-dimensional data.” IEEE Transactions on Evolutionary Computation 24.5 (2020): 882-895.
Methods
optimize
()Solve the feature selection problem through optimization.