警告:带有约束条件的TensorFlow已经被弃用并将在未来版本中移除。

8

我正在按照Tensorflow的教程构建一个简单的神经网络,在导入必要的库(tensorflow、keras、numpy和matplotlib)和数据集(fashion_mnist)之后,根据教程运行了以下代码:

model = keras.Sequential([
    keras.layers.Flatten(input_shape=(28, 28)),
    keras.layers.Dense(128, activation='relu'),
    keras.layers.Dense(10, activation='softmax')
]) 

在运行这段代码后,我收到了以下警告信息:

警告:来自 /Applications/anaconda3/envs/tensorfloe/lib/python3.7/site-packages/tensorflow_core/python/ops/resource_variable_ops.py 的 TensorFlow: 在将约束传递给 layers 时,使用 Keras 代替 *_constraint 参数。

请问如何解决这个问题? 非常感谢您的帮助。
5个回答

11

这是TensorFlow内部的消息,您可以安全地忽略它。在未来的TensorFlow版本中,它将不再存在,您无需采取任何行动。


3
为什么这个信息会出现在这里,我们应该忽略它,你是否从TensorFlow问题中获得了相关信息? - gessulat
@gessulat,Vladimir所说的是这个警告是由于内部tensorflow问题引起的,tensorflow正在以废弃的方式使用自己的库,在将来某个时候当废弃的函数不再起作用时,他们将解决此问题。Fikile发布的错误消息包含有关触发它的信息。 - Alejandro Silvestri

2

当我使用tf.compat.v1.get_variable(...)时,我遇到了类似的警告,需要做的是将use_resource参数设置为False。这可能会帮助一些寻找类似警告的人,但在你的情况下似乎不是这种情况。


1

这是一个警告,一些功能已被弃用并将在未来版本中被移除。这只是为了让您知道可能会发生哪些更改。 虽然您可以通过

移除这些警告
import warnings
warnings.filterwarnings("ignore", category=DeprecationWarning) 

0
如果您只想过滤TensorFlow日志,可以使用以下代码行禁用日志记录(TensorFlow 2.2):
import tensorflow as tf   
tf.get_logger().setLevel('ERROR')

-3
如果你想要移除它,你可以对这行代码运行两次。

他第一次还是会收到警告吗? - Daniel Walker
嗨Anas,欢迎来到StackOverflow。你应该用格式良好的输出在"答案"部分解释你的答案,或者如果只有一行答案,你应该将其添加到评论中。你也可以参考这个回答指南https://stackoverflow.com/help/how-to-answer。 - Anshul Vyas
Anas 正在谈论 Jupyter Notebook。第一次运行笔记本单元格时,如果单元格出现警告,请再次运行它,单元格将不会显示警告消息。 - Pogger

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接