Tensorflow 如何在TF2.0上运行TF1.0内置的定制AttentionLSTM类?

Tensorflow 如何在TF2.0上运行TF1.0内置的定制AttentionLSTM类?,tensorflow,keras,tensorflow2.0,tf.keras,Tensorflow,Keras,Tensorflow2.0,Tf.keras,我是在一位同事的工作基础上建立的,他在TF1中构建了一个自定义AttentionLSTM层。我想用TF2 我已将顶部的所有导入语句从tensorflow.keras import…更改为。但有两个问题我还没有弄明白如何改变 来自keras.legacy导入接口的 从keras.layers导入 在AttentionLSTM类定义中只使用一次,其他地方不使用 上课时间TM(经常性): @interfaces.legacy\u Recurrency\u支持 定义初始值(自身、单位、, 激活='ta

我是在一位同事的工作基础上建立的,他在TF1中构建了一个自定义AttentionLSTM层。我想用TF2

我已将顶部的所有导入语句从tensorflow.keras import…更改为
。但有两个问题我还没有弄明白如何改变

来自keras.legacy导入接口的

从keras.layers导入
AttentionLSTM
类定义中只使用一次,其他地方不使用

上课时间TM(经常性):
@interfaces.legacy\u Recurrency\u支持
定义初始值(自身、单位、,
激活='tanh',
复发性乙状结肠,
注意:,
使用_bias=True,
kernel\u initializer='glorot\u uniform',
循环式_初始值设定项='正交',
注意,
偏差\u初始值设定项='零',
单位偏差=真,
核正则化器=无,
递归正则化器=无,
偏差\正则化器=无,
活动\正则化器=无,
注意,正则化器=无,
内核约束=无,
循环约束=无,
偏差约束=无,
注意,约束=无,
辍学率=0。,
经常性辍学=0。,
return\u attention=False,
**kwargs):
...
接口
装饰器做什么?为了在TF2中使用这个类,我需要更改什么


注意:我想我应该将
经常性导入从tensorflow.keras.layers import RNN更改为
,但是我担心这会弄乱
接口
装饰器的工作。

来自keras.legacy import interfaces
和来自
keras.layers import recurrential
这两个库与keras一起工作2.3.1. 最新的Tensorflow版本具有默认的Keras 2.4.3版本。 为了使用这两个库,请将Keras降级为2.3.1

Tensorflow.keras没有这样的库

对于
keras.layers,使用
tf.keras.layers.RNN

看看Keras发布版。

啊,好的,谢谢。另外,从这一点来看,我似乎可以在Keras 2.3.1中使用TF 2.2的最大值。你不能只使用TF。