【问题标题】:Save model.summary() as pdf将 model.summary() 保存为 pdf
【发布时间】:2021-03-16 18:28:10
【问题描述】:

我正在尝试将我的 model.summary() 打印为 pdf。

我尝试按照此处提出的问题进行操作:How to save model.summary() to file in Keras?

def myprint(s):
    with open('/content/drive/My Drive/xxx/yyy/zzz.pdf','w') as f:
        print(s, file=f)

model.summary(print_fn=myprint)

但是文件不可读。

谁能给我一个简单的工作解决方案?提前致谢。

【问题讨论】:

  • 不,您采取了完全错误的方法,这不是您制作 PDF 的方式。如果你想包含在 Latex 中,使用 verbatim 环境会容易得多,因为摘要只是文本。
  • 逐字环境只会打印代码,我不想打印代码 我想将摘要打印为表格,这样它的格式就很好,这样我也可以在演示文稿等。
  • 如果您以某种方式转换为 PDF,这些都不会自动发生,正如我所说,您的概念有误
  • 请注意,任何漂亮的格式都需要自己完成,您可以将摘要重写为乳胶表,但这需要手动完成。 Keras 还具有一些打印网络图的功能,这可能是您实际需要在科学论文中呈现的内容。
  • 我不想展示图表,它太长而且不清楚。执行 model.summary() 时打印的表格很完美,但我不想每次都截图。您是说除了 .txt 之外没有其他方法可以将此表转换为其他任何内容?

标签: python tensorflow pdf keras


【解决方案1】:

您需要将摘要保存为 PDF 吗?如果是这样,您需要使用 fpdfPyPDF2 之类的包装库来生成所需的 PDF 元数据,以便正确格式化文件。

否则,您可以使用您的方法写入.txt 文件:

def myprint(s):
    with open('/content/drive/My Drive/xxx/yyy/zzz.txt','w') as f:
        print(s, file=f)

model.summary(print_fn=myprint)

【讨论】:

  • 是的,理想情况下我想将其保存为 pdf,以便我可以将其直接导入 LaTeX
  • 你能给我一个关于如何使用你提到的一个 pdf 包的 MWE 吗?
【解决方案2】:

我用这个

with open('modelsummary.pdf', 'w') as f:

    model.summary(print_fn=lambda x: f.write(x + '\n'))

【讨论】:

  • 这仍然不适合我,我正在使用 google colab 并且当我在浏览器中从驱动器中预览文件时,我在页面的一角得到一个苍白的版本但是当我尝试要正确打开或下载它,我收到一条错误消息,指出文件可能已损坏...
猜你喜欢
  • 2017-12-25
  • 2018-08-22
  • 2015-08-11
  • 2017-01-14
  • 2011-04-08
  • 2015-08-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多