Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

879 FEDOT features #1075

Merged
merged 56 commits into from
Apr 25, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
56 commits
Select commit Hold shift + click to select a range
3abf557
moved features to concepts
IIaKyJIuH Oct 5, 2022
ca8c6b9
try on adding fedot features
IIaKyJIuH Oct 12, 2022
8371b97
+ automation links trial
IIaKyJIuH Oct 13, 2022
4abf9f6
data nature fix
IIaKyJIuH Oct 13, 2022
18914ce
changed automation page name
IIaKyJIuH Oct 13, 2022
6e39515
+ composing methods page
IIaKyJIuH Oct 13, 2022
06fa5c2
tasks small upd
IIaKyJIuH Oct 21, 2022
05bb1e5
fixed references
IIaKyJIuH Oct 24, 2022
23c7f97
grammar fix
IIaKyJIuH Mar 3, 2023
09198d6
features rearranged
IIaKyJIuH Mar 24, 2023
ca85ecf
+installation template
IIaKyJIuH Mar 24, 2023
3f20cf1
+preprocessing feature stub
IIaKyJIuH Mar 24, 2023
e70ece5
+automation paragraph in FEDOT features
IIaKyJIuH Mar 24, 2023
4c7b643
came up with preprocessing text
IIaKyJIuH Mar 24, 2023
1f4dbbf
+quickstart mention of the cross-platform nature
IIaKyJIuH Mar 24, 2023
9451107
rename composition piece
IIaKyJIuH Mar 27, 2023
3227729
style tasks piece
IIaKyJIuH Mar 27, 2023
be2ce5a
style preprocessing piece
IIaKyJIuH Mar 27, 2023
4e68adb
fix learning.rst references to docs
IIaKyJIuH Mar 27, 2023
3ad6b36
readme name fix
IIaKyJIuH Mar 28, 2023
6fc75ac
rename intro to what_is_fedot
IIaKyJIuH Mar 28, 2023
bad3206
+dimensionality_reduction page
IIaKyJIuH Mar 28, 2023
7a61c17
+datetime comment
IIaKyJIuH Mar 28, 2023
73552cb
small fixes
IIaKyJIuH Mar 28, 2023
e020ce3
extend data_preprocessing page
IIaKyJIuH Mar 28, 2023
b15c08f
rename composing modes to used models and extend
IIaKyJIuH Mar 28, 2023
a0e38a9
minor fixes
IIaKyJIuH Mar 29, 2023
f68bd36
update README features to concepts
IIaKyJIuH Mar 29, 2023
c511f31
rid of outdated readme link to general description
IIaKyJIuH Mar 31, 2023
f5ca6f4
PR fixes (v1)
IIaKyJIuH Apr 4, 2023
24c7f3a
index hotfix
IIaKyJIuH Apr 4, 2023
cf80f12
PR fixes (v2)
IIaKyJIuH Apr 4, 2023
44e8b3a
OS txt specify
IIaKyJIuH Apr 4, 2023
b814542
improved dimensions page
IIaKyJIuH Apr 5, 2023
aeb9d29
rename model building to 'pipeline'
IIaKyJIuH Apr 5, 2023
cc25231
add tasks examples refs
IIaKyJIuH Apr 10, 2023
6a30213
+multimodal notebook-example ref
IIaKyJIuH Apr 10, 2023
3dd2ff1
feature module name hotfix
IIaKyJIuH Apr 10, 2023
232be7e
new evaluation module page proposal
IIaKyJIuH Apr 10, 2023
eddc4bb
split evaluations and transformations
IIaKyJIuH Apr 11, 2023
d71b728
change data nature multi-modal link to basic page
IIaKyJIuH Apr 11, 2023
3bf8378
Improve concepts
IIaKyJIuH Apr 11, 2023
58eee56
fix rst warning docs
IIaKyJIuH Apr 11, 2023
4aa7964
-RTD duplicate in strategies
IIaKyJIuH Apr 11, 2023
971788d
mock h2o&tpot RTD pkgs
IIaKyJIuH Apr 11, 2023
ca32d6b
rename concepts to main_concepts
IIaKyJIuH Apr 11, 2023
d426d1e
+brief preset options descr
IIaKyJIuH Apr 12, 2023
ad82c73
+ending dot
IIaKyJIuH Apr 12, 2023
b117a7d
+pipelines building golem refs
IIaKyJIuH Apr 17, 2023
15111a6
use indefinite articles in optional preproc par
IIaKyJIuH Apr 17, 2023
b400a71
easen features structure
IIaKyJIuH Apr 18, 2023
8e14c13
update refs
IIaKyJIuH Apr 25, 2023
0a6c4e7
unify separate files into one logical
IIaKyJIuH Apr 25, 2023
0c98878
fix refs and add anchors
IIaKyJIuH Apr 25, 2023
6332bc4
rename main and automation features
IIaKyJIuH Apr 25, 2023
0af7f00
downgrade headings level in automation_features
IIaKyJIuH Apr 25, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 9 additions & 18 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -49,23 +49,16 @@ FEDOT предоставляет возможность использовать
:target: http://www.youtube.com/watch?v=RjbuV6i6de4
:alt: Introducing Fedot

