当前位置 博文首页 > xpj8888的博客:Pycharm工程管理(二)非常详细的介绍tensorflow

    xpj8888的博客:Pycharm工程管理(二)非常详细的介绍tensorflow

    作者:[db:作者] 时间:2021-09-17 12:20

    第一章、简介

    ?

    • ?本文介绍跑AI算法时,需要安装的tensorflow + tensorflow-gpu +CUDA + cudnn + anaconda软件包。
    • CUDA + cudnn都是nvidia旗下的驱动产品,官网https://developer.nvidia.com/cudnn。、
    • 英特尔的集成显卡一般不支持CUDA + cudnn,英伟达的显卡一般都支持CUDA + cudnn,所以下载CUDA或cudnn之前,需要查看自己的显卡属于哪种类型。

    ? ? ? ? 此前,已经安装了:

    • Pycharm2019.3.4
    • python3.7.2
    • pip18.1
    • tensorflow2.1.0
    • numpy1.18.2

    ? ? ? ?我们通过下面的介绍,一步步的认识tensorflow具体是干嘛用的。

    ?

    此图像的alt属性为空;文件名为1-7.png

    ?

    第二章、Tensorflow

    ?

    2.1、 Tensorflow介绍

    ?

    • ?
    • Tensorflow是目前广泛使用的AI算法及相关数学运算的算法库之一。
    • Tensorflow是目前google团队开发,并在2015年11月9日宣布开源。次年三月,Google的围棋人工智能程序AlphaGo以4比1的战绩,战胜人类选手李世石。一年后,约致2017年左右,Tensorflow就成为了最流行的AI算法。可见Google的Tensorflow通过AlphaGo借势而起的雄心,不鸣则已,一鸣惊人
    • Tensorflow是目前GitHub上最有影响、最具代表的AI算法库之一。
    • TensorFlow可以应用在图形分类、音频处理、推荐系统和自然语言处理等场景下。
    • TensorFlow支持Linux平台,Windows平台,Mac平台、手机移动设备等各种平台
    • TensorFlow支持python、C++、java、C#等语言。
    • TensorFlow的官网提供了详细的文档、Demo、基础理论。

    ?

    2.2、 Tensorflow应用

    ?

    参考https://blog.csdn.net/luodongri/article/details/53583618

    • TensorFlow在图形分类、音频处理、推荐系统和自然语言处理等场景下都有丰富的应用。
    • 在澳大利亚(2016年),海洋生物学家与来自昆士兰大学(Queensland University)的计算机科学家合作,通过TensorFlow技术,使用探测器自动地在数以万计的航拍照片中寻找海牛。
    • 在日本,一位年轻人利用TensorFlow运用到农业上,按照黄瓜大小、形状、颜色以及其他特征来挑选黄瓜并对它们进行分类。
    • 在医学领域,发射科的医生通过采用TensorFlow,使其在医学扫描中能够识别帕金森病的迹象。
    • 湾区的数据科学家在树莓派上使用TensorFlow来追踪记录加州火车的动态。

    ?

    2.3、 Tensorflow版本

    ?

    ? ? ? TensorFlow提供基于Python语言下四个版本:CPU版本(tensorflow)、GPU加速的版本(tensorflow-gpu)、tf-nightly 和 tf-nightly-gpu。

    ?

    2.2.1、CPU版本(tensorflow)

    ?

    • CPU版本用CPU运行。
    • TensorFlow的Python版本支持Ubuntu?16.04、Windows 7、macOS?10.12.6 Sierra、Raspbian 9.0及对应的更高版本

    ?

    2.2.2、GPU版本(tensorflow-gpu)

    ?

    (1)GPU版本的特点:

    • GPU 版本需要 CUDA 和 cuDNN 的支持,如果你是独显+集显,那么推荐你用GPU版本的,因为GPU对矩阵运算有很好的支持,会加速程序执行。
    • CUDA是NVIDIA下的软件驱动,所以你的显卡最好是NVIDIA。
    • AMD的显卡没有CUDA加速。
    • GPU相对CPU版本来说,具备计算量、计算速率块等特点。
    • GPU工作在硬件层面,CPU工作在软件层面,在跑大数据时,CPU版本会更快。
    • GPU适合矩阵运算,神经网络的处理过程正好适合GPU发挥性能。

    (2)查看本机是否支持GPU(在CMD直接输入“系统信息”):

    ?

    此图像的alt属性为空;文件名为1-4-1024x510.png

    ?

    此图像的alt属性为空;文件名为1-8.png

    ?

    • 本机的Intel(R) HD Graphics是集成显卡,并没有独立的GPU,而。所以无法使用Tensorflow-GPU,也就是没有必要安装CUDA、cudnn支持软件了。
    • Intel(R) HD Graphics是集成显卡性能一般,只能玩普通的游戏,大型游戏就玩不动了。
    • 此外,你可以在cuda官网查看cuda支持的GPU型号:

    ?

    此图像的alt属性为空;文件名为1-5-1024x665.png

    ?

    (3)通过GPU-Z软件(请自己百度下载)查看本机显卡的计算能力

    ?

    此图像的alt属性为空;文件名为1-9.png

    ?

    2.4、 Tensorflow、Tensorflow-GPU 安装

    ?

    • 若是你的显卡不支持cuda/cudnn,就不需要安装Tensorflow-GPU。此时只能用CPU计算,因此只需要安装Tensorflow + Anaconda即可。
    • 若是你的显卡支持cuda/cudnn,那么可以除了安装Tensorflow + Anaconda之外,还可以安装cuda + cudnn + Tensorflow-GPU,以便提升计算速率。

    ?

    第三章、CUDA

    ?

    • CUDA是一种针对GPU的计算架构,用在GPU计算,提升计算性能。
    • 若要安装并使用CUDA,请在CUDA官网(https://developer.nvidia.com/cuda-gpus)先查看显卡是否支持CUDA。若是支持,可以在这里(https://developer.nvidia.com/cuda-downloads?target_os=Windows&target_arch=x86_64&target_version=10&target_type=exelocal)下载安装。

    ?

    此图像的alt属性为空;文件名为1-6-1024x558.png

    ?

    第四章、cudnn

    ?

    • NVIDIA的cuDNN是用于深度神经网络的GPU加速库
    • 它强调性能、易用性和低内存开销。
    • 若要安装并使用cuDNN,请先查看显卡是否支持CUDA。
    • cuDNN安装参考https://www.cnblogs.com/xueadas/p/9758017.html、https://www.cnblogs.com/guoyaohua/p/9265268.html、https://blog.csdn.net/qq_41760767/article/details/97444053。

    ?

    第五章、Anaconda

    ?

    • 由于python自身缺少numpy、matplotlib、scipy、scikit-learn....等一系列包,需要我们安装pip来导入这些包才能进行相应运算。因此Python就存在需要什么包就需要pip导入一次的缺点。
    • 所以,anaconda就可以解决这个缺点。naconda是一个python发行版,包含了大量的包,使用anaconda无需再去额外安装所需包。
    • Anaconda自带了CUDA和cudnn。若是安装了Anaconda,就不用安装CUDA和cudnn。
    • 当然,安装了CUDA和cudnn,也可以安装Anaconda。
    • Anaconda安装参考:https://www.cnblogs.com/xueadas/p/9758017.html、https://www.cnblogs.com/guoyaohua/p/9265268.html、https://blog.csdn.net/qq_41760767/article/details/97444053。

    ?

    cs