Keras ValueError: операция ввода-вывода в закрытом файле

Я пытаюсь написать однослойную сеть. Когда он начнет тренироваться через model.fit , в какой-то случайный период он model.fit следующую ошибку:

ValueError: I/O operation on closed file

Вот как я использую model.fit

my_model = model.fit(train_x, train_y, batch_size=100, nb_epoch=20, show_accuracy=True, verbose=1)

Пожалуйста, дайте мне знать, если у вас есть какие-либо мысли или вы сталкиваетесь с одной и той же проблемой.

благодаря

Вот полный вывод ошибки:

 Epoch 1/20 47900/60816 [======================>.......] - ETA: 3s - loss: 0.1688 - acc: 0.9594 --------------------------------------------------------------------------- ValueError Traceback (most recent call last) <ipython-input-4-273f2082a322> in <module>() 14 model.compile(loss='binary_crossentropy', optimizer='adadelta') 15 ---> 16 model.fit(train_x, train_y, batch_size=100, nb_epoch=20, show_accuracy=True, verbose=1) 17 score = model.evaluate(test_x, test_y, show_accuracy=True, verbose=0) 18 print('Test loss:', score[0]) /usr/local/lib/python2.7/dist-packages/keras/models.pyc in fit(self, X, y, batch_size, nb_epoch, verbose, callbacks, validation_split, validation_data, shuffle, show_accuracy, class_weight, sample_weight) 699 verbose=verbose, callbacks=callbacks, 700 val_f=val_f, val_ins=val_ins, --> 701 shuffle=shuffle, metrics=metrics) 702 703 def predict(self, X, batch_size=128, verbose=0): /usr/local/lib/python2.7/dist-packages/keras/models.pyc in _fit(self, f, ins, out_labels, batch_size, nb_epoch, verbose, callbacks, val_f, val_ins, shuffle, metrics) 321 batch_logs[l] = o 322 --> 323 callbacks.on_batch_end(batch_index, batch_logs) 324 325 epoch_logs = {} /usr/local/lib/python2.7/dist-packages/keras/callbacks.pyc in on_batch_end(self, batch, logs) 58 t_before_callbacks = time.time() 59 for callback in self.callbacks: ---> 60 callback.on_batch_end(batch, logs) 61 self._delta_ts_batch_end.append(time.time() - t_before_callbacks) 62 delta_t_median = np.median(self._delta_ts_batch_end) /usr/local/lib/python2.7/dist-packages/keras/callbacks.pyc in on_batch_end(self, batch, logs) 187 # will be handled by on_epoch_end 188 if self.verbose and self.seen < self.params['nb_sample']: --> 189 self.progbar.update(self.seen, self.log_values) 190 191 def on_epoch_end(self, epoch, logs={}): /usr/local/lib/python2.7/dist-packages/keras/utils/generic_utils.pyc in update(self, current, values) 59 prev_total_width = self.total_width 60 sys.stdout.write("\b" * prev_total_width) ---> 61 sys.stdout.write("\r") 62 63 numdigits = int(np.floor(np.log10(self.target))) + 1 /usr/local/lib/python2.7/dist-packages/ipykernel/iostream.pyc in write(self, string) 315 316 is_child = (not self._is_master_process()) --> 317 self._buffer.write(string) 318 if is_child: 319 # newlines imply flush in subprocesses ValueError: I/O operation on closed file 

2 Solutions collect form web for “Keras ValueError: операция ввода-вывода в закрытом файле”

Как уже упоминалось в комментариях к вопросу (не видели до сих пор), это происходит из-за ошибки в IPython / Jupyter IO и того, как она обрабатывает подробный вывод от Keras. Вы можете отключить отчетность, установив verbose=False в train и predict или predict_proba методы predict_proba вызываемые в модели как временное решение, или просто запустите модель за пределами ноутбука.

В Keras Github есть проблема, которая суммирует проблему.

У меня такая же проблема, и теперь она исправлена. Установив verbose = 2 в model.fit, вы можете решить эту проблему. В документе Keras для model.fit вы можете найти это: «verbose: 0 для отсутствия входа в stdout, 1 для ведения журнала выполнения, 2 для одной строки журнала за эпоху». Установка verbose = 2 будет обновлять прогресс после каждой эпохи и помогает уменьшить объем информации о регистрации, выводимой на экран, что, по моему мнению, вызвало проблему с закрытым IO. Некоторые люди предлагают установить verbose = 0, чтобы отключить вывод, но в этом случае мы не можем отслеживать прогресс. Надеюсь, это поможет решить вашу проблему.

  • Разъяснение в учебнике Theano
  • Почему флаг FloatX влияет на использование GPU в Theano?
  • Как заставить Theano распараллелить операцию на GPU (тестовый пример: numpy.bincount)
  • Потеря NaN при тренировке регрессионной сети
  • Python theano.scan указывает аргумент
  • Theano: измените `base_compiledir`, чтобы сохранить скомпилированные файлы в другом каталоге
  • Keras, как я могу предсказать, когда я обучил модель?
  • Как получить значение из переменной тензора anano, поддерживаемой общей переменной?
  • Как реализовать взвешенную двоичную кросс-энтропию на анано?
  • Использование глубокого обучения для прогнозирования подпоследовательности из последовательности
  • Ошибка при вызове eval () в переменной Tensor в keras
  •  
    Interesting Posts for Van-Lav

    Что это за функция import_umath?

    Создайте zip-файл непосредственно из массива numpy без файла-посредника

    Python не может запустить Process с Process.start () в Windows. Сигналы PySide

    Как добавить предсказанные кластеры k-значений в столбце к фрейму данных в Python

    Поиск количества отдельных элементов в DataFrame в каждом столбце

    Включение PYD / DLL в сборках py2exe

    Обратный прокси-сервер, поддерживающий чистый веб-сервер python?

    Длина строки без функции len

    Поиск в HTML-строке по строке с регулярным выражением в Python

    Как определить метакласс для класса, который простирается от декларативной базы sqlalchemy

    Почему «повышение IOError (« невозможно определить файл образа »)« показывается только часть времени?

    Python html синтаксический анализ, который фактически работает

    Переключение между различными программами, использующими scipy ode

    Использование среды докеров -e переменная в супервизоре

    Можно ли получить настройки виджета в Tkinter?

    Python - лучший язык программирования в мире.