首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Keras错误:搜索过程中使用的所有回调都应该是深度可复制的。

Keras错误:搜索过程中使用的所有回调都应该是深度可复制的。
EN

Stack Overflow用户
提问于 2021-05-03 00:00:14
回答 1查看 449关注 0票数 1

我在将回调应用于Keras超参数优化对象时遇到了困难。下面是我运行的代码:

代码语言:javascript
代码运行次数:0
运行
复制
from keras.callbacks import TensorBoard, EarlyStopping
%load_ext tensorboard

BATCH_SIZE = 32

time_stamp = time.time()
tensorboard = TensorBoard(log_dir = " graphs/{}".format(time_stamp))
checkpoint = ModelCheckpoint(filepath = r"D:\Uni work\...\CNN.hdf5" , monitor = 'val_accuracy', verbose = 1, save_best_only = True )
early_stopping = EarlyStopping( monitor="val_loss" , patience= 3, verbose=2)

tuner = BayesianOptimization(build_model, objective = "val_accuracy", max_trials = 30, num_initial_points=2,  project_name ="audio_classifier")

tuner.search(x = train_X, y=y_cat_encoded, epochs=35, callbacks =  early_stopping, batch_size = BATCH_SIZE, validation_data = (validation_X, y_validation_cat_encoded))

虽然我想应用tensorboard和检查点回调,但它只是通过传递早期停止回调而失败。我得到以下错误:

代码语言:javascript
代码运行次数:0
运行
复制
C:\Anaconda\envs\test\lib\site-packages\kerastuner\engine\tuner.py in _deepcopy_callbacks(self, callbacks)
    277             callbacks = copy.deepcopy(callbacks)
    278         except:
--> 279             raise ValueError(
    280                 'All callbacks used during a search '
    281                 'should be deep-copyable (since they are '

ValueError: All callbacks used during a search should be deep-copyable (since they are reused across trials). It is not possible to do `copy.deepcopy(<tensorflow.python.keras.callbacks.EarlyStopping object at 0x000001802D138100>)

我不熟悉深度可复制这一术语,以及它在错误代码方面的暗示。有没有人熟悉如何解决这个问题?

EN

回答 1

Stack Overflow用户

发布于 2022-05-24 05:47:04

回调应该是一个列表吗?

回调= early_stopping

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67362128

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档