【问题标题】:Keras LSTM/Anaconda problem, unable to upgrade TensorFlow to 2.6.0 using conda with python 3.8Keras LSTM/Anaconda 问题,无法使用 conda 和 python 3.8 将 TensorFlow 升级到 2.6.0
【发布时间】:2022-08-19 23:33:32
【问题描述】:

我正在疯狂尝试解决this problem

NotImplementedError: Cannot convert a symbolic Tensor (LSTM-4/strided_slice:0) to a numpy array. This error may indicate that you\'re trying to pass a Tensor to a NumPy call, which is not supported

我开始在我的 Windows 10 PC 上全新安装 Anaconda:

    C:\\WINDOWS\\system32>conda info

     active environment : base
    active env location : C:\\Anaconda3
            shell level : 1
       user config file : C:\\Users\\Administrator\\.condarc
 populated config files :
          conda version : 4.12.0
    conda-build version : 3.21.4
         python version : 3.8.8.final.0
       virtual packages : __win=0=0
                          __archspec=1=x86_64
       base environment : C:\\Anaconda3  (writable)
      conda av data dir : C:\\Anaconda3\\etc\\conda
  conda av metadata url : None
           channel URLs : https://repo.anaconda.com/pkgs/main/win-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/win-64
                          https://repo.anaconda.com/pkgs/r/noarch
                          https://repo.anaconda.com/pkgs/msys2/win-64
                          https://repo.anaconda.com/pkgs/msys2/noarch
          package cache : C:\\Anaconda3\\pkgs
                          C:\\Users\\Administrator\\.conda\\pkgs
                          C:\\Users\\Administrator\\AppData\\Local\\conda\\conda\\pkgs
       envs directories : C:\\Anaconda3\\envs
                          C:\\Users\\Administrator\\.conda\\envs
                          C:\\Users\\Administrator\\AppData\\Local\\conda\\conda\\envs
               platform : win-64
             user-agent : conda/4.12.0 requests/2.25.1 CPython/3.8.8 Windows/10 Windows/10.0.19041
          administrator : True
             netrc file : None
           offline mode : False

然后我安装了tensorflow包

conda install tensorflow

然后我尝试创建一个遵循this example 的模型,特别是几行

model = Sequential()
model.add(LSTM(50, input_shape=(train_X.shape[1], train_X.shape[2])))
model.add(Dense(1))
model.compile(loss=\'mae\', optimizer=\'adam\')

这会产生错误(产生错误的实际行是添加了 LSTM 层)。

然后我尝试升级到 TF 2.6.0,但是,给出以下更新命令

conda install -c conda-forge tensorflow=2.6.0

导致无法解决的冲突的噩梦(几个小时后,冲突输出超过 8 klines 并溢出我的 shell 缓冲区)。

我有两个问题:

  1. 我该如何解决这个问题,这意味着我需要 python 3.8 和支持 LSTM 网络的 tensorflow?我尝试升级到 2.6.0 的计划有意义吗?
  2. Anaconda 的稳定版本怎么可能附带损坏的 tensorflow 包?这个例子可能已经过时了吗?在这种情况下,有人可以建议正确的语法吗?

    真挚地,

  • 好吧,这个问题与此处发布的问题相同。 stackoverflow.com/questions/66207609/…。现在我的问题可以是:\“我怎样才能安装 FT 2.6.0?如果我给出命令 conda install tensorflow,为什么会选择有缺陷的 2.3.0?\”

标签: tensorflow keras anaconda lstm python-3.8


【解决方案1】:

请创建一个 conda 环境,然后使用 pip 命令安装 tensorflow。建议使用 pip 而不是 conda,因为 TensorFlow 仅正式发布到 PyPI。

使用以下命令卸载 tensorflow

conda uninstall tensorflow

如果尚未创建新的 conda 环境,则创建一个新的环境,并使用以下命令将其激活

#create environment
conda create --name tf python=3.
#Activate it 
conda activate tf

TensorFlow 需要最新版本的 pip,因此请升级您的 pip 安装以确保您运行的是最新版本。

pip install --upgrade pip

然后,使用 pip 安装 TensorFlow。

pip install tensorflow==2.6

请参阅此document 了解更多信息。谢谢!

【讨论】:

    猜你喜欢
    • 2020-06-17
    • 2020-02-22
    • 1970-01-01
    • 2020-11-11
    • 1970-01-01
    • 1970-01-01
    • 2020-11-08
    • 1970-01-01
    • 2022-08-19
    相关资源
    最近更新 更多