【问题标题】:Running two tensorflow graphs at a time一次运行两个张量流图
【发布时间】:2015-12-13 01:16:13
【问题描述】:

我已经为略有不同的 OCR 任务训练了 2 个模型,我想在生产系统中同时运行它们。

我有一个类可以启动会话并加载保存的模型。我遇到的问题是 2 个模型保存的变量名称相同,因此当我尝试加载它们时它们会发生冲突。

有没有办法在各自的会话中或在各自的图表上运行它们?

【问题讨论】:

  • 您的问题解决了吗?你有没有尝试过使用两张图?

标签: tensorflow


【解决方案1】:

最简单的选择是在不同的图表中构建两个模型,并为每个图表启动单独的会话。但是,每个会话都拥有自己的设备(CPU 和可能的 GPU),因此每个模型都有单独的线程池,这可能会导致调度行为不理想。要获得良好的性能,必须小心使用 tf.Session 配置选项。

或者,您可以将两个模型组合在同一个图中并使用单个会话。正如您所指出的,两个模型的变量必然具有不同的名称。因此,要完成这项工作,您需要在 construct the tf.Saver 加载模型时提供明确的名称到Variable 的映射。

【讨论】:

  • 如果 OP 负责创建模型,那么在不同的 name_scope 下创建每个模型就足够了吗?它不如在加载时添加显式前缀那么健壮,但它在受控情况下可能工作得很好。
  • 如何准确地组合两个模型?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-08-24
  • 2016-10-05
  • 1970-01-01
  • 1970-01-01
  • 2017-09-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多