为啥我需要另一个来自 tensorflow 的 conda 环境?

Posted

技术标签:

【中文标题】为啥我需要另一个来自 tensorflow 的 conda 环境?【英文标题】:Why do I need another conda environment from tensorflow?为什么我需要另一个来自 tensorflow 的 conda 环境? 【发布时间】:2021-12-03 18:27:53 【问题描述】:

我目前正在尝试开始使用 tensorflow。 我使用 anaconda 并尝试在根环境中安装 tensorflow 包,但它总是显示消息:“遇到几个错误”。 当我查看它时,它说解决方案是专门为 tensorflow 创建另一个环境,我做到了,并且成功了。但我还是想知道这是什么原因。

【问题讨论】:

可能和anaconda支持的Tensorflow包版本有关,记得遇到过类似的问题,改用pip解决了。 【参考方案1】:

我刚开始的时候也有同样的问题。似乎这是“正确”的事情,所以我只是这样做了,但不明白为什么。在使用 TensorFlow 2 年后,在多台机器上工作后,我意识到它的需求集是多么具体。只有少数版本的 python 兼容,numpy 也是如此,如果你想使用 NVIDIA GPU,祝你好运弄清楚cudacudnn 的具体版本。

您不希望必须将机器上的大多数与 python 相关的软件定制为运行 tensorflow。例如,为了避免在安装需要更高版本的numpy 的东西时破坏它,最好将其保存在单独的环境中。这样,您就有了一个独立的“容器”,它可以按照 TensorFlow 想要的方式保存所有内容,同时在需要时仍然可以使用其他软件。 更何况 TensorFlow 有好几个版本,它们都有不同的要求。

【讨论】:

以上是关于为啥我需要另一个来自 tensorflow 的 conda 环境?的主要内容,如果未能解决你的问题,请参考以下文章

为啥我的 kivy 程序没有从另一个类调用函数?

你可以在同一个 tensorflow/serving 二进制文件中提供来自不同 tensorflow 版本的模型吗?

为啥这个 tensorflow 训练需要这么长时间?

来自 URL 的 XML - 根级别的数据无效。第 1 行,位置 1 为啥它适用于一个 URL 而不是另一个?

为啥 java 5+ 中的 volatile 不能确保来自另一个线程的可见性?

tensorflow变量初始化问题? 如图,在代码中我已经初始化了变量,为啥还提示未初始化变量