首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Keras获得模型评估的速度

使用Keras获得模型评估的速度
EN

Stack Overflow用户
提问于 2019-07-28 20:43:34
回答 1查看 270关注 0票数 0

我想在验证数据上检索模型的速度指标,以便比较不同的参数及其对速度的影响。例如,每个批次在验证数据上花费的时间。或者,因为我使用hyperopt,所以每次迭代/试验花费的时间,也是在验证数据上花费的时间。

有没有办法使用validation_split>0、predict()或evaluate()的fit()输出或hyperopt中Trials的属性?

如果不是,我想我将不得不在代码中添加时间标志,但这对我来说并不理想。

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2019-07-29 02:17:25

您可以通过在每个评估批次结束时调用的自定义回调中记录批次时间来实现此目的。它看起来像这样:

代码语言:javascript
复制
from keras.callbacks import Callback
import time

class BatchTimeCallback(Callback):
    def on_train_begin(self, logs={}):
        self.batch_times = []

    def on_batch_end(self, batch, logs={}):
        self.batch_times.append(time.time())

batch_time_callback = BatchTimeCallback()

...

model.evaluate(..., callbacks=[batch_time_callback])

print(batch_time_callback.batch_times)

请注意,在最新版本(2.2.4)中不支持的主分支,因此您必须使用分支。

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

https://stackoverflow.com/questions/57241019

复制
相关文章

相似问题

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