automl / Auto-PyTorch

Automatic architecture search and hyperparameter optimization for PyTorch
Apache License 2.0
2.37k stars 287 forks source link

Can't import AutoNetRegression or AutoNetClassification #253

Closed JRichetti closed 2 years ago

JRichetti commented 3 years ago

Hi,

I've just installed autoPyTorch getting this msg in the end: Finished processing dependencies for autoPyTorch==0.1.0 When trying to import AutoNetRegression or AutoNetClassification I get >>> from autoPyTorch import AutoNetClassification Traceback (most recent call last): File "<stdin>", line 1, in <module>ImportError: cannot import name 'AutoNetClassification' from 'autoPyTorch' (/.../Auto-PyTorch/autoPyTorch/__init__.py)

>>> from autoPyTorch import AutoNetRegression
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: cannot import name 'AutoNetRegression' from 'autoPyTorch' (/.../Auto-PyTorch/autoPyTorch/__init__.py)

Although importing autoPyTorch is fine:

>>> import autoPyTorch
>>> autoPyTorch.__version__
'0.1.0'

I've run an ablation study myself and was curious to see how auto-ML would perform in the same dataset. regards,

ravinkohli commented 3 years ago

Hey it seems like you installed the development branch. The development branch has a completely different API. You can find the documentation for the branch here. Specifically to your task, we currently have a PR #235 that fixes common issues with using tabular regression. Also, the current development branch does not support images. So, if your data is images, I suggest you to install the master branch with version (0.0.2)

JRichetti commented 3 years ago

Oh, I missed something then. I wasn't going for development branch. Sorry the silly mistake. I've unistall autoPyTorch and install again. It said: finished processing dependencies for autoPyTorch==0.0.2 But when trying to load, nothing works hahaha.

