Легко столкнуться с проблемой пакета для запуска первой модели машинного обучения. Когда вы играете с tensorflow и keras, согласованность версий является критическим моментом для определения того, насколько успешно работает Jupyter Notebook.
Во время запуска моей первой модели LSTM я обнаружил некоторые ошибки в пакете tensorflow и keras. Причина, по которой это произошло, заключается в том, что совместимость между tensorflow и keras не совпадает.
Вот список их версий:
Спасибо за следующие два веб-сайта предоставить полный список версий.
https://mckayward.github.io/floyd-docs/guides/environments/#help-make-this-document-better
Когда вы исправите проблему с версией пакета, возникнет ошибка некоторых атрибутов. Согласно карьерной карме
Python AttributeError возникает, когда вы пытаетесь вызвать атрибут объекта, тип которого не поддерживает этот метод.
Вот пример:
Вы можете увидеть больше примеров от geeksforgeeks, чтобы понять больше.
Чтобы решить эту проблему, вы можете изменить его в файлах пакета.
Случай 1: AttributeError: модуль «tensorflow» не имеет атрибута «get_default_graph».
- Перейдите по следующему пути на локальном компьютере (AppData\Roaming\Python\Python36\site-packages\keras\backend\tensorflow_backend.py)
2. Комментарий импортировать тензорный поток как tf
3. Замените на import tensorflow.compat.v1 as tf, как показано ниже:
Случай 2: AttributeError: модуль «tensorflow_core._api.v2.train» не имеет атрибута «Оптимизатор».
- Перейдите по следующему пути на локальном компьютере (~\AppData\Roaming\Python\Python36\site-packages\keras\optimizers.py)
2. Комментарий if isinstance(identifier, tf.train.Optimizer):
3. Замените на if isinstance(identifier, tf.optimizers.Optimizer):, как показано ниже:
Иногда могут возникать ошибки во время выполнения.
Вот несколько примеров для устранения этого типа ошибок:
RuntimeError: tf.placeholder() is not compatible with eager execution.
- Перейдите по следующему пути на локальном компьютере (AppData\Roaming\Python\Python36\site-packages\keras\backend\tensorflow_backend.py)
- Добавьте tf.compat.v1.disable_eager_execution() в часть пакета импорта
После исправления этих ошибок все работает! Я надеюсь, что это решение поможет вам решить проблему.