Особенности фреймворка
=====================

Основные особенности фреймворка:

- **Гибкость.** FEDOT очень гибкий: его можно использовать для автоматизации поиска решений для различных классов задач, типов данных и моделей;
- **Интеграция с другими библиотеками МО.** FEDOT поддерживает широко используемые библиотеки МО (Scikit-Learn, Can boost, Xgboost и т.д.) и позволяет интегрировать пользовательские библиотеки;
- **Расширяемость для новых видов задач.** Алгоритмы для оптимизации пайплайнов не зависят от вида данных и задач, однако можно использовать специальные шаблоны для определенных классов задач или типов данных (прогнозирование временных рядов, NLP, табличные данные и т.д.) для повышения эффективности;
- **Отсутствие ограничений.** Фреймворк универсальный и не ограничивается конкретными задачами моделирования, например, его можно использовать в ODE или PDE;
- **Поддержка настройки гиперпараметров.** Поддерживаются методы настройки гиперпараметров. Пользовательские методы также могут быть интегрированы в FEDOT;
- **Воспроизводимость.** Можно экспортировать получившиеся паплайны в формате JSON для воспроизводимости эксперимента.

По сравнению с другими фреймворками, FEDOT:
Концепции FEDOT'а
=================

- можно считать универсальным и расширяемым, т.к. у него нет ограничений для видов задач моделирования;
- позволяет управлять сложностью моделей и тем самым достигать лучших результатов;
- позволяет строить пайплайны состоящие из различных моделей, используя различные типы входных данных (тексты, изображения, таблицы и т.д.).
- **Гибкость.** FEDOT может быть использован для автоматизации поиска решений для различных `классов задач <https://fedot.readthedocs.io/en/master/introduction/fedot_features/main_features.html#involved-tasks>`_, `типов данных <https://fedot.readthedocs.io/en/master/introduction/fedot_features/automation_features.html#data-nature>`_ (тексты, изображения, таблицы), и `моделей <https://fedot.readthedocs.io/en/master/advanced/automated_pipelines_design.html>`_;
- **Расширяемость.** Алгоритмы для оптимизации пайплайнов не зависят от вида данных и задач, однако можно использовать `специальные стратегии <https://fedot.readthedocs.io/en/master/api/strategies.html>`_ для определенных классов задач или типов данных (прогнозирование временных рядов, NLP, табличные данные и т.д.) для повышения эффективности;
- **Интегрируемость.** FEDOT поддерживает широко используемые библиотеки МО (Scikit-learn, CatBoost, XGBoost и т.д.) и позволяет интегрировать `пользовательские библиотеки <https://fedot.readthedocs.io/en/master/api/strategies.html#module-fedot.core.operations.evaluation.custom>`_;
- **Тюнингуемость.** Поддерживаются различные методы `настройки гиперпараметров <https://fedot.readthedocs.io/en/master/advanced/hyperparameters_tuning.html>`_, включая пользовательские метрики оценивания и пространства параметров моделей;
- **Универсальность.** FEDOT `не ограничивается конкретными задачами моделирования <https://fedot.readthedocs.io/en/master/advanced/architecture.html>`_, например, его можно использовать в ODE или PDE;
- **Воспроизводимость.** Получаемые паплайны можно `экспортировать в формате JSON отдельно <https://fedot.readthedocs.io/en/master/advanced/pipeline_import_export.html>`_ или `вместе с входными данными в формате архива ZIP <https://fedot.readthedocs.io/en/master/advanced/project_import_export.html>`_, для воспроизведения экспериментов;
- **Кастомизируемость.** FEDOT позволяет `настраивать сложность моделей <https://fedot.readthedocs.io/en/master/introduction/fedot_features/automation_features.html#models-used>`_, тем самым, получать необходимое качество.

Установка
=========
Expand Down Expand Up @@ -200,8 +193,6 @@ Jupyter ноутбуки с примерами находятся в репоз
Документация
============

Общее описание доступно в репозитории `FEDOT.Docs <https://itmo-nss-team.github.io/FEDOT.Miscellaneous>`__.

Подробное описание FEDOT API доступно в разделе `Read the Docs <https://fedot.readthedocs.io/en/latest/>`__.

Как участвовать
Expand Down
25 changes: 8 additions & 17 deletions README_en.rst
Original file line number Diff line number Diff line change
Expand Up @@ -49,23 +49,16 @@ More details about FEDOT are available in the next video:
:target: http://www.youtube.com/watch?v=RjbuV6i6de4
:alt: Introducing Fedot