Python 3.8.8 (default, Feb 24 2021, 21:46:12)
[GCC 7.3.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from autoPyTorch import AutoNetClassification
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/.../Software/envs/mlp/lib/python3.8/site-packages/autoPyTorch-0.0.2-py3.8.egg/autoPyTorch/__init__.py", line 5, in <module>
    from autoPyTorch.core.autonet_classes import AutoNetClassification, AutoNetMultilabel, AutoNetRegression, AutoNetImageClassification, AutoNetImageClassificationMultipleDatasets
  File "/.../Software/envs/mlp/lib/python3.8/site-packages/autoPyTorch-0.0.2-py3.8.egg/autoPyTorch/core/autonet_classes/__init__.py", line 1, in <module>
    from autoPyTorch.core.autonet_classes.autonet_feature_classification import AutoNetClassification
  File "/.../Software/envs/mlp/lib/python3.8/site-packages/autoPyTorch-0.0.2-py3.8.egg/autoPyTorch/core/autonet_classes/autonet_feature_classification.py", line 1, in <module>
    from autoPyTorch.core.autonet_classes.autonet_feature_data import AutoNetFeatureData
  File "/.../Software/envs/mlp/lib/python3.8/site-packages/autoPyTorch-0.0.2-py3.8.egg/autoPyTorch/core/autonet_classes/autonet_feature_data.py", line 6, in <module>
    from autoPyTorch.core.api import AutoNet
  File "/.../Software/envs/mlp/lib/python3.8/site-packages/autoPyTorch-0.0.2-py3.8.egg/autoPyTorch/core/api.py", line 14, in <module>
    from autoPyTorch.pipeline.base.pipeline import Pipeline
  File "/.../Software/envs/mlp/lib/python3.8/site-packages/autoPyTorch-0.0.2-py3.8.egg/autoPyTorch/pipeline/base/pipeline.py", line 2, in <module>
    from autoPyTorch.pipeline.base.pipeline_node import PipelineNode
  File "/.../Software/envs/mlp/lib/python3.8/site-packages/autoPyTorch-0.0.2-py3.8.egg/autoPyTorch/pipeline/base/pipeline_node.py", line 6, in <module>
    import ConfigSpace
  File "/.../Software/envs/mlp/lib/python3.8/site-packages/ConfigSpace/__init__.py", line 37, in <module>
    from ConfigSpace.configuration_space import Configuration, \
ImportError: /.../Software/envs/mlp/lib/python3.8/site-packages/ConfigSpace/configuration_space.cpython-38-x86_64-linux-gnu.so: undefined symbol: _intel_fast_memcpy

Yes, I would like to use this on table regression. No images. Thanks for the help and quick reply.

ravinkohli commented 3 years ago

Could you share the steps you took, so I can reproduce this error? maybe your environment information like conda list and pip freeze? and information about your system?

JRichetti commented 3 years ago

Hi @ravinkohli , thanks for this.

First, I did 'pip unistall autpytorch' then removed the autopytorch forlder. Then:

$ git clone https://github.com/automl/Auto-PyTorch.git
$ cd Auto-PyTorch
$ cat requirements.txt | xargs -n 1 -L 1 pip install
$ python setup.py install

Please see below conda info, conda list and pip freeze.

conda info

     active environment : mlp
    active env location : /.../Software/envs/mlp
            shell level : 2
       user config file : /home/.../.condarc
 populated config files :
          conda version : 4.9.2
    conda-build version : not installed
         python version : 3.9.1.final.0
       virtual packages : __cuda=11.0=0
                          __glibc=2.22=0
                          __unix=0=0
                          __archspec=1=x86_64
       base environment : /.../Software  (read only)
           channel URLs : https://repo.anaconda.com/pkgs/main/linux-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/linux-64
                          https://repo.anaconda.com/pkgs/r/noarch
          package cache : /.../Software/pkgs
                          /home/.conda/pkgs
       envs directories : /home/.../.conda/envs
                          /.../Software/envs
               platform : linux-64
             user-agent : conda/4.9.2 requests/2.25.0 CPython/3.9.1 Linux/4.12.14-95.57-default sles/12.4 glibc/2.22
                UID:GID : 1073031:319125
             netrc file : None
           offline mode : False

conda list

# packages in environment at /Software/envs/mlp:
#
# Name                    Version                   Build  Channel
_libgcc_mutex             0.1                        main
absl-py                   0.12.0                   pypi_0    pypi
argon2-cffi               20.1.0                   pypi_0    pypi
async-generator           1.10                     pypi_0    pypi
attrs                     20.3.0                   pypi_0    pypi
autopytorch               0.0.2                    pypi_0    pypi
backcall                  0.2.0                    pypi_0    pypi
bleach                    3.3.0                    pypi_0    pypi
ca-certificates           2021.1.19            h06a4308_1
cachetools                4.2.2                    pypi_0    pypi
catboost                  0.24.4                   pypi_0    pypi
certifi                   2020.12.5        py38h06a4308_0
cffi                      1.14.5                   pypi_0    pypi
chardet                   4.0.0                    pypi_0    pypi
click                     8.0.1                    pypi_0    pypi
cloudpickle               1.6.0                    pypi_0    pypi
configspace               0.4.17                   pypi_0    pypi
cycler                    0.10.0                   pypi_0    pypi
cython                    0.29.21                  pypi_0    pypi
d2l                       0.16.2                   pypi_0    pypi
dask                      2021.6.0                 pypi_0    pypi
decorator                 4.4.2                    pypi_0    pypi
defusedxml                0.7.1                    pypi_0    pypi
distributed               2021.6.0                 pypi_0    pypi
docutils                  0.17.1                   pypi_0    pypi
entrypoints               0.3                      pypi_0    pypi
fasteners                 0.16                     pypi_0    pypi
flaky                     3.7.0                    pypi_0    pypi
fsspec                    2021.6.0                 pypi_0    pypi
google-auth               1.31.0                   pypi_0    pypi
google-auth-oauthlib      0.4.4                    pypi_0    pypi
grpcio                    1.38.0                   pypi_0    pypi
heapdict                  1.0.1                    pypi_0    pypi
hpbandster                0.7.4                    pypi_0    pypi
idna                      2.10                     pypi_0    pypi
imageio                   2.9.0                    pypi_0    pypi
imbalanced-learn          0.7.0                    pypi_0    pypi
imblearn                  0.0                      pypi_0    pypi
imgaug                    0.4.0                    pypi_0    pypi
ipykernel                 5.5.3                    pypi_0    pypi
ipython                   7.22.0                   pypi_0    pypi
ipython-genutils          0.2.0                    pypi_0    pypi
ipywidgets                7.6.3                    pypi_0    pypi
jedi                      0.18.0                   pypi_0    pypi
jinja2                    2.11.3                   pypi_0    pypi
joblib                    1.0.1                    pypi_0    pypi
jsonschema                3.2.0                    pypi_0    pypi
jupyter                   1.0.0                    pypi_0    pypi
jupyter-client            6.1.12                   pypi_0    pypi
jupyter-console           6.4.0                    pypi_0    pypi
jupyter-core              4.7.1                    pypi_0    pypi
jupyterlab-pygments       0.1.2                    pypi_0    pypi
jupyterlab-widgets        1.0.0                    pypi_0    pypi
kiwisolver                1.3.1                    pypi_0    pypi
lazy-import               0.2.2                    pypi_0    pypi
ld_impl_linux-64          2.33.1               h53a641e_7
liac-arff                 2.5.0                    pypi_0    pypi
libffi                    3.3                  he6710b0_2
libgcc-ng                 9.1.0                hdf63c60_0
libstdcxx-ng              9.1.0                hdf63c60_0
lightgbm                  3.1.1                    pypi_0    pypi
locket                    0.2.1                    pypi_0    pypi
lockfile                  0.12.2                   pypi_0    pypi
markdown                  3.3.4                    pypi_0    pypi
markupsafe                1.1.1                    pypi_0    pypi
matplotlib                3.4.1                    pypi_0    pypi
mistune                   0.8.4                    pypi_0    pypi
msgpack                   1.0.2                    pypi_0    pypi
nbclient                  0.5.3                    pypi_0    pypi
nbconvert                 6.0.7                    pypi_0    pypi
nbformat                  5.1.3                    pypi_0    pypi
ncurses                   6.2                  he6710b0_1
nest-asyncio              1.5.1                    pypi_0    pypi
netifaces                 0.10.9                   pypi_0    pypi
networkx                  2.5.1                    pypi_0    pypi
notebook                  6.3.0                    pypi_0    pypi
numpy                     1.19.5                   pypi_0    pypi
oauthlib                  3.1.1                    pypi_0    pypi
opencv-python             4.5.2.54                 pypi_0    pypi
openml                    0.11.0                   pypi_0    pypi
openssl                   1.1.1k               h27cfd23_0
packaging                 20.9                     pypi_0    pypi
pandas                    1.2.0                    pypi_0    pypi
pandocfilters             1.4.3                    pypi_0    pypi
parso                     0.8.2                    pypi_0    pypi
partd                     1.2.0                    pypi_0    pypi
patsy                     0.5.1                    pypi_0    pypi
pexpect                   4.8.0                    pypi_0    pypi
pickleshare               0.7.5                    pypi_0    pypi
pillow                    8.2.0                    pypi_0    pypi
pip                       21.0.1           py38h06a4308_0
plotly                    4.14.3                   pypi_0    pypi
prometheus-client         0.10.1                   pypi_0    pypi
prompt-toolkit            3.0.18                   pypi_0    pypi
protobuf                  3.17.3                   pypi_0    pypi
psutil                    5.8.0                    pypi_0    pypi
ptyprocess                0.7.0                    pypi_0    pypi
pyasn1                    0.4.8                    pypi_0    pypi
pyasn1-modules            0.2.8                    pypi_0    pypi
pycparser                 2.20                     pypi_0    pypi
pygments                  2.8.1                    pypi_0    pypi
pynisher                  0.6.3                    pypi_0    pypi
pyparsing                 2.4.7                    pypi_0    pypi
pyrfr                     0.8.2                    pypi_0    pypi
pyro4                     4.80                     pypi_0    pypi
pyrsistent                0.17.3                   pypi_0    pypi
python                    3.8.8                hdb3f193_4
python-dateutil           2.8.1                    pypi_0    pypi
python-graphviz           0.16                     pypi_0    pypi
pytz                      2021.1                   pypi_0    pypi
pywavelets                1.1.1                    pypi_0    pypi
pyyaml                    5.4.1                    pypi_0    pypi
pyzmq                     22.0.3                   pypi_0    pypi
qtconsole                 5.0.3                    pypi_0    pypi
qtpy                      1.9.0                    pypi_0    pypi
readline                  8.1                  h27cfd23_0
requests                  2.25.1                   pypi_0    pypi
requests-oauthlib         1.3.0                    pypi_0    pypi
retrying                  1.3.3                    pypi_0    pypi
rsa                       4.7.2                    pypi_0    pypi
scikit-image              0.18.1                   pypi_0    pypi
scikit-learn              0.23.0                   pypi_0    pypi
scipy                     1.6.0                    pypi_0    pypi
send2trash                1.5.0                    pypi_0    pypi
serpent                   1.40                     pypi_0    pypi
setuptools                52.0.0           py38h06a4308_0
shapely                   1.7.1                    pypi_0    pypi
six                       1.15.0                   pypi_0    pypi
sklearn                   0.0                      pypi_0    pypi
smac                      0.13.1                   pypi_0    pypi
sortedcontainers          2.4.0                    pypi_0    pypi
sqlite                    3.35.4               hdfb4753_0
statsmodels               0.12.1                   pypi_0    pypi
tabulate                  0.8.9                    pypi_0    pypi
tblib                     1.7.0                    pypi_0    pypi
tensorboard               2.5.0                    pypi_0    pypi
tensorboard-data-server   0.6.1                    pypi_0    pypi
tensorboard-logger        0.1.0                    pypi_0    pypi
tensorboard-plugin-wit    1.8.0                    pypi_0    pypi
terminado                 0.9.4                    pypi_0    pypi
testpath                  0.4.4                    pypi_0    pypi
threadpoolctl             2.1.0                    pypi_0    pypi
tifffile                  2021.6.6                 pypi_0    pypi
tk                        8.6.10               hbc83047_0
toolz                     0.11.1                   pypi_0    pypi
torch                     1.7.1                    pypi_0    pypi
torchaudio                0.8.1                    pypi_0    pypi
torchvision               0.8.2                    pypi_0    pypi
tornado                   6.1                      pypi_0    pypi
traitlets                 5.0.5                    pypi_0    pypi
typing-extensions         3.7.4.3                  pypi_0    pypi
urllib3                   1.26.4                   pypi_0    pypi
wcwidth                   0.2.5                    pypi_0    pypi
webencodings              0.5.1                    pypi_0    pypi
werkzeug                  2.0.1                    pypi_0    pypi
wheel                     0.36.2                   pypi_0    pypi
widgetsnbextension        3.5.1                    pypi_0    pypi
xmltodict                 0.12.0                   pypi_0    pypi
xz                        5.2.5                h7b6447c_0
zict                      2.0.0                    pypi_0    pypi
zlib                      1.2.11               h7b6447c_3

pip freeze

absl-py==0.12.0
argon2-cffi==20.1.0
async-generator==1.10
attrs==20.3.0
autoPyTorch==0.0.2
backcall==0.2.0
bleach==3.3.0
cachetools==4.2.2
catboost==0.24.4
certifi==2020.12.5
cffi==1.14.5
chardet==4.0.0
click==8.0.1
cloudpickle==1.6.0
ConfigSpace==0.4.17
cycler==0.10.0
Cython==0.29.21
d2l==0.16.2
dask==2021.6.0
decorator==4.4.2
defusedxml==0.7.1
distributed==2021.6.0
docutils==0.17.1
entrypoints==0.3
fasteners==0.16
flaky==3.7.0
fsspec==2021.6.0
google-auth==1.31.0
google-auth-oauthlib==0.4.4
graphviz==0.16
grpcio==1.38.0
HeapDict==1.0.1
hpbandster==0.7.4
idna==2.10
imageio==2.9.0
imbalanced-learn==0.7.0
imblearn==0.0
imgaug==0.4.0
ipykernel==5.5.3
ipython==7.22.0
ipython-genutils==0.2.0
ipywidgets==7.6.3
jedi==0.18.0
Jinja2==2.11.3
joblib==1.0.1
jsonschema==3.2.0
jupyter==1.0.0
jupyter-client==6.1.12
jupyter-console==6.4.0
jupyter-core==4.7.1
jupyterlab-pygments==0.1.2
jupyterlab-widgets==1.0.0
kiwisolver==1.3.1
lazy-import==0.2.2
liac-arff==2.5.0
lightgbm==3.1.1
locket==0.2.1
lockfile==0.12.2
Markdown==3.3.4
MarkupSafe==1.1.1
matplotlib==3.4.1
mistune==0.8.4
msgpack==1.0.2
nbclient==0.5.3
nbconvert==6.0.7
nbformat==5.1.3
nest-asyncio==1.5.1
netifaces==0.10.9
networkx==2.5.1
notebook==6.3.0
numpy==1.19.5
oauthlib==3.1.1
opencv-python==4.5.2.54
openml==0.11.0
packaging==20.9
pandas==1.2.0
pandocfilters==1.4.3
parso==0.8.2
partd==1.2.0
patsy==0.5.1
pexpect==4.8.0
pickleshare==0.7.5
Pillow==8.2.0
plotly==4.14.3
prometheus-client==0.10.1
prompt-toolkit==3.0.18
protobuf==3.17.3
psutil==5.8.0
ptyprocess==0.7.0
pyasn1==0.4.8
pyasn1-modules==0.2.8
pycparser==2.20
Pygments==2.8.1
pynisher==0.6.3
pyparsing==2.4.7
pyrfr==0.8.2
Pyro4==4.80
pyrsistent==0.17.3
python-dateutil==2.8.1
pytz==2021.1
PyWavelets==1.1.1
PyYAML==5.4.1
pyzmq==22.0.3
qtconsole==5.0.3
QtPy==1.9.0
requests==2.25.1
requests-oauthlib==1.3.0
retrying==1.3.3
rsa==4.7.2
scikit-image==0.18.1
scikit-learn==0.23.0
scipy==1.6.0
Send2Trash==1.5.0
serpent==1.40
Shapely==1.7.1
six==1.15.0
sklearn==0.0
smac==0.13.1
sortedcontainers==2.4.0
statsmodels==0.12.1
tabulate==0.8.9
tblib==1.7.0
tensorboard==2.5.0
tensorboard-data-server==0.6.1
tensorboard-logger==0.1.0
tensorboard-plugin-wit==1.8.0
terminado==0.9.4
testpath==0.4.4
threadpoolctl==2.1.0
tifffile==2021.6.6
toolz==0.11.1
torch==1.7.1
torchaudio==0.8.1
torchvision==0.8.2
tornado==6.1
traitlets==5.0.5
typing-extensions==3.7.4.3
urllib3==1.26.4
wcwidth==0.2.5
webencodings==0.5.1
Werkzeug==2.0.1
widgetsnbextension==3.5.1
xmltodict==0.12.0
zict==2.0.0

Thanks for the help!

chrhck commented 3 years ago

any solutions to this issue?

ravinkohli commented 2 years ago

Sorry for the late response, but all our focus has been on releasing v0.1.0. I would suggest using version 0.1.0 for tabular regression (which is now available in the master branch) as we are not going to maintain v0.0.2 anymore and we have already moved the v0.0.2 to the branch master-old.

Specifically for your issue, I tried to reproduce it, however, I was not able to. I followed exactly your steps except I used master-old. I see a discrepancy in your python version as your output for conda info includes the line python version : 3.9.1.final.0 but the shell is using python 3.8.8, here Python 3.8.8 (default, Feb 24 2021, 21:46:12). I would suggest you to use the development branch as even if you manage to resolve this error(maybe by using a fresh conda environment), there is another error that is raised when trying to import AutoNetRegression. We will try to fix it but not as a priority.

I am closing this issue, for now, please reopen it if you urgently need the fix for your existing workflow.

ravinkohli commented 2 years ago

there is another error that is raised when trying to import AutoNetRegression. We will try to fix it but not as a priority.

Actually I have fixed that issue with PR #337

Mr-ZJH commented 2 years ago

Is function autoPyTorch.api.tabular_regression.TabularRegressionTask used instead of function AutoNetRegression in v0.1.1