在Tensorflow中,一些模块的许多功能已被弃用。建议使用tf.keras.layers
中的内容。 tutorials通过将它们与tf.keras.Sequential (Sequential)
或tf.keras.Model (Model)
关联来提供使用示例。我想知道是否可以在tf.keras.layers (e.g., Dense, Conv1D, etc.)
中使用某些类而不使用Sequential
或Model
。
以前在我的代码中使用了以下内容:
gru = tf.contrib.rnn.GRUCell(d)
states, output = tf.nn.dynamic_rnn(gru, inputs)
由于tf.contrib.rnn
和tf.nn.dynamic_rnn
均已弃用,我想知道是否可以用以下命令替换它们,而无需在代码中添加Sequential
或Model
。
gru = tf.keras.layers.GRUCell(d)
states, output = keras.layers.RNN(gru)(inputs)
答案 0 :(得分:0)
我想知道是否可以在不使用Sequential或Model的情况下在tf.keras.layers中使用某些类(例如Dense,Conv1D等)。
是的,可以。我们可以通过执行以下操作直接“调用”该层,例如:
layer_example = tf.keras.layers.Dense(2,input_shape=(-1,24))
example_tensor = tf.random.uniform(shape=(2, 24))
layer_example(example_tensor)
请注意,我们首先使用tf.keras.layers.Dense
创建图层类的实例,然后使用layer_example(example_tensor)
我们当然也可以将其扩展到GRU示例。像这样:
example_tensor = tf.random.uniform(shape=(2, 24, 12))
gru = tf.keras.layers.GRUCell(2)
states, output = tf.keras.layers.RNN(gru)(example_tensor)