gpt4 book ai didi

python - 创建一个每 n 个周期激活一次的 Keras 回调

转载 作者:行者123 更新时间:2023-12-04 13:44:40 24 4
gpt4 key购买 nike

我想在 Keras 中创建自己的回调,但并不真正了解如何去做。

我想要做的是创建一个回调,每个 n (例如 n=10 )epochs 调用一个函数。
根据 Keras 文档 ( https://keras.io/callbacks/ ) 基类 keras.callbacks.Callback有房产params .

此属性是否包括当前纪元?如果是这样,如何使用/调用它?

或者有没有其他好的方法可以每隔 n 调用一个函数时代?

我有一个回调,它的工作原理类似于 keras.callbacks.ModelCheckpoint使用参数时 period=10 .

帮助将不胜感激。谢谢 :)

编辑:
经过相当多的阅读后,我想出了这个,它似乎有效(仍然需要正确测试)

class Test1(callbacks.Callback):
def on_epoch_end(self, epochs, logs={})
if epochs == 10:
print('abc') #a random function

callb = Test1()
model = networks.compute_network(layers=layers, batch_size=batch_size, epochs=epochs, call_list=[callb])
# compute_network in my case loads all the data, trains the network, and then returns it

一个站点特别帮助我更好地理解回调: https://keunwoochoi.wordpress.com/2016/07/16/keras-callbacks/

最佳答案

正如@HMK 所说,on_epoch_beginon_epoch_end方法提供当前纪元。例如,要每 10 个时代应用一个函数,您可以像这样编辑自定义回调:

class myCallback(keras.callbacks.Callback):
def on_epoch_end(self, epoch, logs=None)
if epoch % 10 == 0:
your_func()

关于python - 创建一个每 n 个周期激活一次的 Keras 回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51025269/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com