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

TypeError: parameter_change_mutation() #1103

Closed
irivo opened this issue May 25, 2023 · 5 comments
Closed

TypeError: parameter_change_mutation() #1103

irivo opened this issue May 25, 2023 · 5 comments
Assignees
Labels
bug Something isn't working

Comments

@irivo
Copy link

irivo commented May 25, 2023

After updating GOLEM to version 0.3.1, FEDOT gives the following error:

Traceback (most recent call last):
  File "...", line 75, in <module>
    main()
  File "..", line 72, in main
    my_fedot()
  File "..", line 63, in my_fedot
    best_pipeline = model.fit(features=X_df, target=y_df)
  File "C:\..\lib\site-packages\fedot\api\main.py", line 206, in fit
    self.api_composer.obtain_model(**self.params.api_params)
  File "C:\..\lib\site-packages\fedot\api\api_utils\api_composer.py", line 82, in obtain_model
    return self.compose_fedot_model(api_params_dict, composer_params_dict, tuner_params_dict)
  File "C:\..\lib\site-packages\fedot\api\api_utils\api_composer.py", line 261, in compose_fedot_model
    best_pipeline, best_pipeline_candidates, gp_composer = self.compose_pipeline(task, train_data,
  File "C:\..\lib\site-packages\fedot\api\api_utils\api_composer.py", line 315, in compose_pipeline
    best_pipelines = gp_composer.compose_pipeline(data=train_data)
  File "C:\..\lib\site-packages\fedot\core\composer\gp_composer\gp_composer.py", line 65, in compose_pipeline
    opt_result = self.optimizer.optimise(objective_function)
  File "C:\..\lib\site-packages\golem\core\optimisers\populational_optimizer.py", line 88, in optimise
    self._initial_population(evaluator)
  File "C:\..\lib\site-packages\golem\core\optimisers\genetic\gp_optimizer.py", line 71, in _initial_population
    self.initial_individuals = self._extend_population(self.initial_individuals)
  File "C:\..\lib\site-packages\golem\core\optimisers\genetic\gp_optimizer.py", line 85, in _extend_population
    new_ind = self.mutation(choice(self.initial_individuals))
  File "C:\..\lib\site-packages\golem\core\optimisers\genetic\operators\mutation.py", line 38, in __call__
    return self._mutation(population)
  File "C:\..\lib\site-packages\golem\core\optimisers\genetic\operators\mutation.py", line 48, in _mutation
    new_graph, mutation_names = self._apply_mutations(new_graph, num_mut)
  File "C:\..\lib\site-packages\golem\core\optimisers\genetic\operators\mutation.py", line 74, in _apply_mutations
    new_graph, applied = self._adapt_and_apply_mutation(new_graph, mutation_type)
  File "C:\..\lib\site-packages\golem\core\optimisers\genetic\operators\mutation.py", line 87, in _adapt_and_apply_mutation
    new_graph = mutation_func(new_graph, requirements=self.requirements,
  File "C:\..\lib\site-packages\golem\core\adapter\adapter.py", line 173, in adapted_fun
    result = fun(*adapted_args, **adapted_kwargs)
TypeError: parameter_change_mutation() missing 2 required positional arguments: 'params' and 'opt_params'

Even such an example:

    model = Fedot(problem='classification') 
#------------------------------------------------------------------------------    
    best_pipeline = model.fit(features=X_df, target=y_df)
@nicl-nno nicl-nno added the bug Something isn't working label May 25, 2023
@gkirgizov gkirgizov self-assigned this May 26, 2023
@gkirgizov
Copy link
Collaborator

Проблема на стороне FEDOT-а -- нужно поменять сигнатуру мутации. Я пофикшу.

@gkirgizov gkirgizov transferred this issue from aimclub/GOLEM May 26, 2023
@gkirgizov
Copy link
Collaborator

Хотя нет, эт давно пофикшено, еще в #1057

Федот точно актуальный?
@irivo

@irivo
Copy link
Author

irivo commented May 26, 2023

Запускаю в терминале win 10. Выполнил установку через pip в новую чистую виртуальную среду. Вот результат:

...\lib\site-packages\statsmodels\genmod\families\links.py:13: FutureWarning: The log link alias is deprecated. Use Log instead. The log link alias will be removed after the 0.15.0 release.
warnings.warn(
...\lib\site-packages\statsmodels\genmod\families\links.py:13: FutureWarning: The identity link alias is deprecated. Use Identity instead. The identity link alias will be removed after the 0.15.0 release.
warnings.warn(
...\lib\site-packages\statsmodels\genmod\families\links.py:13: FutureWarning: The inverse_power link alias is deprecated. Use InversePower instead. The inverse_power link alias will be removed after the 0.15.0 release.
warnings.warn(
...\lib\site-packages\statsmodels\genmod\families\links.py:13: FutureWarning: The inverse_squared link alias is deprecated. Use InverseSquared instead. The inverse_squared link alias will be removed after the 0.15.0 release.
warnings.warn(
2023-05-26 17:01:06,768 - AssumptionsHandler - Memory consumption for fitting of the initial pipeline in main session: current 46.9 MiB, max: 157.1 MiB
2023-05-26 17:01:06,784 - ApiComposer - Initial pipeline was fitted in 11.1 sec.
2023-05-26 17:01:06,784 - AssumptionsHandler - Preset was changed to best_quality due to fit time estimation for initial model.
2023-05-26 17:01:06,799 - ApiComposer - AutoML configured. Parameters tuning: True. Time limit: 5.0 min. Set of candidate models: ['rf', 'qda', 'dt', 'lgbm', 'pca', 'scaling', 'bernb', 'normalization', 'knn', 'mlp', 'fast_ica', 'resample', 'logit', 'isolation_forest_class', 'poly_features', 'rf', 'qda', 'dt', 'lgbm', 'pca', 'scaling', 'bernb', 'normalization', 'knn', 'mlp', 'fast_ica', 'resample', 'logit', 'isolation_forest_class', 'poly_features'].
2023-05-26 17:01:06,799 - ApiComposer - Pipeline composition started.
Generations: 0%| | 1/10000 [00:00<?, ?gen/s]...\lib\site-packages\statsmodels\genmod\families\links.py:13: FutureWarning: The log link alias is deprecated. Use Log instead. The log link alias will be removed after the 0.15.0 release.
warnings.warn(
...\lib\site-packages\statsmodels\genmod\families\links.py:13: FutureWarning: The identity link alias is deprecated. Use Identity instead. The identity link alias will be removed after the 0.15.0 release.
warnings.warn(
...\lib\site-packages\statsmodels\genmod\families\links.py:13: FutureWarning: The inverse_power link alias is deprecated. Use InversePower instead. The inverse_power link alias will be removed after the 0.15.0 release.
warnings.warn(
...\lib\site-packages\statsmodels\genmod\families\links.py:13: FutureWarning: The inverse_squared link alias is deprecated. Use InverseSquared instead. The inverse_squared link alias will be removed after the 0.15.0 release.
warnings.warn(
2023-05-26 17:01:33,369 - MultiprocessingDispatcher - 1 individuals out of 1 in previous population were evaluated successfully.
Generations: 0%| | 1/10000 [00:26<?, ?gen/s]
Traceback (most recent call last):
File "...", line 73, in
main()
File "...", line 70, in main
my_fedot()
File "...", line 61, in my_fedot
best_pipeline = model.fit(features=X_df, target=y_df)
File "...\lib\site-packages\fedot\api\main.py", line 206, in fit
self.api_composer.obtain_model(**self.params.api_params)
File "...\lib\site-packages\fedot\api\api_utils\api_composer.py", line 82, in obtain_model
return self.compose_fedot_model(api_params_dict, composer_params_dict, tuner_params_dict)
File "...\lib\site-packages\fedot\api\api_utils\api_composer.py", line 261, in compose_fedot_model
best_pipeline, best_pipeline_candidates, gp_composer = self.compose_pipeline(task, train_data,
File "...\lib\site-packages\fedot\api\api_utils\api_composer.py", line 315, in compose_pipeline
best_pipelines = gp_composer.compose_pipeline(data=train_data)
File "...\lib\site-packages\fedot\core\composer\gp_composer\gp_composer.py", line 65, in compose_pipeline
opt_result = self.optimizer.optimise(objective_function)
File "...\lib\site-packages\golem\core\optimisers\populational_optimizer.py", line 88, in optimise
self._initial_population(evaluator)
File "...\lib\site-packages\golem\core\optimisers\genetic\gp_optimizer.py", line 71, in _initial_population
self.initial_individuals = self._extend_population(self.initial_individuals)
File "...\lib\site-packages\golem\core\optimisers\genetic\gp_optimizer.py", line 85, in _extend_population
new_ind = self.mutation(choice(self.initial_individuals))
File "...\lib\site-packages\golem\core\optimisers\genetic\operators\mutation.py", line 38, in call
return self._mutation(population)
File "...\lib\site-packages\golem\core\optimisers\genetic\operators\mutation.py", line 48, in _mutation
new_graph, mutation_names = self._apply_mutations(new_graph, num_mut)
File "...\lib\site-packages\golem\core\optimisers\genetic\operators\mutation.py", line 74, in _apply_mutations
new_graph, applied = self._adapt_and_apply_mutation(new_graph, mutation_type)
File "...\lib\site-packages\golem\core\optimisers\genetic\operators\mutation.py", line 87, in _adapt_and_apply_mutation
new_graph = mutation_func(new_graph, requirements=self.requirements,
File "...0\lib\site-packages\golem\core\adapter\adapter.py", line 173, in adapted_fun
result = fun(*adapted_args, **adapted_kwargs)
TypeError: parameter_change_mutation() missing 2 required positional arguments: 'params' and 'opt_params'

packages in environment at FEDOT070:

Name Version Build Channel

alabaster 0.7.12 pyhd3eb1b0_0
anytree 2.8.0 pypi_0 pypi
arrow 1.2.3 py39haa95532_1
astroid 2.14.2 py39haa95532_0
asttokens 2.0.5 pyhd3eb1b0_0
atomicwrites 1.4.0 py_0
attrs 22.1.0 py39haa95532_0
autopep8 1.6.0 pyhd3eb1b0_1
babel 2.11.0 py39haa95532_0
backcall 0.2.0 pyhd3eb1b0_0
bcrypt 3.2.0 py39h2bbff1b_1
beautifulsoup4 4.12.2 py39haa95532_0
binaryornot 0.4.4 pyhd3eb1b0_1
black 23.3.0 py39haa95532_0
bleach 4.1.0 pyhd3eb1b0_0
brotlipy 0.7.0 py39h2bbff1b_1003
ca-certificates 2023.01.10 haa95532_0
catboost 1.2 pypi_0 pypi
certifi 2023.5.7 py39haa95532_0
cffi 1.15.1 py39h2bbff1b_3
chardet 4.0.0 py39haa95532_1003
charset-normalizer 2.0.4 pyhd3eb1b0_0
click 8.0.4 py39haa95532_0
cloudpickle 2.2.1 py39haa95532_0
colorama 0.4.6 py39haa95532_0
comm 0.1.2 py39haa95532_0
contourpy 1.0.7 pypi_0 pypi
cookiecutter 1.7.3 pyhd3eb1b0_0
cryptography 39.0.1 py39h21b164f_0
cycler 0.11.0 pypi_0 pypi
debugpy 1.5.1 py39hd77b12b_0
decorator 5.1.1 pyhd3eb1b0_0
defusedxml 0.7.1 pyhd3eb1b0_0
diff-match-patch 20200713 pyhd3eb1b0_0
dill 0.3.6 py39haa95532_0
docstring-to-markdown 0.11 py39haa95532_0
docutils 0.18.1 py39haa95532_3
entrypoints 0.4 py39haa95532_0
et-xmlfile 1.1.0 pypi_0 pypi
ete3 3.1.3 pypi_0 pypi
exceptiongroup 1.1.1 pypi_0 pypi
executing 0.8.3 pyhd3eb1b0_0
fedot 0.7.0 pypi_0 pypi
flake8 6.0.0 py39haa95532_0
fonttools 4.39.4 pypi_0 pypi
func-timeout 4.3.5 pypi_0 pypi
future 0.18.3 pypi_0 pypi
giflib 5.2.1 h8cc25b3_3
glib 2.69.1 h5dc1a3c_2
gst-plugins-base 1.18.5 h9e645db_0
gstreamer 1.18.5 hd78058f_0
hyperopt 0.2.7 pypi_0 pypi
icu 58.2 ha925a31_3
idna 3.4 py39haa95532_0
imagesize 1.4.1 py39haa95532_0
importlib-metadata 6.0.0 py39haa95532_0
importlib-resources 5.12.0 pypi_0 pypi
importlib_metadata 6.0.0 hd3eb1b0_0
inflection 0.5.1 py39haa95532_0
iniconfig 2.0.0 pypi_0 pypi
intervaltree 3.1.0 pyhd3eb1b0_0
ipykernel 6.19.2 py39hd4e2768_0
ipython 8.12.0 py39haa95532_0
ipython_genutils 0.2.0 pyhd3eb1b0_1
isort 5.9.3 pyhd3eb1b0_0
jaraco.classes 3.2.1 pyhd3eb1b0_0
jedi 0.18.1 py39haa95532_1
jellyfish 0.9.0 py39h2bbff1b_0
jinja2 3.1.2 py39haa95532_0
jinja2-time 0.2.0 pyhd3eb1b0_3
joblib 1.2.0 pypi_0 pypi
jpeg 9e h2bbff1b_1
jsonpickle 3.0.1 pypi_0 pypi
jsonschema 4.17.3 py39haa95532_0
jupyter_client 8.1.0 py39haa95532_0
jupyter_core 5.3.0 py39haa95532_0
jupyterlab_pygments 0.1.2 py_0
keyring 23.13.1 py39haa95532_0
kiwisolver 1.4.4 pypi_0 pypi
krb5 1.19.4 h5b6d351_0
lazy-object-proxy 1.6.0 py39h2bbff1b_0
lerc 3.0 hd77b12b_0
libclang 14.0.6 default_hb5a9fac_1
libclang13 14.0.6 default_h8e68704_1
libdeflate 1.17 h2bbff1b_0
libffi 3.4.4 hd77b12b_0
libiconv 1.16 h2bbff1b_2
libogg 1.3.5 h2bbff1b_1
libpng 1.6.39 h8cc25b3_0
libsodium 1.0.18 h62dcd97_0
libspatialindex 1.9.3 h6c2663c_0
libtiff 4.5.0 h6c2663c_2
libvorbis 1.3.7 he774522_0
libwebp 1.2.4 hbc33d0d_1
libwebp-base 1.2.4 h2bbff1b_1
libxml2 2.10.3 h0ad7f3c_0
libxslt 1.1.37 h2bbff1b_0
lightgbm 3.3.5 pypi_0 pypi
lxml 4.9.2 py39h2bbff1b_0
lz4-c 1.9.4 h2bbff1b_0
markupsafe 2.1.1 py39h2bbff1b_0
matplotlib 3.7.1 pypi_0 pypi
matplotlib-inline 0.1.6 py39haa95532_0
mccabe 0.7.0 pyhd3eb1b0_0
mistune 0.8.4 py39h2bbff1b_1000
more-itertools 8.12.0 pyhd3eb1b0_0
multiprocess 0.70.14 pypi_0 pypi
mypy_extensions 0.4.3 py39haa95532_1
nbclient 0.5.13 py39haa95532_0
nbconvert 6.5.4 py39haa95532_0
nbformat 5.7.0 py39haa95532_0
nest-asyncio 1.5.6 py39haa95532_0
networkx 3.1 pypi_0 pypi
numpy 1.24.3 pypi_0 pypi
numpydoc 1.5.0 py39haa95532_0
openpyxl 3.1.2 pypi_0 pypi
openssl 1.1.1t h2bbff1b_0
packaging 23.0 py39haa95532_0
pandas 2.0.1 pypi_0 pypi
pandocfilters 1.5.0 pyhd3eb1b0_0
paramiko 2.8.1 pyhd3eb1b0_0
parso 0.8.3 pyhd3eb1b0_0
pathspec 0.10.3 py39haa95532_0
patsy 0.5.3 pypi_0 pypi
pcre 8.45 hd77b12b_0
pexpect 4.8.0 pyhd3eb1b0_3
pickleshare 0.7.5 pyhd3eb1b0_1003
pillow 9.5.0 pypi_0 pypi
pip 23.0.1 py39haa95532_0
platformdirs 2.5.2 py39haa95532_0
plotly 5.14.1 pypi_0 pypi
pluggy 1.0.0 py39haa95532_1
ply 3.11 py39haa95532_0
poyo 0.5.0 pyhd3eb1b0_0
prompt-toolkit 3.0.36 py39haa95532_0
psutil 5.9.5 pypi_0 pypi
ptyprocess 0.7.0 pyhd3eb1b0_2
pure_eval 0.2.2 pyhd3eb1b0_0
py4j 0.10.9.7 pypi_0 pypi
pyaml 23.5.9 pypi_0 pypi
pycodestyle 2.10.0 py39haa95532_0
pycparser 2.21 pyhd3eb1b0_0
pydocstyle 6.3.0 py39haa95532_0
pyflakes 3.0.1 py39haa95532_0
pygments 2.15.1 py39haa95532_1
pylint 2.16.2 py39haa95532_0
pylint-venv 2.3.0 py39haa95532_0
pyls-spyder 0.4.0 pyhd3eb1b0_0
pynacl 1.5.0 py39h8cc25b3_0
pyopenssl 23.0.0 py39haa95532_0
pyparsing 3.0.9 pypi_0 pypi
pyqt 5.15.7 py39hd77b12b_0
pyqt5-sip 12.11.0 py39hd77b12b_0
pyqtwebengine 5.15.7 py39hd77b12b_0
pyrsistent 0.18.0 py39h196d8e1_0
pysocks 1.7.1 py39haa95532_0
pytest 7.3.1 pypi_0 pypi
python 3.9.16 h6244533_2
python-dateutil 2.8.2 pyhd3eb1b0_0
python-fastjsonschema 2.16.2 py39haa95532_0
python-graphviz 0.20.1 pypi_0 pypi
python-lsp-black 1.2.1 py39haa95532_0
python-lsp-jsonrpc 1.0.0 pyhd3eb1b0_0
python-lsp-server 1.7.2 py39haa95532_0
python-slugify 5.0.2 pyhd3eb1b0_0
pytoolconfig 1.2.5 py39haa95532_1
pytz 2022.7 py39haa95532_0
pyvis 0.2.1 pypi_0 pypi
pywin32 305 py39h2bbff1b_0
pywin32-ctypes 0.2.0 py39haa95532_1000
pyyaml 6.0 py39h2bbff1b_1
pyzmq 25.0.2 py39hd77b12b_0
qdarkstyle 3.0.2 pyhd3eb1b0_0
qstylizer 0.2.2 py39haa95532_0
qt-main 5.15.2 he8e5bd7_8
qt-webengine 5.15.9 hb9a9bb5_5
qtawesome 1.2.2 py39haa95532_0
qtconsole 5.4.2 py39haa95532_0
qtpy 2.2.0 py39haa95532_0
qtwebkit 5.212 h2bbfb41_5
requests 2.29.0 py39haa95532_0
rope 1.7.0 py39haa95532_0
rtree 1.0.1 py39h2eaa2aa_0
salib 1.4.7 pypi_0 pypi
scikit-learn 1.2.2 pypi_0 pypi
scikit-optimize 0.9.0 pypi_0 pypi
scipy 1.10.1 pypi_0 pypi
seaborn 0.12.2 pypi_0 pypi
setuptools 66.0.0 py39haa95532_0
sip 6.6.2 py39hd77b12b_0
six 1.16.0 pyhd3eb1b0_1
snowballstemmer 2.2.0 pyhd3eb1b0_0
sortedcontainers 2.4.0 pyhd3eb1b0_0
soupsieve 2.4 py39haa95532_0
sphinx 5.0.2 py39haa95532_0
sphinxcontrib-applehelp 1.0.2 pyhd3eb1b0_0
sphinxcontrib-devhelp 1.0.2 pyhd3eb1b0_0
sphinxcontrib-htmlhelp 2.0.0 pyhd3eb1b0_0
sphinxcontrib-jsmath 1.0.1 pyhd3eb1b0_0
sphinxcontrib-qthelp 1.0.3 pyhd3eb1b0_0
sphinxcontrib-serializinghtml 1.1.5 pyhd3eb1b0_0
spyder 5.4.3 py39haa95532_1
spyder-kernels 2.4.3 py39haa95532_0
sqlite 3.41.2 h2bbff1b_0
stack_data 0.2.0 pyhd3eb1b0_0
statsmodels 0.14.0 pypi_0 pypi
tenacity 8.2.2 pypi_0 pypi
testfixtures 7.1.0 pypi_0 pypi
text-unidecode 1.3 pyhd3eb1b0_0
textdistance 4.2.1 pyhd3eb1b0_0
thegolem 0.3.1 pypi_0 pypi
threadpoolctl 3.1.0 pypi_0 pypi
three-merge 0.1.1 pyhd3eb1b0_0
tinycss2 1.2.1 py39haa95532_0
toml 0.10.2 pyhd3eb1b0_0
tomli 2.0.1 py39haa95532_0
tomlkit 0.11.1 py39haa95532_0
tornado 6.2 py39h2bbff1b_0
tqdm 4.65.0 pypi_0 pypi
traitlets 5.7.1 py39haa95532_0
typing 3.7.4.3 pypi_0 pypi
typing-extensions 4.5.0 py39haa95532_0
typing_extensions 4.5.0 py39haa95532_0
tzdata 2023.3 pypi_0 pypi
ujson 5.4.0 py39hd77b12b_0
unidecode 1.2.0 pyhd3eb1b0_0
urllib3 1.26.15 py39haa95532_0
vc 14.2 h21ff451_1
vs2015_runtime 14.27.29016 h5e58377_2
watchdog 2.1.6 py39haa95532_0
wcwidth 0.2.5 pyhd3eb1b0_0
webencodings 0.5.1 py39haa95532_1
whatthepatch 1.0.2 py39haa95532_0
wheel 0.38.4 py39haa95532_0
win_inet_pton 1.1.0 py39haa95532_0
wrapt 1.14.1 py39h2bbff1b_0
xgboost 1.7.5 pypi_0 pypi
xz 5.4.2 h8cc25b3_0
yaml 0.2.5 he774522_0
yapf 0.31.0 pyhd3eb1b0_0
zeromq 4.3.4 hd77b12b_0
zipp 3.11.0 py39haa95532_0
zlib 1.2.13 h8cc25b3_0
zss 1.2.0 pypi_0 pypi
zstd 1.5.5 hd43e919_0

@gkirgizov
Copy link
Collaborator

gkirgizov commented May 29, 2023

Ах, понял, кажется. Версия федота в pip устарела. Выпущу новый мини-релиз 071.
Думал, проблема на мастере.
Очень хорошо, что заметил.
В общем, интеграционки в CI должны падать от этого.

@irivo
Copy link
Author

irivo commented Jun 5, 2023

Все в порядке. После выполнения в среде pip install --upgrade --force-reinstall git+https://github.com/aimclub/FEDOT.git и установки fedot-0.7.1 все работает

@irivo irivo closed this as completed Jun 5, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants