AttributeError: модуль tenorflow не имеет атрибута CuDNNLSTM - PullRequest
0 голосов
/ 07 мая 2020

Мой код выглядит следующим образом:

import tensorflow as tf
from tensorflow.keras import layers

# initial layer
model = tf.keras.Sequential()
# emmbed word vectors
model.add(tf.keras.layers.Embedding(len(fasttext_model.wv.vocab)+1,300,input_length=X.shape[1],weights=[embed_matrix],trainable=False))


model.add(tf.CuDNNLSTM(300, return_sequences = True))
model.add(tf.keras.layers.Dropout(0.5))
model.add(tf.keras.layers.Dense(y.shape[1],activation="softmax")) 
model.summary()

Я получаю следующую ошибку в этом коде. как я могу это исправить?

AttributeError: module 'tensorflow' has no attribute 'CuDNNLSTM'

1 Ответ

0 голосов
/ 07 мая 2020

Если вы используете версии до 2.0, это будет следующий оператор:

model.add(tf.keras.layers.CuDNNLSTM(300, return_sequences = True))

Если версия tensorflow> = 2.0, этот слой был удален. Вместо этого при простом использовании уровня LSTM с активациями по умолчанию автоматически используется CuDNN. Вы можете просто использовать:

model.add(tf.keras.layers.LSTM(300, return_sequences = True))
...