我一直在尝试使用 CleverHans(https://github.com/tensorflow/cleverhans)。
背景
我在这里运行此文件 - https://github.com/tensorflow/cleverhans/blob/master/cleverhans_tutorials/mnist_tutorial_tf.py,使用 Python 3.7.6 和 TensorFlow 1.15.3,这导致我出现以下错误:
ImportError: This version of TensorFlow Addons requires TensorFlow version >= 2; Detected an installation of version 1.15.3. Please upgrade TensorFlow to proceed.
然而,CleverHans 并不真正适用于 TensorFlow 的第 2 版及更高版本,他们正在努力发布一个新版本。实际上,我什至将 TensorFlow 更新到 2.3.0 只是为了看看会发生什么。这导致了一堆错误和错误修复,最后我到了这里:
/python3.7/site-packages/cleverhans/initializers.py", line 13, in __init__
super(HeReLuNormalInitializer, self).__init__(dtype=dtype)
TypeError: __init__() got an unexpected keyword argument 'dtype'
显然,CleverHans 不适用于 TensorFlow 2。
问题
我的问题是fgsm.py
文件(CleverHans)在不与 TensorFlow <2 一起使用tensorflow_addons
时如何使用。tensorflow_addons
另外,我想唯一的解决方案是让事情在没有 的情况下工作tensorflow_addons
,但我不确定那会付出多少努力。
任何与规避 TensorFlow Addons 或全新方法相关的建议都会很棒。
谢谢!