Package: fedot-ind
CodeCI/CDDocs & ExamplesDownloadsSupportLanguagesFundingFedot.Ind is a automated machine learning framework designed to solve industrial problems related
to time series forecasting, classification, and regression. It is based on
theAutoML framework FEDOTand utilizes its functionality to build and tune pipelines.InstallationFedot.Ind is available on PyPI and can be installed via pip:pipinstallfedot_indTo install the latest version from themain branch:gitclonehttps://github.com/aimclub/Fedot.Industrial.gitcdFEDOT.Industrialpipinstall-rrequirements.txtpytest-stest/How to UseFedot.Ind provides a high-level API that allows you to use its capabilities in a simple way.
The API can be used for classification, regression, and time series forecasting problems, as well as
for anomaly detection.To use the API, follow these steps:ImportFedotIndustrialclassfromfedot_ind.api.mainimportFedotIndustrial2. Initialize the FedotIndustrial object and define the type of modeling task.
It provides a fit/predict interface:FedotIndustrial.fit()begins the feature extraction, optimization and returns the resulting composite pipeline;FedotIndustrial.predict()predicts target values for the given input data using an already fitted pipeline;FedotIndustrial.get_metrics()estimates the quality of predictions using selected metrics.NumPy arrays or Pandas DataFrames can be used as sources of input data.
In the case below,x_train / x_test,y_train / y_testarepandas.DataFrame()andnumpy.ndarrayrespectively:dataset_name='Epilepsy'industrial=FedotIndustrial(problem='classification',metric='f1',timeout=5,n_jobs=2,logging_level=20)train_data,test_data=DataLoader(dataset_name=dataset_name).load_data()model=industrial.fit(train_data)labels=industrial.predict(test_data)probs=industrial.predict_proba(test_data)metrics=industrial.get_metrics(target=test_data[1],rounding_order=3,metric_names=['f1','accuracy','precision','roc_auc'])More information about the API is available in thedocumentationsection.Documentation and examplesThe comprehensive documentation is available onreadthedocs.Useful tutorials and examples can be found in theexamplesfolder.TopicExampleTime series classificationBasic_TSCandAdvanced_TSCTime series regressionBasic_TSR,Advanced_TSR,Multi-TSForecastingSSA exampleAnomaly detectionsoon will be availableModel ensembleNotebookBenchmarkingUnivariate time series classificationBenchmarking was performed on the collection of 112 out of 144 datasets from theUCR archive.AlgorithmTop-1Top-3Top-5Top-HalfFedot_Industrial17.023.026.038HC216.055.077.088FreshPRINCE15.022.032.048InceptionT14.032.054.069Hydra-MR13.048.069.077RDST7.021.050.073RSTSF6.019.035.065WEASEL_D4.020.036.059TS-CHIEF3.011.021.030HIVE-COTE v1.02.09.018.027PF2.09.027.040Multivariate time series classificationBenchmarking was performed on the following datasets:
BasicMotions, Cricket, LSST, FingerMovements, HandMovementDirection, NATOPS, PenDigits, RacketSports, Heartbeat, AtrialFibrillation, SelfRegulationSCP2AlgorithmMean RankHC25.038ROCKET6.481Arsenal7.615Fedot_Industrial7.712DrCIF7.712CIF8.519MUSE8.700HC19.212TDE9.731ResNet10.346mrseql10.625Time series regressionBenchmarking was performed on the following datasets:
HouseholdPowerConsumption1, AppliancesEnergy, HouseholdPowerConsumption2, IEEEPPG, FloodModeling1, BeijingPM25Quality, BenzeneConcentration, FloodModeling3, BeijingPM10Quality, FloodModeling2, AustraliaRainfallAlgorithmMean RankFreshPRINCE6.014DrCIF6.786Fedot_Industrial8.114InceptionT8.957RotF9.414RIST9.786TSF9.929RandF10.286MultiROCKET10.557ResNet11.171SingleInception11.571Real world casesBuilding energy consumptionLink to the dataseton KaggleFull notebook with solutionis hereThe challenge is to develop accurate counterfactual models that estimate energy consumption savings
post-retrofit. Leveraging a dataset comprising three years of hourly meter readings from over a
thousand buildings, the goal is to predict energy consumption (in kWh). Key predictors includeair temperature,dew temperature,wind direction, andwind speed.Results:AlgorithmRMSE_averageFPCR455.941Grid-SVR464.389FPCR-Bs465.8445NN-DTW469.378CNN484.637Fedot.Industrial486.398RDST527.927RandF527.343Permanent magnet synchronous motor (PMSM) rotor temperatureLink to the dataset onKaggleFull notebook with solution ishereThis dataset focuses on predicting the maximum recorded rotor temperature of a permanent magnet synchronous
motor (PMSM) during 30-second intervals. The data, sampled at 2 Hz, includes sensor readings such asambient temperature,coolant temperatures,d and q componentsof voltage, andcurrent.
These readings are aggregated into 6-dimensional time series of length 60, representing 30 seconds.The challenge is to develop a predictive model using the provided predictors to accurately estimate the
maximum rotor temperature, crucial for monitoring the motor’s performance and ensuring optimal operating conditions.Results:AlgorithmRMSE_averageFedot.Industrial1.158612FreshPRINCE1.490442RIST1.501047RotF1.559385DrCIF1.594442TSF1.684828R&D plans– Expansion of anomaly detection model list.– Development of new time series forecasting models.– Implementation of explainability module (Issue)CitationHere we will provide a list of citations for the project as soon as the articles
are published.@article{REVIN2023110483,title={Automated machine learning approach for time series classification pipelines using evolutionary optimisation},journal={Knowledge-Based Systems},pages={110483},year={2023},issn={0950-7051},doi={https://doi.org/10.1016/j.knosys.2023.110483},url={https://www.sciencedirect.com/science/article/pii/S0950705123002332},author={Ilia Revin and Vadim A. Potemkin and Nikita R. Balabanov and Nikolay O. Nikitin
}