“INFO:tensorflow:Oracle triggered exit” 在 Keras Tuner 中是什么意思?

8
当我运行Keras Tuner搜索时,代码运行了一些epochs然后显示'INFO:tensorflow:Oracle triggered exit'。这是什么意思?我仍然能够提取最佳超参数。这是由于早期停止吗?我已经尝试过随机搜索和hyperband。
10个回答

7

你可以用以下方法解决:

tuner = RandomSearch(
    tune_rnn_model,
    objective='val_accuracy',
    seed=SEED, 
    overwrite=True,
    max_trials=MAX_TRIALS,
    directory='project')

要开始新的搜索并忽略之前的结果,我们设置 overwrite=True。或者,您可以使用以下代码删除目录文件夹:

!rm -r <directory folder>

4

可能的原因是目录已经创建。

尝试按照以下步骤进行:

  1. 更改目录名称。
  2. 重新启动内核。
  3. 重新运行所有代码。

欢迎来到SO!不幸的是,您的答案没有为最受欢迎的答案增添任何内容。请编辑并提供额外的信息和/或代码示例。 - nico9T

1

我通过在我的调谐器中设置以下两个条件来解决此问题:

  • overwrite = False
  • 使用比我之前使用的max_trials值更大的Oracle值,直到出现错误“Oracle触发退出”(我正在使用kerastuner.oracles.BayesianOptimization Oracle)

1
我找到了同样的问题,也发现了一个非常简单的解决方案。如果您只删除由Keras Tuner生成的目录中的两个文件 oracle.json 和其他 .json 文件,并再次运行它,那么问题就能很轻松地解决。

1
请在定义调试器的位置添加directory参数,如果您已经添加了directory参数,请尝试更改该参数的值。请注意下面RandomSearch调试器示例中的最后一行。
tuner = RandomSearch(
    tune_rnn_model,
    objective='val_accuracy',
    seed=SEED,
    max_trials=MAX_TRIALS,
    directory='**change-this-value**',
)

1
尝试更改了,但仍然是同样的消息,不幸的是。 - endorphinus
1
这对我解决了问题。由于某种原因,每次我想运行随机搜索时,我需要删除它创建的目录文件夹。 - Chris Macaluso

0

我遇到了这个问题,因为我给两个超参数取了相同的名称。

例如,在 build_model(hp) 函数中,我有:

def build_model(hp):
   ...
   a = hp.Choice('embedding_dim', [32, 64])
   b = hp.Choice('embedding_dim', [128, 256])
   ...

最后一点要注意的是,在进行试验时,必须小心地选择更多的超参数组合。在我编写的build_model函数示例中,有4种可能的超参数组合(2*2),因此max_trials<=4。
希望这能对某些人有所帮助。

0

我曾经有同样的问题,但没有找到我想要的答案。

如果调谐器在试验中完成,低于您的max_trial参数,最可能的原因是调谐器已经尝试了您之前设置的超参数领域的所有可能组合。

例如:我有2个参数供调谐器尝试,第一个可以获得8个值,第二个可以获得18个值。如果将这两个数字相乘,就会得到144个组合,这正好是调谐器停止的试验次数。


0
对我来说,解决了这个问题,是将“hp = Hyperparameters()”语句移出build_model函数。我的意思是,在build model函数之外初始化hp变量。

0

我在Hyperband搜索中遇到了同样的问题。

对我来说,问题是通过从调谐器搜索中删除“提前停止”回调来解决的。


0

我认为这是因为你正在处理一个小数据集,导致在执行随机搜索时发生了大量的碰撞。

请尝试减少随机搜索中的“max-trials”数量,这可能会解决问题。


最大尝试次数设置为1,数据集具有28个特征,包括20000个训练实例和6000个验证实例。当我运行Hyperband搜索时,它会在一段时间后才收到消息,但是当我运行随机搜索时,我立即收到消息。 - endorphinus

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接