ошибка бэкэнда тензорного потока. AttributeError: модуль 'tenorflow' не имеет атрибута 'name_scope' - PullRequest
0 голосов
/ 13 января 2020

Я использую версию: 2.1.0 TensorFlow и 2.3.1 керат. При импорте любого модуля из keras я сталкиваюсь с внутренней ошибкой tenorflow.

import pandas as pd, numpy as np, os, re, json, math, time 
from keras.models import Sequential 
from keras.layers import Dense 
from keras.wrappers.scikit_learn import KerasRegressor
from sklearn.model_selection import cross_val_score 
from sklearn.model_selection import KFold 
from sklearn.preprocessing import StandardScaler
from sklearn.pipeline import Pipeline 
from sklearn.model_selection import train_test_split 
---------------------------------------------------------------------------

AttributeError                            Traceback (most recent call last) <ipython-input-82-2f712055860b> in <module>
      1 import pandas as pd, numpy as np, os, re, json, math, time
----> 2 from keras.models import Sequential
      3 from keras.layers import Dense
      4 from keras.wrappers.scikit_learn import KerasRegressor
      5 from sklearn.model_selection import cross_val_score

~\Anaconda3\lib\site-packages\keras\__init__.py in <module>
      1 from __future__ import absolute_import
      2 
----> 3 from . import utils
      4 from . import activations
      5 from . import applications

~\Anaconda3\lib\site-packages\keras\utils\__init__.py in <module>
      4 from . import data_utils
      5 from . import io_utils
----> 6 from . import conv_utils
      7 from . import losses_utils
      8 from . import metrics_utils

~\Anaconda3\lib\site-packages\keras\utils\conv_utils.py in <module>
      7 from six.moves import range
      8 import numpy as np
----> 9 from .. import backend as K
     10 
     11 

~\Anaconda3\lib\site-packages\keras\backend\__init__.py in <module>
----> 1 from .load_backend import epsilon
      2 from .load_backend import set_epsilon
      3 from .load_backend import floatx
      4 from .load_backend import set_floatx
      5 from .load_backend import cast_to_floatx

~\Anaconda3\lib\site-packages\keras\backend\load_backend.py in <module>
     88 elif _BACKEND == 'tensorflow':
     89     sys.stderr.write('Using TensorFlow backend.\n')
---> 90     from .tensorflow_backend import *
     91 else:
     92     # Try and load external backend.

~\Anaconda3\lib\site-packages\keras\backend\tensorflow_backend.py in <module>
     54 get_graph = tf_keras_backend.get_graph
     55 # learning_phase_scope = tf_keras_backend.learning_phase_scope  # TODO
---> 56 name_scope = tf.name_scope
     57 
     58 

> AttributeError: module 'tensorflow' has no attribute 'name_scope'

С нетерпением ждем быстрого решения.

1 Ответ

0 голосов
/ 13 января 2020

Я рекомендую вам перейти на использование модуля keras внутри TensorFlow.

Он лучше поддерживается, и у вас не возникнет проблем с несовместимостью.

Согласно Франсуа Шоле:

Версия 2.3.0 Keras находится здесь, и это последний крупный мульти-бэкэнд-релиз. В дальнейшем пользователям рекомендуется переключить свой код на tf.keras в TensorFlow 2.0. Этот выпуск вносит изменения API и несколько критических изменений. Загляните под капот и посмотрите, что он включает, а также планы на будущее.

Переключение всего импорта вместо

from keras.models import Sequential 
from keras.layers import Dense 

на

from tensorflow.keras.models import Sequential 
from tensorflow.keras.layers import Dense 

решит все ваши проблемы несовместимости.

Вы можете полностью удалить Keras как отдельный пакет, поскольку он уже включен по умолчанию в TensorFlow.

НАБЛЮДЕНИЕ: Если PyCharm не делает распознав tensorflow.keras, вам нужно обновить PyCharm до последней версии> = 2019.3. Только начиная с этой версии TensorFlow 2.0 соответственно распознается в PyCharm. Пожалуйста, обратитесь к ответу ниже для получения дополнительной информации:

Невозможно импортировать Keras (из TensorFlow 2.0) в PyCharm

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