FEDOT Features
FEDOT concepts
==============

The main features of the framework are as follows:

- **Flexibility.** FEDOT is highly flexible: it can be used to automate the construction of solutions for various problems, data types, and models;
- **Integration with ML libraries.** FEDOT supports widely used ML libraries (Scikit-Learn, Catboost, Xgboost, etc.) and allows you to integrate custom ones;
- **Extensibility for new domains.** Pipeline optimization algorithms are data- and task-independent, yet you can use special templates for a specific task class or data type (time series forecasting, NLP, tabular data, etc.) to increase the efficiency;
- **No limits.** The framework is versatile and is not limited to specific modeling tasks, for example, it can be used in ODE or PDE;
- **Support of hyper-parameter tuning.** Hyper-parameter tuning methods are supported. Custom methods can also be integrated in FEDOT;
- **Reproducibility.** You can export the resulting pipelines in JSON format for experiment reproducibility.

Compared to other frameworks:

- There are no limits to specific modeling tasks, therefore FEDOT claims versatility and expandability;
- Allows managing the complexity of models and thereby achieving better results.
- Allows building pipelines using different types of input data (texts, images, tables, etc.) and consisting of various models.
- **Flexibility.** FEDOT can be used to automate the construction of solutions for various `problems <https://fedot.readthedocs.io/en/master/introduction/fedot_features/main_features.html#involved-tasks>`_, `data types <https://fedot.readthedocs.io/en/master/introduction/fedot_features/automation_features.html#data-nature>`_ (texts, images, tables), and `models <https://fedot.readthedocs.io/en/master/advanced/automated_pipelines_design.html>`_;
- **Extensibility.** Pipeline optimization algorithms are data- and task-independent, yet you can use `special strategies <https://fedot.readthedocs.io/en/master/api/strategies.html>`_ for specific tasks or data types (time-series forecasting, NLP, tabular data, etc.) to increase the efficiency;
- **Integrability.** FEDOT supports widely used ML libraries (Scikit-learn, CatBoost, XGBoost, etc.) and allows you to integrate `custom ones <https://fedot.readthedocs.io/en/master/api/strategies.html#module-fedot.core.operations.evaluation.custom>`_;
- **Tuningability.** Various `hyper-parameters tuning methods <https://fedot.readthedocs.io/en/master/advanced/hyperparameters_tuning.html>`_ are supported including models' custom evaluation metrics and search spaces;
- **Versatility.** FEDOT is `not limited to specific modeling tasks <https://fedot.readthedocs.io/en/master/advanced/architecture.html>`_, for example, it can be used in ODE or PDE;
- **Reproducibility.** Resulting pipelines can be `exported separately as JSON <https://fedot.readthedocs.io/en/master/advanced/pipeline_import_export.html>`_ or `together with your input data as ZIP archive <https://fedot.readthedocs.io/en/master/advanced/project_import_export.html>`_ for experiments reproducibility;
- **Customizability.** FEDOT allows `managing models complexity <https://fedot.readthedocs.io/en/master/introduction/fedot_features/automation_features.html#models-used>`_ and thereby achieving desired quality.

Installation
============
Expand Down Expand Up @@ -201,8 +194,6 @@ Any contribution is welcome. Our R&D team is open for cooperation with other sci
Documentation
=============

The general description is available in the `FEDOT.Docs <https://itmo-nss-team.github.io/FEDOT.Miscellaneous>`__ repository.

Also, a detailed FEDOT API description is available in `Read the Docs <https://fedot.readthedocs.io/en/latest/>`__.

Contribution Guide
Expand Down
3 changes: 2 additions & 1 deletion docs/source/api/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,8 @@ Modules
api
composer
data
eval_strategy
strategies
transformations
node
operation
pipeline
Expand Down
95 changes: 95 additions & 0 deletions docs/source/api/strategies.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
Strategies
----------

Evaluation
^^^^^^^^^^

Interface
"""""""""
.. automodule:: fedot.core.operations.evaluation.evaluation_interfaces
:members:
:no-undoc-members:

Classification
""""""""""""""
.. automodule:: fedot.core.operations.evaluation.classification
:members:
:no-undoc-members:

Regression
""""""""""
.. automodule:: fedot.core.operations.evaluation.regression
:members:
:no-undoc-members:

Time-series
"""""""""""
.. automodule:: fedot.core.operations.evaluation.time_series
:members:
:no-undoc-members:

Clustering
""""""""""
.. automodule:: fedot.core.operations.evaluation.clustering
:members:
:no-undoc-members:

AutoML
""""""
.. automodule:: fedot.core.operations.evaluation.automl
:members:
:undoc-members:

