ImportError: невозможно импортировать имя convert_all_kernels_in_model

Я пытаюсь использовать обучение модели ImageAI для обучения модели AI.

Это код:

 from imageai.Prediction.Custom import ModelTraining
 model_trainer = ModelTraining()
 model_trainer.setModelTypeAsResNet()
 model_trainer.setDataDirectory("idenprof")
 model_trainer.trainModel(num_objects=2, num_experiments=3, enhance_data=True, 
 batch_size=32, show_network_summary=True)

Это ошибка, которую я получаю при запуске:

Traceback (most recent call last):
  File ".../FirstTraining.py", line 1, in <module>
    from imageai.Prediction.Custom import ModelTraining
  File ".../lib/python2.7/site-packages/imageai/Prediction/Custom/__init__.py", line 4, in <module>
    from ..DenseNet.densenet import DenseNetImageNet121
  File ".../PycharmProjects/bonez/venv/lib/python2.7/site-packages/imageai/Prediction/DenseNet/densenet.py", line 21, in <module>
    from tensorflow.python.keras.utils import convert_all_kernels_in_model
ImportError: cannot import name convert_all_kernels_in_model

Я обыскал повсюду, но не смог найти ту же проблему или способ ее решения. У меня установлены следующие зависимости: Tensorflow, OpenCV, Keras и ImageAI.

1 ответ

Обновление: оказывается,ImageAI еще не поддерживает Tensorflow 2. Эта проблема не возникает со следующей версией tensorflow:pip install tensorflow==1.15.2


У меня была такая же проблема, и я решил ее, заменив все tensorflow.python.keras импорт с tensorflow.kerasв библиотеке ImageAI. После этого,from imageai.Prediction.Custom import ModelTraining импорт работает нормально.

Если вы хотите следовать, в ImageAI есть открытая проблема: https://github.com/OlafenwaMoses/ImageAI/issues/494

Другие вопросы по тегам