模块'tensorflow'没有属性"会话",触发错误



我试图在pyspark中使用深度学习,但它不起作用。

下面是我的代码:

featurizer = DeepImageFeaturizer(inputCol="image",
outputCol="features",
modelName="InceptionV3")
lr = LogisticRegression(maxIter=5, regParam=0.03, 
elasticNetParam=0.5, labelCol="label")
sparkdn = Pipeline(stages=[featurizer, lr])
spark_model = sparkdn.fit(train)

The error:

File ~/anaconda3/lib/python3.9/site-packages/sparkdl/transformers/keras_applications.py:45, in KerasApplicationModel.getModelData(self, featurize)
44 def getModelData(self, featurize):
---> 45     sess = tf.Session()
46     with sess.as_default():
47         K.set_learning_phase(0)
AttributeError: module 'tensorflow' has no attribute 'Session'

我试图卸载并安装tf。我也运行pyspark与深度学习包:

pyspark --packages databricks:spark-deep-learning:0.1.0-spark2.1-s_2.11 

看起来您正在尝试使用spark-deep-learning package中的DeepImageFeaturizer变压器。如果您的系统上安装了旧版本的TensorFlow,或者您使用的TensorFlow版本与spark-deep-learning package不兼容,则通常会发生此错误。

尝试以下操作:

使用pip uninstall tensorflow卸载当前版本的TensorFlow。

然后安装最新版本的TensorFlow:pip install tensorflow

确保您正在使用的TensorFlow版本与spark-deep-learning package兼容。根据文档,它需要TensorFlow 1.6或更高版本。

在运行代码之前尝试将环境变量TF_CPP_MIN_LOG_LEVEL设置为3。这可以帮助抑制一些TensorFlow警告和错误。

相关内容

  • 没有找到相关文章

最新更新