Text
""""
.. automodule:: fedot.core.operations.evaluation.text
:members:
:no-undoc-members:

Custom
""""""
.. automodule:: fedot.core.operations.evaluation.custom
:members:
:no-undoc-members:

GPU Evaluation
^^^^^^^^^^^^^^

Interface
"""""""""
.. automodule:: fedot.core.operations.evaluation.gpu.common
:members:
:no-undoc-members:

CuMLRegressionClassification
""""""""""""""""""""""""""""
.. automodule:: fedot.core.operations.evaluation.gpu.classification
:members:
:no-undoc-members:

CuMLRegressionStrategy
""""""""""""""""""""""
.. automodule:: fedot.core.operations.evaluation.gpu.regression
:members:
:no-undoc-members:

CuMLClusteringStrategy
""""""""""""""""""""""
.. automodule:: fedot.core.operations.evaluation.gpu.clustering
:members:
:no-undoc-members:

Data
^^^^

Data source
"""""""""""
.. automodule:: fedot.core.operations.evaluation.data_source
:members:
:no-undoc-members:

Preprocessing
"""""""""""""
.. automodule:: fedot.core.operations.evaluation.common_preprocessing
:members:
:no-undoc-members:
Original file line number Diff line number Diff line change
@@ -1,23 +1,14 @@
Evaluation Strategy
===================
.. automodule:: fedot.core.operations.evaluation.evaluation_interfaces
:members:
:no-undoc-members:

Preprocessing
-------------
.. automodule:: fedot.core.operations.evaluation.common_preprocessing
:members:
:no-undoc-members:
Transformations
---------------

Sklearn Transformation
----------------------
^^^^^^^^^^^^^^^^^^^^^^
.. automodule:: fedot.core.operations.evaluation.operation_implementations.data_operations.sklearn_transformations
:members:
:no-undoc-members:

Time Series Transformation
--------------------------
^^^^^^^^^^^^^^^^^^^^^^^^^^
.. automodule:: fedot.core.operations.evaluation.operation_implementations.data_operations.ts_transformations
:members:
:no-undoc-members:
2 changes: 0 additions & 2 deletions docs/source/basics/concepts.rst

This file was deleted.

2 changes: 1 addition & 1 deletion docs/source/basics/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ and reproducibility of the experiments.
.. toctree::
:maxdepth: 1

concepts
main_concepts
tabular_data
ts_forecasting
multi_modal_tasks
Expand Down
12 changes: 12 additions & 0 deletions docs/source/basics/main_concepts.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
Main Concepts
=============

The main framework concepts are as follows:

- **Flexibility.** FEDOT can be used to automate the construction of solutions for various `problems <https://fedot.readthedocs.io/en/master/introduction/fedot_features/main_features.html#involved-tasks>`_, `data types <https://fedot.readthedocs.io/en/master/introduction/fedot_features/automation_features.html#data-nature>`_ (texts, images, tables), and :doc:`models </advanced/automated_pipelines_design>`;
- **Extensibility.** Pipeline optimization algorithms are data- and task-independent, yet you can use :doc:`special strategies </api/strategies>` for specific tasks or data types (time-series forecasting, NLP, tabular data, etc.) to increase the efficiency;
- **Integrability.** FEDOT supports widely used ML libraries (Scikit-learn, CatBoost, XGBoost, etc.) and allows you to integrate `custom ones <https://fedot.readthedocs.io/en/master/api/strategies#module-fedot.core.operations.evaluation.custom>`_;
- **Tuningability.** Various :doc:`hyper-parameters tuning methods </advanced/hyperparameters_tuning>` are supported including models' custom evaluation metrics and search spaces;
- **Versatility.** FEDOT is :doc:`not limited to specific modeling tasks </advanced/architecture>`, for example, it can be used in ODE or PDE;
- **Reproducibility.** Resulting pipelines can be :doc:`exported separately as JSON </advanced/pipeline_import_export>` or :doc:`together with your input data as ZIP archive </advanced/project_import_export>` for experiments reproducibility;
- **Customizability.** FEDOT allows `managing models complexity <https://fedot.readthedocs.io/en/master/introduction/fedot_features/automation_features.html#models-used>`_ and thereby achieving desired quality.
2 changes: 1 addition & 1 deletion docs/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@
autoclass_content = 'class'
autodoc_typehints = 'description'
autodoc_typehints_format = 'short'
autodoc_mock_imports = ['objgraph', 'memory_profiler', 'gprof2dot', 'snakeviz']
autodoc_mock_imports = ['objgraph', 'memory_profiler', 'gprof2dot', 'snakeviz', 'h2o', 'tpot']

intersphinx_mapping = {
'golem': ('https://thegolem.readthedocs.io/en/latest/', None),
Expand Down
17 changes: 0 additions & 17 deletions docs/source/introduction/fedot_features.rst

This file was deleted.

Loading