深度学习模型,下载部署efficientnet.h5

深度学习模型,下载部署efficientnet.h5

在调用与efficientnet相关的深度学习模型的时候,keras会自动下载网络模型h5文件。如果没有配置好URL就会报类似如下的错误:

Downloading data from https://storage.googleapis.com/keras-applications/efficientnet.h5
Exception: URL fetch failure on https://storage.googleapis.com/keras-applications/efficientnetb3_notop.h5: None -- [Errno -2] Name or service not known

这时两种选择,一种是配好URL,另一种是直接替keras下载h5文件。有些企业内部服务器是不允许访问公网,所以这里我们推荐使用第二种方式,即先下载好keras的h5文件。

我们在可以访问公网的机器上部署程序时发现程序会自动下载keras的h5文件并默认存储为~/.keras/models/efficientnetb3_notop.h5

这样一来,我们将本地的~/.keras 目录拷贝到最终部署程序的服务器上,程序检测到本地已有的keras配置后就可以绕过efficientnet.h5文件的下载。建议将~/.keras 目录拷贝定义在Docker基础镜像文件中。

注意一定要完整复制~/.keras 目录而不是仅efficientnet.h5文件,否则仍会下载efficientnet.h5文件且会因为~/.keras 目录非空报错。