属性错误:模块';tensorflow.python.layers.layers';没有属性';层';

属性错误:模块';tensorflow.python.layers.layers';没有属性';层';,tensorflow,Tensorflow,我正在学习一篇名为“注意力是你所需要的一切”的文章,我正在尝试学习代码(来自github的官方文章),我发现了一个奇怪的错误,错误是: “AttributeError:module'tensorflow.python.layers.layers'没有属性'Layer'” 生成错误的代码: from __future__ import absolute_import from __future__ import division from __future__ import print_funct

我正在学习一篇名为“注意力是你所需要的一切”的文章,我正在尝试学习代码(来自github的官方文章),我发现了一个奇怪的错误,错误是: “AttributeError:module'tensorflow.python.layers.layers'没有属性'Layer'”

生成错误的代码:

from __future__ import absolute_import
from __future__ import division
from __future__ import print_function

import tensorflow as tf
class Attention(tf.layers.Layer)://this is the line the generating the error
现在这很奇怪,因为当在线检查时,所有的解决方案都是tensorflow的版本问题,我有一个足够的版本(在线答案)1.7.0,我的python版本是3.6.4

还有一件事是很正常的,错误描述中写的是:“tensorflow.python.layers.layers”,而不仅仅是“tensorflow.layers”

非常感谢您的帮助。

发件人:

tf.layers.Layer被认为是遗留的,我们建议使用 换成tf.keras.layers.layers

在此之后,您可能会得到另一个关于Keras的错误,因为tensorflow的版本需要大于1.4,所以请像这样更新tf:

pip install --upgrade tensorflow

因此,我面临同样的错误,但发现我的tensorflow版本 是2.0)将层从tf包(
tf.layers
)移动到
tf.keras

一个简单的修复方法是将
tf.layers
替换为
tf.keras.layers