导入错误:无法从“tensorflow.keras.layers”导入名称“CuDNNLSTM”

问题描述 投票:0回答:1

我正在学习机器学习和人工智能,并查看大约 2-3 年前编写的代码。 这是我面临问题的代码的一部分:

import pandas as pd
import numpy as np
import random
import time
from sklearn.preprocessing import OneHotEncoder
from sklearn.preprocessing import RobustScaler
import tensorflow as tf
from tensorflow.keras.layers import CuDNNLSTM,Dropout,Dense,Input,add

当我使用上面的代码运行时,出现以下错误:

ImportError: cannot import name 'CuDNNLSTM' from 'tensorflow.keras.layers'

当我搜索解决方案时,我得到以下建议:

from tensorflow.compat.v1.keras.layers import CuDNNLSTM

所以我添加了上面的行,并从之前的导入行中删除了 CuDNNLSTM。 现在我明白了他的错误:

ModuleNotFoundError: No module named 'tensorflow.compat.v1.keras'

我可以获得帮助来解决上述问题吗? 这是使用 CuDNNLSTM 的代码摘录。

    inputs = Input(shape=(240,1))
    x = CuDNNLSTM(25,return_sequences=False)(inputs)
    x = Dropout(0.1)(x)
python pandas tensorflow keras tensorflow2.0
1个回答
0
投票

也许您应该简单地将

CuDNNLSTM
替换为
LSTM
CuDNNLSTM
已被弃用

根据这个答案,你不能再指定

CuDNNLSTM
。相反,当满足某些条件时,它将自动使用。

© www.soinside.com 2019 - 2024. All rights reserved.