入门系列之在Ubuntu 16.04上

发布时间:2019-09-25 08:14:31编辑:auto阅读(1576)

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~

    本文由谢鸢 发表于云+社区专栏

    介绍

    TensorFlow是一款由Google构建的用于训练神经网络的开源机器学习软件。TensorFlow的神经网络以有状态数据流图的形式表示。图中的每个节点表示神经网络在多维阵列上执行的操作。这些多维数组通常称为“张量”,因此称为TensorFlow。

    TensorFlow架构允许在台式机,服务器或移动设备中的多个CPU或GPU上进行部署。还有与Nvidia的并行计算平台CUDA集成的扩展。这使得在GPU上部署的用户可以直接访问并行计算任务所需的虚拟指令集和GPU的其他元素。

    在本教程中,您将安装TensorFlow的“仅CPU支持”版本。此安装非常适合TensorFlow初学者,CPU版本不需要Nvidia显卡。

    您可以通过多种方式安装TensorFlow。每种方法都有不同的用例和开发环境:

    • Python和Virtualenv:在这种方法中,您可以安装TensorFlow以及在Python虚拟环境中使用TensorFlow所需的所有软件包。这将您的TensorFlow环境与同一台机器上的其他Python程序隔离开来。
    • Native pip:在此方法中,您在全局系统上安装TensorFlow。对于想要在多用户系统上为每个人提供TensorFlow的人,建议使用此方法。此安装方法不会在包含的环境中隔离TensorFlow,并且可能会干扰其他Python安装或库。
    • Docker:Docker是一个容器运行时环境,它将其内容与系统上预先存在的包完全隔离。在此方法中,您使用包含TensorFlow及其所有依赖项的Docker容器。此方法非常适合将TensorFlow合并到已使用Docker的更大应用程序体系结构中。但是,Docker镜像的大小会非常大。

    在本教程中,您将在Python虚拟环境 virtualenv中安装TensorFlow。这种方法隔离了TensorFlow安装并快速启动和运行。完成安装后,您将通过运行简短的TensorFlow程序验证安装,然后使用TensorFlow进行图像识别。

    准备

    在开始本教程之前,您需要以下内容:

    • 一台 RAM 至少是 1G 的Ubuntu 16.04 服务器
    • 一个可以使用sudo命令的账户
    • Python 3.3或更高版本并且已安装virtualenv
    • 安装了Git

    没有服务器的用户可以直接在腾讯云实验室Ubuntu服务器体验Tensorflow的安装过程。

    第1步 - 安装TensorFlow

    在此步骤中,我们将创建一个虚拟环境并安装TensorFlow。

    首先,创建一个名为tf-demo的项目目录:

    mkdir ~/tf-demo

    导航到新创建的tf-demo目录:

    cd ~/tf-demo

    然后创建一个名为tensorflow-dev的新虚拟环境。运行以下命令以创建环境:

    python3 -m venv tensorflow-dev

    这将创建一个新tensorflow-dev目录,其中包含您在激活此环境时安装的所有软件包。它还包括pip和一个独立版本的Python。

    现在激活您的虚拟环境:

    source tensorflow-dev/bin/activate

    激活后,您将在终端中看到与此类似的内容:

    (tensorflow-dev)username@hostname:~/tf-demo $

    现在,您可以在虚拟环境中安装TensorFlow。

    运行以下命令安装并升级到PyPi中可用的最新版本的TensorFlow :

    pip3 install --upgrade tensorflow

    TensorFlow将会安装:

    Collecting tensorflow
      Downloading tensorflow-1.4.0-cp36-cp36m-macosx_10_11_x86_64.whl (39.3MB)
        100% |████████████████████████████████| 39.3MB 35kB/s
    
    ...
    
    Successfully installed bleach-1.5.0 enum34-1.1.6 html5lib-0.9999999 markdown-2.6.9 numpy-1.13.3 protobuf-3.5.0.post1 setuptools-38.2.3 six-1.11.0 tensorflow-1.4.0 tensorflow-tensorboard-0.4.0rc3 werkzeug-0.12.2 wheel-0.30.0

    如果您想随时停用虚拟环境,则命令为:deactivate要在以后重新激活环境,请导航到项目目录source tensorflow-dev/bin/activate并运行。

    现在,您已经安装了TensorFlow,让我们确保TensorFlow安装正常。

    第2步 - 验证安装

    为了验证TensorFlow的安装,我们将在TensorFlow中以非root用户身份运行一个简单的程序。我们将使用规范初学者的例子“Hello,world!” 作为一种验证形式。我们将使用Python的交互式控制台创建此程序,而不是创建Python文件。

    要编写程序,请启动Python解释器:

    python

    您将在终端中看到以下提示

    >>>

    这是Python解释器的提示,它表明它已准备好开始输入一些Python语句。

    首先,输入此行以导入TensorFlow包并使其可用作本地变量tf。输入代码行后按ENTER

    import tensorflow as tf

    接下来,添加以下代码行来设置消息“Hello,world!”:

    hello = tf.constant("Hello, world!")

    然后创建一个新的TensorFlow会话并将其分配给变量sess

    sess = tf.Session()

    注意:根据您的环境,您可能会看到以下输出:

    2017-06-18 16:22:45.956946: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.1 instructions, but these are available on your machine and could speed up CPU computations.
    2017-06-18 16:22:45.957158: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.2 instructions, but these are available on your machine and could speed up CPU computations.
    2017-06-18 16:22:45.957282: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX instructions, but these are available on your machine and could speed up CPU computations.
    2017-06-18 16:22:45.957404: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX2 instructions, but these are available on your machine and could speed up CPU computations.
    2017-06-18 16:22:45.957527: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use FMA instructions, but these are available on your machine and could speed up CPU computations.

    这告诉您,您有一个可能针对TensorFlow进行优化以获得更好性能的指令集。如果你看到这个,你可以放心地忽略它并继续。

    最后,输入这行代码打印出hello

    print(sess.run(hello))

    您将在控制台中看到此输出:

    Hello, world!

    这表明一切正常,您可以开始使用TensorFlow来做一些更有趣的事情。

    按下CTRL+D退出Python交互式控制台。

    现在让我们使用TensorFlow的图像识别API来更熟悉TensorFlow。

    第3步 - 使用TensorFlow进行图像识别

    现在已经安装了TensorFlow并且您通过运行一个简单的程序验证了它,让我们来看看TensorFlow的图像识别功能。为了对图像进行分类,您需要训练模型。然后你需要编写一些代码来使用该模型。要了解有关这些概念的更多信息,您可以查看腾讯云学院人工智能课程的相关内容。

    腾讯云社区提供了TensorFlow中文开发者手册,包括代码和用于分类图像的训练模型。

    使用Git将TensorFlow模型库从GitHub克隆到项目目录中:

    git clone https://github.com/tensorflow/models.git

    当Git将存储库检出到一个名为models的新文件夹时,您将看到以下输出:

    Cloning into 'models'...
    remote: Counting objects: 8785, done.
    remote: Total 8785 (delta 0), reused 0 (delta 0), pack-reused 8785
    Receiving objects: 100% (8785/8785), 203.16 MiB | 24.16 MiB/s, done.
    Resolving deltas: 100% (4942/4942), done.
    Checking connectivity... done.

    切换到models/tutorials/image/imagenet目录:

    cd models/tutorials/image/imagenet

    此目录包含classify_image.py使用TensorFlow识别图像的文件。该程序从tensorflow.org第一次运行开始下载训练好的模型。下载此模型需要您的磁盘上有200MB的可用空间。

    在这个例子中,我们将对Panda的预先提供的图像进行分类。执行此命令以运行映像分类器程序:

    python classify_image.py

    您将看到类似于此的输出:

    giant panda, panda, panda bear, coon bear, Ailuropoda melanoleuca (score = 0.89107)
    indri, indris, Indri indri, Indri brevicaudatus (score = 0.00779)
    lesser panda, red panda, panda, bear cat, cat bear, Ailurus fulgens (score = 0.00296)
    custard apple (score = 0.00147)
    earthstar (score = 0.00117)

    您已使用TensorFlow的图像识别功能对第一张图像进行了分类。

    如果您想使用其他图像,可以通过-- image_filepython3 classify_image.py命令中添加参数来完成此操作。对于参数,您将传入图像文件的绝对路径

    结论

    您已经在Python虚拟环境中安装了TensorFlow,并通过运行几个示例验证了TensorFlow的工作原理。腾讯云还有其他的相关主题,包括深度学习与计算机视觉神经网络系列

    腾讯云实验室提供Tensorflow系列实验室,省去配置环境可以直接在平台上机学习Tensorflow。


    参考文献:《How To Install and Use TensorFlow on Ubuntu 16.04》

    问答

    在Ubuntu上安装cassandra?

    相关阅读

    如何在CVM上设置SSH仅作文件传输

    如何备份你的MySQL数据库

    MySQL 8.0 版本功能变更介绍

    此文已由作者授权腾讯云+社区发布,原文链接:https://cloud.tencent.com/dev...

    欢迎大家前往腾讯云+社区或关注云加社区微信公众号(QcloudCommunity),第一时间获取更多海量技术实践干货哦~

    海量技术实践经验,尽在云加社区

关键字