epftoolbox icon indicating copy to clipboard operation
epftoolbox copied to clipboard

A keras error will occur when running dnn-related examples

Open zh0ngtian opened this issue 1 year ago • 3 comments

cd examples

python3 optimizing_hyperparameters_dnn.py
Traceback (most recent call last):
  File "/workspace/epftoolbox/examples/optimizing_hyperparameters_dnn.py", line 56, in <module>
    hyperparameter_optimizer(path_datasets_folder=path_datasets_folder, 
  File "/workspace/epftoolbox/epftoolbox/models/_dnn_hyperopt.py", line 320, in hyperparameter_optimizer
    fmin(fmin_objective, space=space, algo=tpe.suggest, max_evals=max_evals, trials=trials, verbose=False)
  File "/workspace/miniconda3/envs/epftoolbox/lib/python3.10/site-packages/hyperopt/fmin.py", line 540, in fmin
    return trials.fmin(
  File "/workspace/miniconda3/envs/epftoolbox/lib/python3.10/site-packages/hyperopt/base.py", line 671, in fmin
    return fmin(
  File "/workspace/miniconda3/envs/epftoolbox/lib/python3.10/site-packages/hyperopt/fmin.py", line 586, in fmin
    rval.exhaust()
  File "/workspace/miniconda3/envs/epftoolbox/lib/python3.10/site-packages/hyperopt/fmin.py", line 364, in exhaust
    self.run(self.max_evals - n_done, block_until_done=self.asynchronous)
  File "/workspace/miniconda3/envs/epftoolbox/lib/python3.10/site-packages/hyperopt/fmin.py", line 300, in run
    self.serial_evaluate()
  File "/workspace/miniconda3/envs/epftoolbox/lib/python3.10/site-packages/hyperopt/fmin.py", line 178, in serial_evaluate
    result = self.domain.evaluate(spec, ctrl)
  File "/workspace/miniconda3/envs/epftoolbox/lib/python3.10/site-packages/hyperopt/base.py", line 892, in evaluate
    rval = self.fn(pyll_rval)
  File "/workspace/epftoolbox/epftoolbox/models/_dnn_hyperopt.py", line 174, in _hyperopt_objective
    forecaster = DNNModel(neurons=neurons, n_features=Xtrain.shape[-1], 
  File "/workspace/epftoolbox/epftoolbox/models/_dnn.py", line 109, in __init__
    self.model = self._build_model()
  File "/workspace/epftoolbox/epftoolbox/models/_dnn.py", line 176, in _build_model
    past_Dense = Dense(neurons, activation=self.activation,
  File "/workspace/miniconda3/envs/epftoolbox/lib/python3.10/site-packages/keras/src/layers/core/dense.py", line 88, in __init__
    super().__init__(activity_regularizer=activity_regularizer, **kwargs)
  File "/workspace/miniconda3/envs/epftoolbox/lib/python3.10/site-packages/keras/src/layers/layer.py", line 264, in __init__
    raise ValueError(
ValueError: Unrecognized keyword arguments passed to Dense: {'batch_input_shape': (None, 25)}
keras==3.1.1
tensorflow==2.16.1

zh0ngtian avatar Apr 10 '24 02:04 zh0ngtian

It seems to be a problem with tensorflow or kera version. Which version should be used?

zh0ngtian avatar Apr 10 '24 02:04 zh0ngtian

I ran into the same problem, downgrading to tensorflow==2.13.0 worked for me.

OscarViken avatar Apr 10 '24 14:04 OscarViken

File "D:\epf-transformers-main\src\benchmark.py", line 6, in <module> from epftoolbox.models import DNN File "D:\conda\envs\epftoolbox\lib\site-packages\epftoolbox\models\__init__.py", line 2, in <module> from ._dnn import (DNNModel, DNN, evaluate_dnn_in_test_dataset, format_best_trial) File "D:\conda\envs\epftoolbox\lib\site-packages\epftoolbox\models\_dnn.py", line 17, in <module> import tensorflow.keras as kr File "D:\conda\envs\epftoolbox\lib\site-packages\tensorflow\__init__.py", line 462, in <module> importlib.import_module("keras.src.optimizers") File "D:\conda\envs\epftoolbox\lib\importlib\__init__.py", line 126, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "D:\conda\envs\epftoolbox\lib\site-packages\keras\__init__.py", line 20, in <module> from keras import distribute File "D:\conda\envs\epftoolbox\lib\site-packages\keras\distribute\__init__.py", line 18, in <module> from keras.distribute import sidecar_evaluator File "D:\conda\envs\epftoolbox\lib\site-packages\keras\distribute\sidecar_evaluator.py", line 22, in <module> from keras.optimizers.optimizer_experimental import ( File "D:\conda\envs\epftoolbox\lib\site-packages\keras\optimizers\__init__.py", line 26, in <module> from keras.optimizers.legacy import adadelta as adadelta_legacy File "D:\conda\envs\epftoolbox\lib\site-packages\keras\optimizers\legacy\adadelta.py", line 17, in <module> from keras.optimizers.optimizer_v2 import adadelta File "D:\conda\envs\epftoolbox\lib\site-packages\keras\optimizers\optimizer_v2\adadelta.py", line 21, in <module> from keras.optimizers.optimizer_v2 import optimizer_v2 File "D:\conda\envs\epftoolbox\lib\site-packages\keras\optimizers\optimizer_v2\optimizer_v2.py", line 103, in <module> @keras_export("keras.optimizers.Optimizer", metaclass=abc.ABCMeta) TypeError: api_export.__init__() got an unexpected keyword argument 'metaclass' I'm getting an error here at Model DNN when I call the author library, how do I correct it?

libin0306 avatar Apr 11 '24 03:04 libin0306