Я следовал учебному пособию, в котором я загружал модель, чтобы изменить последний слой активации, а затем применил эти изменения к предыдущей модели (сохранение новой модели?). Мой вопрос заключается в том, нужно ли мне изменять путь к файлу модуля (если так, как мне это сделать из импортированного модуля) или я должен убедиться, что установлена переменная среды? или что-то еще?
from keras.applications import VGG16
model = VGG16(weights='imagenet', include_top=True)
layers_info = {}
for i in model.layers:
layers_info[i.name] = i.get_config()
layer_weights = {}
for i in model.layers:
layer_weights[i.name] = i.get_weights()
#importing the required modules
from vis.visualization import visualize_activation
from vis.utils import utils
from keras import activations
from keras import applications
import matplotlib.pyplot as plt
%matplotlib inline
plt.rcParams['figure.figsize'] = (18,6)
layer_idx = utils.find_layer_idx(model,'predictions')
#changing the activation of the layer to linear
model.layers[layer_idx].activation = activations.linear
#applying modifications to the model
model = utils.apply_modifications(model)
Error
OSError Traceback (most recent call last)
~\Anaconda3\lib\site-packages\vis\utils\utils.py in apply_modifications(model)
122 try:
--> 123 model.save(model_path)
124 return load_model(model_path)
~\Anaconda3\lib\site-packages\keras\engine\network.py in save(self, filepath, overwrite, include_optimizer)
1084 from ..models import save_model
-> 1085 save_model(self, filepath, overwrite, include_optimizer)
1086
~\Anaconda3\lib\site-packages\keras\engine\saving.py in save_model(model, filepath, overwrite, include_optimizer)
104
--> 105 f = h5py.File(filepath, mode='w')
106 opened_new_file = True
~\Anaconda3\lib\site-packages\h5py\_hl\files.py in __init__(self, name, mode, driver, libver, userblock_size, swmr, **kwds)
268 fapl = make_fapl(driver, libver, **kwds)
--> 269 fid = make_fid(name, mode, userblock_size, fapl, swmr=swmr)
270
~\Anaconda3\lib\site-packages\h5py\_hl\files.py in make_fid(name, mode, userblock_size, fapl, fcpl, swmr)
104 elif mode == 'w':
--> 105 fid = h5f.create(name, h5f.ACC_TRUNC, fapl=fapl, fcpl=fcpl)
106 elif mode == 'a':
h5py\_objects.pyx in h5py._objects.with_phil.wrapper()
h5py\_objects.pyx in h5py._objects.with_phil.wrapper()
h5py\h5f.pyx in h5py.h5f.create()
OSError: Unable to create file (unable to open file: name = '/tmp/w9mydjzc.h5', errno = 2, error message = 'No such file or directory', flags = 13, o_flags = 302)
During handling of the above exception, another exception occurred:
FileNotFoundError Traceback (most recent call last)
<ipython-input-12-a64a2adb4a8c> in <module>()
5
6 #applying modifications to the model
----> 7 model = utils.apply_modifications(model)
~\Anaconda3\lib\site-packages\vis\utils\utils.py in apply_modifications(model)
124 return load_model(model_path)
125 finally:
--> 126 os.remove(model_path)
127
128
FileNotFoundError: [WinError 3] The system cannot find the path specified: '/tmp/w9mydjzc.h5'