0
点赞
收藏
分享

微信扫一扫

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)


这篇文章主要记录的是自己在Anaconda中安装Tensorflow的一些经验以及教训。

这里需要注意的是你已经安装过了Anaconda,如果你不会请参考这篇文章:​​安装Anaconda3以及如何使用Jupyter​​

有了上面的准备工作接下来我们就要开始我们的安装工作了。

1.首先打开我们的

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_命令行

2.输入conda --version 然后显示相应版本

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_python_02

3.检测目前安装了哪些环境变量,直接输入:conda info --envs

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_tensorflow_03

4.查看当前有哪些可以使用的tensorflow版本:conda search --full --name tensorflow    (这一步网上一些人可以查看,但是我好像出了点问题,但是如果你和我一样,不要慌,没啥关系的,不影响我们继续操作)

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_python_04

5.在anaconda中安装tensorflow

 5.1 创建tensorflow环境,安装python3.7,anaconda prompt输入: conda create --name tensorflow python=3.7(创建3.6的python也可以)

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_tensorflow_05

然后输入y

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_tensorflow_06

接下来就是等待安装,网速快的话一分钟不到就可以安装好,如下所示:

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_python_07

5.2 激活tensorflow的tensorflow环境,anaconda prompt输入: activate tensorflow 发现括号中由base变为tensorflow

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_python_08

出现这种情况说明添加成功。

5.3检测当前环境中的python的版本:python --version

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_python_09

6.安装tensorflow包(注意:我们还是安装低版本,目前很多教材都是使用的是1.版本

我们还是在那个界面进行操作,网上有个的教程是如下说法:

根据之前查找的tensorflow的版本安装1.15版本tensorflow(tensorflow版本过高容易报错)

输入:pip install --upgrade --ignore-installed tensorflow==1.15 需要一段时间

然后我按照他的教程安装出现如下错误(这个错误是我网络延迟导致的,请忽略这一步):

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_tensorflow_10

好吧,到了这里我按照错误网上找方法,将命令行改为:pip install --upgrade --ignore-installed tensorflow  (使用这句命令行安装的是2.0版本的,不太建议)

事情好像有点好转了,如下所示:

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_tensorflow_11

 

出现上面这个结果差不多就安装好了。

6.1查看是否安装成功:conda list

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_python_12

说明安装成功。

7.验证功能正常:输入python 进入代码环境

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_python_13

8.输入代码测试

按照网上的教程输入下面代码:

import tensorflow as tf

hello = tf.constant('hello,tf')

sess = tf.Session()

print(sess.run(hello))

输出:b'hello,tf'

然后下面是我自己的实践结果:

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_命令行_14

执行到第三句代码就报错,原因是因为我的版本是tensorflow 2.0 而这个语法只适用于1.0 所以我们需要做一个变换:

import tensorflow as tf
tf.compat.v1.disable_eager_execution() #保证sess.run()能够正常运行
hello = tf.constant('hello,tensorflow')
sess= tf.compat.v1.Session()#版本2.0的函数
print(sess.run(hello))

然后按照这个教程输入:

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_tensorflow_15

好的完美运行。

【纠正一个小问题】

上面的第六步,是我自己网速的原因才导致出现错误,所以我自己重新尝试了下,并且网上百度了下当前tensorflow哪个版本更好使用,网上说是1.14(安装1.15也可以)

所以我自己重现安装了下tensorflow,操作如下:

在命令行输入:activate tensorflow

然后输入:pip install --upgrade --ignore-installed tensorflow==1.14

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_命令行_16

ok,到了这一步差不多安装完成了,然后在命令行输入:python

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_tensorflow_17

在把下面这段代码复制到命令行:

import tensorflow as tf

hello = tf.constant('hello,tf')

sess = tf.Session()

print(sess.run(hello))

运行结果如下(这里显示了很多警告,原因是我安装的numpy版本过高,这个问题在后面会给出解决方案):

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_python_18

恩恩,这里你输入第一行代码会出现这个样子,不要慌,我们直接将代码复制就可以:

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_python_19

到此,我们安装完成了。

-----------------------------------------------------------2020-11-14更新-----------------------------------------------------------

昨天我在Anaconda里面安装好了Tensorflow,接下来我需要在我的Pycharm里面使用Tensorflow,所以接下来我根据自己的实践给出解决步骤:

1.首先我们打开pycharm新建一个Project:

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_tensorflow_20

2.我们选择我们在Anaconda下安装Tensorflow中python.exe路径,比如我的是:D:\Python\Anaconda3\envs\tensorflow\python.exe

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_tensorflow_21

3.然后点击确认,再点击create即可

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_tensorflow_22

4.新建一个test.py文件

import tensorflow as tf

hello = tf.constant('hello,tf')

sess = tf.compat.v1.Session()

print(sess.run(hello))

点击运行,虽然能输出结果,但是出现下面一大堆警告:

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_命令行_23

这也是我之前说到的这个错误,因为我们的numpy版本过高导致的,所以我们需要安装1.16.0版本的

这里我直接参考别人的解决方法:​​解决python调用TensorFlow时出现FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecate​​(我用的是这个方法)

其次这里还有第二种解决方案:​​方法二:解决python调用TensorFlow时出现FutureWarning​​(这个方法只需要改改配置文件的参数,大家可以尝试下)

我通过第一种方法,然后再次点击运行:

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_tensorflow_24

嗯嗯,那些警告都没有了,看来第一种方法挺管用的,但是新的问题出来了,就是我们输出的上面又出了一个红色警告,这就让我看起来不舒服。

2020-11-14 10:21:24.674456: I tensorflow/core/platform/cpu_feature_guard.cc:142] Your CPU supports instructions that this TensorFlow binary was not compiled to

警告是这个样子的,网上搜索了下相关解决方案有2种:

1.直接屏蔽

在代码开头加入2句代码:

import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

import tensorflow as tf
import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

hello = tf.constant('hello,tf')

sess = tf.compat.v1.Session()

print(sess.run(hello))

点击运行:

Anaconda安装Tensorflow,然后在Pycharm中使用Tensorflow(填坑记)_命令行_25

ok,啥警告都没有了。

2.彻底解决,换成支持cpu用AVX2编译的TensorFlow版本

这个我现在还没有去搞,暂时先搁置下,不过大家碰到这个问题的话可以参考这个链接,等我哪天有心情的时候再来填坑。

参考链接:​​解决Tensorflow 使用时cpu编译不支持警告的问题​​

未完待续........

举报

相关推荐

0 条评论