如何在Keras中更改预先训练模型的默认下载目录?

时间:2018-03-01 17:13:31

标签: pip keras virtualenv

根据documentation,它表示所有Keras文件的默认下载目录为$HOME/.keras。我正在使用虚拟环境,我想将预先训练的模型的默认下载目录更改为其他目录。也许这与virtualenv有关,而不是与Keras有关?

3 个答案:

答案 0 :(得分:2)

根据文件

  

签名:ResNet50(include_top = True,权重=' imagenet',   input_tensor = None,input_shape = None,pooling = None,classes = 1000)

没有参数可以指定下载预训练模型权重的位置。

(1)您可以使用mvhttps://www.macworld.com/article/2080814/master-the-command-line-copying-and-moving-files.html)将文件从终端下载后移动到您希望的位置。

更新:我去检查了Keras的github回购(https://github.com/keras-team/keras/blob/master/keras/applications/resnet50.py)并找到了权重的链接。对于resnet:

WEIGHTS_PATH = 'https://github.com/fchollet/deep-learning-models/releases/download/v0.2/resnet50_weights_tf_dim_ordering_tf_kernels.h5'
WEIGHTS_PATH_NO_TOP = 'https://github.com/fchollet/deep-learning-models/releases/download/v0.2/resnet50_weights_tf_dim_ordering_tf_kernels_notop.h5'

您可以使用任何方法(即urllib)将这些权重直接下载到您的文件系统。

答案 1 :(得分:1)

如果使用的是keras的master分支,则可以set the KERAS_HOME environment variable设置缓存目录。如果未设置,则缓存目录默认为/** * Serialize into a plain JSON object */ toJSON(): Object; /** * Convert to a plain object as DTO */ toObject(options?: Options): Object;

$HOME/.keras

在每次打开新终端时,将行添加到“ .bashrc”中以设置变量。

此功能尚未发布,必须使用master分支才能使用此功能。

答案 2 :(得分:0)

您可以将通过其他方式下载的模型文件* .h5复制到Keras默认模型目录~/keras/models中。