1#![allow(dead_code)]
2#![allow(non_snake_case)]
3#![allow(missing_docs)]
4#![allow(deprecated)]
5#![allow(clippy::all)]
6#![allow(clippy::pedantic)]
7#![allow(clippy::nursery)]
8pub mod automl;
14pub mod base;
15pub mod bayesian;
16pub mod benchmark;
17pub mod comprehensive_benchmark;
20pub mod domain_benchmark;
21pub mod domain_specific;
22pub mod evaluation;
26pub mod filter;
27pub mod fluent_api;
28pub mod group_selection;
31pub mod hierarchical;
32pub mod ml_based;
33pub mod multi_label;
34pub mod optimization;
35pub mod parallel;
36pub mod performance;
37pub mod pipeline;
38pub mod plugin;
39pub mod regularization_selectors;
40#[cfg(feature = "serde")]
41pub mod serialization;
42pub mod spectral;
43pub mod statistical_tests;
44pub mod streaming;
45pub mod type_safe;
48pub use automl::{
53 analyze_and_recommend, comprehensive_automl, quick_automl, AdvancedHyperparameterOptimizer,
54 AutoMLBenchmark, AutoMLError, AutoMLFactory, AutoMLFactoryConfig, AutoMLMethod, AutoMLResults,
55 AutoMLSummary, AutomatedFeatureSelectionPipeline, ComputationalBudget, DataAnalyzer,
56 DataCharacteristics, HyperparameterOptimizer, MethodSelector, PipelineConfig,
57 PipelineOptimizer, PreprocessingIntegration, TargetType, ValidationStrategy,
58};
59pub use base::*;
60pub use benchmark::{
61 BenchmarkConfig, BenchmarkDataset, BenchmarkSuiteResults, BenchmarkableMethod,
62 FeatureSelectionBenchmark, RandomSelectionMethod, UnivariateFilterMethod,
63};
64pub use filter::*;
65
66pub use crate::filter::{
68 CompressedSensingAlgorithm, CompressedSensingSelector, CorrelationThreshold,
69 GenericUnivariateSelect, HighDimensionalInference, ImbalancedDataSelector, ImbalancedStrategy,
70 InferenceMethod, KnockoffSelector, KnockoffType, RReliefF, Relief, ReliefF, SelectFdr,
71 SelectFpr, SelectFwe, SelectKBest, SelectKBestParallel, SelectPercentile,
72 SureIndependenceScreening, VarianceThreshold,
73};
74
75pub use crate::regularization_selectors::{ElasticNetSelector, LassoSelector, RidgeSelector};
107
108pub use crate::domain_specific::{
109 AdvancedNLPFeatureSelector, BioinformaticsFeatureSelector, FinanceFeatureSelector,
110 GraphFeatureSelector, ImageFeatureSelector, MultiModalFeatureSelector, TextFeatureSelector,
111 TimeSeriesSelector,
112};
113
114pub use crate::domain_benchmark::{
115 run_quick_benchmark, BenchmarkConfig as DomainBenchmarkConfig, BenchmarkResult, BenchmarkSuite,
116 BenchmarkSummary, DomainBenchmarkFramework,
117};
118
119pub use crate::ml_based::{
120 AttentionFeatureSelector, MetaLearningFeatureSelector, NeuralFeatureSelector, RLFeatureSelector,
121};
122
123pub use crate::evaluation::{
125 ComparativeAnalysis, FeatureInteractionAnalysis, FeatureSetDiversityMeasures,
126 FeatureSetVisualization, NestedCVResults, NestedCrossValidation, PowerAnalysis,
127 QualityAssessment, RedundancyMeasures, RelevanceScoring, StabilityMeasures, StratifiedKFold,
128};
129
130pub use crate::statistical_tests::{
136 chi2,
137 f_classif,
138 f_oneway,
139 f_regression,
140 kruskal_wallis,
141 mann_whitney_u,
142 mutual_info_classif,
143 mutual_info_regression,
144 r_regression,
146};
147
148pub use crate::multi_label::{
158 AggregateMethod, LabelSpecificSelector, MultiLabelFeatureSelector, MultiLabelStrategy,
159 MultiLabelTarget,
160};
161
162pub use crate::bayesian::{
163 BayesianInferenceMethod, BayesianModelAveraging, BayesianVariableSelector, PriorType,
164};
165
166pub use crate::spectral::{
167 GraphConstructionMethod, KernelFeatureSelector, KernelType, LaplacianScoreSelector,
168 ManifoldFeatureSelector, ManifoldMethod, SpectralFeatureSelector,
169};
170
171pub use crate::optimization::{
172 ADMMFeatureSelector, ConvexFeatureSelector, IntegerProgrammingFeatureSelector,
173 ProximalGradientSelector, SemidefiniteFeatureSelector,
174};
175
176pub use crate::parallel::{
183 ParallelCorrelationComputer, ParallelFeatureEvaluator, ParallelFeatureRanker,
184 ParallelSelectionUtils, ParallelUnivariateRegressionScorer, ParallelUnivariateScorer,
185 ParallelVarianceComputer,
186};
187
188pub use crate::plugin::{
189 ComputationalComplexity, FeatureSelectionPlugin, LoggingMiddleware, MemoryComplexity,
190 PerformanceMetrics, PerformanceMiddleware, PipelineResult, PluginContext, PluginMetadata,
191 PluginPipeline, PluginRegistry, PluginResult, StepResult as PluginStepResult,
192};
193
194pub use crate::pipeline::{
195 BinningStrategy, FeatureSelectionPipeline, OptimizationConfiguration, PipelineConfiguration,
196 PreprocessingStep, SelectionMethod, Trained, Untrained,
197};
198
199pub use crate::type_safe::{data_states, selection_types, FeatureIndex, FeatureMask};
200
201pub use crate::performance::SIMDStats;
202
203pub use crate::fluent_api::{
204 presets, FeatureSelectionBuilder, FluentConfig, FluentSelectionResult, SelectionStep,
205 StepResult,
206};
207
208pub use crate::comprehensive_benchmark::{
209 quick_benchmark, BenchmarkConfiguration, BenchmarkDataset as ComprehensiveBenchmarkDataset,
210 BenchmarkMethod, BenchmarkMetric, ComprehensiveBenchmarkResults, ComprehensiveBenchmarkSuite,
211 DatasetDomain, DatasetMetadata, DetailedMethodResult, MethodCategory, TaskType,
212};
213
214#[cfg(feature = "serde")]
215pub use crate::serialization::{exports, ExportFormat, SelectionResultsIO};
216
217#[allow(non_snake_case)]
218#[cfg(test)]
219mod tests {
220 #[test]
221 fn it_works() {
222 assert_eq!(2 + 2, 4);
223 }
224}
225
226#[allow(non_snake_case)]
227#[cfg(test)]
228mod domain_specific_tests;