YOLOv3 ModuleNotFoundError: нет модуля с именем 'tensorflow. python .keras.engine.base_layer_v1' - PullRequest
0 голосов
/ 11 июля 2020

Мне нужно обучить модель с помощью YOLO. Я использую ядро ​​Kaggle и обучаю пользовательские изображения.

Когда я запускаю модуль поезда, я получаю эту ошибку.

ModuleNotFoundError: Нет модуля с именем 'tensorflow. python .keras .engine.base_layer_v1 '

предустановлен Tensorflow 2. +. Я где-то читал, что Yolov3 не работает с TensorFlow 2. +, поэтому я установил Tensor 1.14.

Я также пробовал использовать ImageAi и получил точно такую ​​же ошибку.

Кто-нибудь понимает этот basekayer_v1? Это версия тензорного потока, которая выдает ошибку?

Спасибо

1 Ответ

0 голосов
/ 13 июля 2020

Я нашел решение

Что ж, похоже, я делаю что-то не так или делаю что-то более сложное, поскольку никто не сталкивался с этой ошибкой. Я нашел решение.

from keras.preprocessing import image
from keras.models import Model
from keras.layers import Dense, GlobalAveragePooling2D
from keras import backend as K

на:

from tensorflow.keras.preprocessing import image
from tensorflow.keras.models import Model
from tensorflow.keras.layers import Dense, GlobalAveragePooling2D
from tensorflow.keras import backend as K

Если у вас такая же проблема. Файлы YOLO устарели. Говорят, что они несовместимы с Tensorflow 1.14, но для меня это сработало. Мне нужно было разветвить git и отредактировать model.py. Как показано выше, важно добавить tensorflow.keras

Мне также нужно было отредактировать Change K.controlflowops.whileloop to tf.whileloop в коде, иначе вы получите сообщение об ошибке.

Я использовал ядро ​​Kaggle . Используя Tensorflow 2.0.2

Мне потребовалось 4 дня, чтобы решить эту проблему, теперь, наконец, идет обучение. Надеюсь, это поможет.

...