• 【配置相关】配置tensorflow和keras时教程及问题总结


    基本参数:(如何基本参数和我的电脑不一致,有可能会出意外的错误)

    操作系统:Windows 10,64位

    Anaconda版本:Python 3.6版本。关于Anaconda的介绍、安装及使用教程可查看:点击

    本文写作时间:2019年3月26日

    全程手打,不可避免的可能出现某些错误,如果您发现请及时指正。

    一、首先是安装CPU版本Tensorflow

    1、打开Anaconda Prompt,输入清华仓库镜像:

    conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
    conda config --set show_channel_urls yes
    

    2、创建一个python3.5的环境,环境名称为tensorflow:

    注意,此时python的版本和后面tensorflow的版本有匹配问题,这一步选择的为python3.5

    conda create -n tensorflow python=3.5
    

    有需要确认的地方,都输入:y

    环境名称配置好之后,点击Anaconda Navigator,左侧的Environments就有了这一项tensorflow,如下图:

    3、在Anaconda Prompt中激活tensorflow环境:

    activate tensorflow
    

    激活后如下图所示:

    4、利用清华镜像,安装cpu版本的TensorFlow,其版本为1.13.1

    pip install --upgrade --ignore-installed tensorflow   #CPU

    到这一步,CPU版本的TensorFlow就安装好了,我们仍需要做一下测试,确保万无一失。

    5、测试Tensorflow

    在激活TensorFlow环境下,输入python,进入到python界面(图中可以看出,python版本是3.5.4)

    输入以下代码:

    import tensorflow as tf
    hello = tf.constant('Hello, TensorFlow!')
    sess = tf.Session()
    print(sess.run(hello))

    出现上图的结果就说明安装成功!

    输入pip freeze,可以看到tensorflow的版本为1.13.1

    或者输入pip list,但是有可能出现警告:解决方式为:点击  ,用户MrSky的回答。

    DEPRECATION: The default format will switch to columns in the future. You can use --format=(legacy|columns) (or define a format=(legacy|columns) in your pip.conf under the [list] section) to disable this warning.

    6、利用Anaconda Navigator安装spyder、ipytho包。

    打开Anaconda Navigator,切换到tensorflow环境,选择Not installed找到相应的包点Apply。

     二、配置keras

    安装好tensorflow后,我们可以继续安装keras

    1、在Anaconda Prompt中激活tensorflow环境,输入:

    pip install keras -U --pre 

    我安装的keras版本为2.2.4,同样,我们也需要进入python界面后输入:

    import keras         #测试是否成功,成功安装效果如下图。
    

     三、安装GPU版本的tensorflow

    1、配置环境

    tensorflow-gpu的版本和CDUDA版本,甚至CUDNN版本都有着对应关系。这里选择的版本为:

    python:3.6

    CUDA:9.0

    CUDNN:7.0

    这一部分安装了这为博主的文章一步一步安装(第三步、安装tensorflow-gpu之前)即可,在这里就不重复了。

    2、创建一个python3.5的环境,环境名称为tensorflow-GPU:

    conda create -n tensorflow-GPU python=3.6
    

    环境名称配置好之后,点击Anaconda Navigator,左侧的Environment就有了这一项tensorflow-GPU,如下图:

    3、在Anaconda Prompt中激活tensorflow-GPU环境:

    activate tensorflow-GPU
    

    4、安装tensorflow-GPU,版本为1.7.0,建议使用清华镜像安装

    pip install --upgrade setuptools  #先更新一下pip,不然后面的安装有可能报错
    pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow-gpu==1.7.0    #GPU版

    此时可以验证一下安装是否成功,方法同上面的CPU版本验证。

    5、验证此时的tensorflow的代码是否是在使用GPU

    import tensorflow as tf
    a = tf.test.is_built_with_cuda()   #判断CUDA是否可用
    b = tf.test.is_gpu_available(cuda_only=False,min_cuda_compute_capability=None)     #判断GPU是否可用
    print(a)
    print(b)

    输出结果是:
    True
    True
    代表CUDA和GPU可用。

     在这里要提醒一点,之前不知道怎么回事,在tensorflow-GPU这个环境里安装了CPU版本的tensorflow,导致GPU版本的tensorflow安装之后,始终无法调用,错误提示为:

    No module named 'tensorflow' 

     因此提醒大家,在安装之后用pip list看一下是否同时安装了两个版本的tensorflow,如果安装了两个版本,则先全都卸载掉,然后再重新安装GPU版本。卸载方式如下(直接复制就好)

    pip uninstall tensorflow   #卸载CPU版
    pip uninstall tensorflow-gpu   #卸载GPU版本
    

     6、查看一位博主的文章,如果同时安装了两个版本,默认下运行gpu版,如想运行cpu版,可代码中设置如下:

    with tf.Session() as ses:
        with tf.device("/cpu:0"):
            matrix1=tf.constant([[3.,3.]])
            matrix2=tf.constant([[2.],[2.]])
            product=tf.matmul(matrix1,matrix2)
    

     

    如果这篇文章帮助到了你,或者你有什么问题,欢迎扫码关注微信公众号:一刻AI  在后台留言即可

    四、其他安装过程中遇到的问题(持续更新),也欢迎大家把遇到的问题和解决方式在留言区写出,做一个避坑指南。

    1、如何利用镜像安装特定版本的tensorflow

    pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow==1.12   #CPU版
    pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow-gpu==1.12  #GPU版

    2、No module named 'tensorflow' 

    (1)各个包的版本不匹配,建议按照我的安装版本进行安装,亲测可行。

    (2)在安装时,有些是用Anaconda Prompt通过pip安装,有些是用Anaconda Navigator点击Apply安装,但是这两个的安装有时候会混乱,建议全都利用其中的一个途径安装

  • 相关阅读:
    k8s 集群节点重启后etcd Unhealthy 解决
    no matches for kind “Deployment” in version "extensions/v1beta1 问题解决
    go web 读书笔记 (go 与 web 应用)
    Linux设置ssh超时时间
    C++中继承方式
    C++中类中范围解析运算符::和点运算符(.)
    C++ 中类与结构体的区别
    C++中. 与 -> 运算符的区别
    C++之字符串
    C++之数组
  • 原文地址:https://www.cnblogs.com/lky-learning/p/10602822.html
Copyright © 2020-2023  润新知