tud*_*r.a 5 python callback tensorflow
> import tensorflow as tf
>
> class MyMetric(tf.keras.callbacks.Callback):
> def on_epoch_end(self,epoch,logs={}):
> # how to access X_train and X_val here
>
> ...
> model.fit(X_train,y_train,batch_size=32,epochs=10,validation_data=(X_val,y_val),shuffle=True,callbacks=[MyMetric()]
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用回调在tensorflow 2.0 中实现自定义指标。在该on_epoch_end
方法中,我需要访问提供给拟合方法的训练和验证数据(整个样本,而不是批次)。有什么办法可以做到这一点吗?谢谢!
小智 7
接受训练和测试数据集作为自定义回调类的初始化参数,然后在 on_epoch_end 方法中使用它。
像这样的东西
class MyMetric(keras.callbacks.Callback):
def __init__(self, X_test):
self.X_test = X_test
Run Code Online (Sandbox Code Playgroud)
在调用 fit 时,将测试集作为参数传递给您的自定义回调,如下所示
model.fit(X_train,y_train,batch_size=32,epochs=10,validation_data=(X_val,y_val),shuffle=True,callbacks=[MyMetric(X_test)]
Run Code Online (Sandbox Code Playgroud)
更多详细信息请参见https://keras.io/guides/writing_your_own_callbacks/
您可以编辑 .fit 函数并传入额外的列表或队列,然后将额外的参数传递到回调函数中...可能是一个队列,然后让另一个线程或函数处理该队列。
我对 Paramiko 库做了类似的修改,效果很好
归档时间: |
|
查看次数: |
2026 次 |
最近记录: |