【问题标题】:Save keras model to database将 keras 模型保存到数据库
【发布时间】:2018-05-04 11:46:58
【问题描述】:

我创建了一个 keras 模型 (tensorflow),并希望将其存储在我的 MS SQL Server 数据库中。最好的方法是什么? pyodbc.Binary(model) 引发错误。我更喜欢一种不先将模型存储在文件系统中的方法。

感谢您的帮助

【问题讨论】:

  • 问题解决了吗?

标签: sql-server database python-3.x tensorflow keras


【解决方案1】:

似乎没有直接存储模型的干净解决方案,包括。权重进入数据库。我决定将模型作为 h5 文件存储在文件系统中,然后从那里上传到数据库中作为备份。对于预测,无论如何我都会从文件系统加载模型,因为它比从数据库中获取每个预测的模型要快得多。

【讨论】:

    【解决方案2】:

    最好的方法是将它作为文件保存在系统中,并将路径保存在数据库中。这种技术通常用于存储像图像这样的大文件,因为数据库通常会处理它们。

    【讨论】:

      【解决方案3】:

      好吧,您可以将模型保存为 JSON,如下所示:

      json_string = model.to_json()
      

      然后将其转换为字符串并正常保存到BD。

      或者对 JSON 字段使用原生 MS SQL 解决方案,解释 here

      【讨论】:

      • 据我所知,to_json() 不包括模型的权重,只包括架构。我需要可用于预测的整个模型。因此,我不敢相信没有简单的解决方案。
      • 不幸的是它没有保存权重,但是虽然我总是将它们保存到 h5 文件中,但这个解决方案在你的情况下看起来不错link
      猜你喜欢
      • 1970-01-01
      • 2019-10-03
      • 1970-01-01
      • 1970-01-01
      • 2016-07-07
      • 1970-01-01
      • 2020-07-11
      • 1970-01-01
      • 2016-10-30
      相关资源
      最近更新 更多