Невозможно сохранить файл модели тензорного потока в HDFS - PullRequest
0 голосов
/ 25 апреля 2019

Я создал всю среду, необходимую для среды адвокатуры tenorflow https://github.com/tensorflow/examples/blob/master/community/en/docs/deploy/hadoop.md как показано в ссылке на моем искровом кластере

Я взял пример кода для обучения модели и сохранения модели h5py в HDFS и хочу перезагрузить модель.

Ниже приведен пример кода, который я использую

from keras.models import Sequential
from keras.models import load_model
import numpy
import os

seed = 7
numpy.random.seed(seed)

dataset = numpy.loadtxt("pima-indians-diabetes.csv", delimiter=",")

X = dataset[:,0:8]
Y = dataset[:,8]

model = Sequential()
model.add(Dense(12, input_dim=8, kernel_initializer='uniform', activation='relu'))
model.add(Dense(8, kernel_initializer='uniform', activation='relu'))
model.add(Dense(1, kernel_initializer='uniform', activation='sigmoid'))

model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])

model.fit(X, Y, epochs=150, batch_size=10, verbose=0)

Теперь я пытаюсь сохранить модель в своем локальном каталоге, где я могу сохранить и восстановить модель.

model.save("temp_model.h5") #### <----- it saved the model to local directory of my machine

del model

model = load_model("temp_model.h5") ##### <----- loaded the model file

Когда я пытаюсь сохранить его в HDFS

model.save("hdfs://default/tmp/mss/temp_model.h5")



Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib64/python2.7/site-packages/keras/engine/network.py", line 1090, in save
    save_model(self, filepath, overwrite, include_optimizer)
  File "/usr/lib64/python2.7/site-packages/keras/engine/saving.py", line 379, in save_model
    f = h5dict(filepath, mode='w')
  File "/usr/lib64/python2.7/site-packages/keras/utils/io_utils.py", line 186, in __init__
    self.data = h5py.File(path, mode=mode)
  File "/usr/lib64/python2.7/site-packages/h5py/_hl/files.py", line 312, in __init__
    fid = make_fid(name, mode, userblock_size, fapl, swmr=swmr)
  File "/usr/lib64/python2.7/site-packages/h5py/_hl/files.py", line 148, in make_fid
    fid = h5f.create(name, h5f.ACC_TRUNC, fapl=fapl, fcpl=fcpl)
  File "h5py/_objects.pyx", line 54, in h5py._objects.with_phil.wrapper
  File "h5py/_objects.pyx", line 55, in h5py._objects.with_phil.wrapper
  File "h5py/h5f.pyx", line 98, in h5py.h5f.create
IOError: Unable to create file (unable to open file: name = 'hdfs://default/tmp/mss/TensorflowOnSpark/model_dir/model.h5', errno = 2, error message = 'No such file or directory', flags = 13, o_flags = 242)

Теперь, чтобы протестировать среду искры, я попытался напечатать переменные окружения, необходимые для установки тензорного HDFS ---> «LD_LIBRARY_PATH», на консоль.

print("LD_LIBRARY_PATH : ",os.environ("LD_LIBRARY_PATH"))

>>>LD_LIBRARY_PATH : /usr/hdp/current/hadoop-client/lib/native:/usr/hdp/current/hadoop-client/lib/native/Linux-amd64-64

Почему я не могу сохранить файл модели?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...