使用 TensorFlow 构建机器学习项目:6~10(3)

简介: 使用 TensorFlow 构建机器学习项目:6~10(3)

从源代码安装

现在我们来看看 TensorFlow 的最完整,对开发人员友好的安装方法。 从源代码安装将使您了解用于编译的不同工具。

安装 Git 源代码版本管理器

Git 是现有的最著名的源代码版本管理器之一,并且是 Google 选择的版本管理器,并将其代码发布在 GitHub 上。

为了下载 TensorFlow 的源代码,我们将首先安装 Git 源代码管理器:

在 Linux 中安装 Git(Ubuntu 16.04)

要在您的 Ubuntu 系统上安装 Git,请运行以下命令:

$ sudo apt-get install git

安装 Bazel 构建工具

Bazel(bazel.io)是一个构建工具,基于 Google 七年来一直使用的内部构建工具(称为 Blaze),并于 2015 年 9 月 9 日发布为 beta 版。

此外,它还用作 TensorFlow 中的主要构建工具,因此,要执行一些高级任务,需要对工具有最少的了解。

提示

与诸如 Gradle 之类的竞争项目相比,优点有所不同,主要优点是:

  • 支持多种语言,例如 C++,Java,Python 等
  • 支持创建 Android 和 iOS 应用,甚至 Docker 映像
  • 支持使用来自许多不同来源的库,例如 GitHub,Maven 等
  • 通过 API 可扩展以便添加自定义构建规则
添加 Bazel 发行版 URI 作为包源

首先,我们将 Bazel 仓库添加到可用仓库列表中,并将其各自的密钥添加到 APT 工具的配置中,该工具管理 Ubuntu 操作系统的依赖项。

$ echo "deb http://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel.list
$ curl https://storage.googleapis.com/bazel-apt/doc/apt-key.pub.gpg | sudo apt-key add -

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fE123ACD-1681565654387)(https://gitcode.net/apachecn/apachecn-dl-zh/-/raw/master/docs/build-ml-proj-tf-zh/img/00154.jpg)]

挡板安装

更新和安装 Bazel

一旦安装了所有包源,就可以通过apt-get安装 Bazel:

$ sudo apt-get update && sudo apt-get install bazel

提示

此命令将安装 Java 和大量依赖项,因此可能需要一些时间来安装它。

安装 GPU 支持(可选)

本节将教我们如何在 Linux 设置中安装支持 GPU 所需的必需包。

实际上,获得 GPU 计算支持的唯一方法是通过 CUDA。

检查 nouveau NVIDIA 显卡驱动程序是否不存在。 要对此进行测试,请执行以下命令并检查是否有任何输出:

lsmod | grep nouveau

如果没有输出,请参阅安装 CUDA 系统包。如果没有输出,请执行以下命令:

$ echo -e "blacklist nouveau\nblacklist lbm-nouveau\noptions nouveau modeset=0\nalias nouveau off\nalias lbm-nouveau off\n" | sudo tee /etc/modprobe.d/blacklist-nouveau.conf
$ echo options nouveau modeset=0 | sudo tee -a /etc/modprobe.d/nouveau-kms.conf
$ sudo update-initramfs -u
$ sudo reboot (a reboot will occur)

安装 CUDA 系统包

第一步是从仓库中安装所需的包:

sudo apt-get install -y linux-source linux-headers-`uname -r` 
nvidia-graphics-drivers-361
nvidia-cuda-dev
sudo apt install nvidia-cuda-toolkit
sudo apt-get install libcupti-dev

提示

如果要在云映像上安装 CUDA,则应在以下命令阻止之前运行此命令:

sudo apt-get install linux-image-extra-virtual
创建替代位置

当前的 TensorFlow 安装配置期望非常严格的结构,因此我们必须在文件系统上准备类似的结构。

这是我们将需要运行的命令:

sudo mkdir /usr/local/cuda
cd /usr/local/cuda
sudo ln -s /usr/lib/x86_64-linux-gnu/ lib64
sudo ln -s /usr/include/ include
sudo ln -s /usr/bin/ bin
sudo ln -s /usr/lib/x86_64-linux-gnu/ nvvm
sudo mkdir -p extras/CUPTI
cd extras/CUPTI
sudo ln -s /usr/lib/x86_64-linux-gnu/ lib64
sudo ln -s /usr/include/ include
sudo ln -s /usr/include/cuda.h /usr/local/cuda/include/cuda.h
sudo ln -s /usr/include/cublas.h /usr/local/cuda/include/cublas.h
sudo ln -s /usr/include/cudnn.h /usr/local/cuda/include/cudnn.h
sudo ln -s /usr/include/cupti.h /usr/local/cuda/extras/CUPTI/include/cupti.h
sudo ln -s /usr/lib/x86_64-linux-gnu/libcudart_static.a /usr/local/cuda/lib64/libcudart_static.a
sudo ln -s /usr/lib/x86_64-linux-gnu/libcublas.so /usr/local/cuda/lib64/libcublas.so
sudo ln -s /usr/lib/x86_64-linux-gnu/libcudart.so /usr/local/cuda/lib64/libcudart.so
sudo ln -s /usr/lib/x86_64-linux-gnu/libcudnn.so /usr/local/cuda/lib64/libcudnn.so
sudo ln -s /usr/lib/x86_64-linux-gnu/libcufft.so /usr/local/cuda/lib64/libcufft.so
sudo ln -s /usr/lib/x86_64-linux-gnu/libcupti.so /usr/local/cuda/extras/CUPTI/lib64/libcupti.so
安装 cuDNN

TensorFlow 使用附加的 cuDNN 包来加速深度神经网络操作。

然后,我们将下载cudnn包:

$ wget http://developer.download.nvidia.com/compute/redist/cudnn/v5/cudnn-7.5-linux-x64-v5.0-ga.tgz

然后,我们需要解压缩包并链接它们:

$ sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
$ sudo cp cuda/include/cudnn.h /usr/local/cuda/include/

克隆 TensorFlow 源

最后,我们完成了获取 TensorFlow 源代码的任务。

获得它就像执行以下命令一样容易:

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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8IdjlBB0-1681565654387)(https://gitcode.net/apachecn/apachecn-dl-zh/-/raw/master/docs/build-ml-proj-tf-zh/img/00155.jpg)]

Git 安装

配置 TensorFlow 构建

然后我们访问tensorflow主目录:

$ cd tensorflow

然后我们只需运行configure脚本:

$ ./configure

在下图中,您可以看到大多数问题的答案(它们几乎都是输入的,是的)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oSK8gL1r-1681565654387)(https://gitcode.net/apachecn/apachecn-dl-zh/-/raw/master/docs/build-ml-proj-tf-zh/img/00156.jpg)]

CUDA 配置

因此,我们现在准备着手进行库的建设。

提示

如果要在 AWS 上安装它,则必须执行修改后的行:

TF_UNOFFICIAL_SETTING=1 ./configure

构建 TensorFlow

在完成所有准备步骤之后,我们将最终编译 TensorFlow。 以下几行可能引起您的注意,因为它涉及到教程。 我们构建示例的原因是它包含基础安装,并提供了一种测试安装是否有效的方法。

运行以下命令:

$ bazel build -c opt --config=cuda //tensorflow/cc:tutorials_example_trainer

测试安装

现在该测试安装了。 在主tensorflow安装目录中,只需执行以下命令:

$ bazel-bin/tensorflow/cc/tutorials_example_trainer --use_gpu

这是命令输出的示例表示:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cldstM0v-1681565654387)(https://gitcode.net/apachecn/apachecn-dl-zh/-/raw/master/docs/build-ml-proj-tf-zh/img/00157.jpg)]

TensorFlow GPU 测试

Windows 安装

现在轮到 Windows 操作系统了。 首先,我们必须说这不是 TensorFlow 生态系统的首选,但是我们绝对可以使用 Windows 操作系统进行开发。

经典 Docker 工具箱方法

此方法使用经典的工具箱方法,该方法可用于大多数最新的 Windows 版本(从 Windows 7 开始,始终使用 64 位操作系统)。

提示

为了使 Docker(特别是 VirtualBox)正常工作,您需要安装 VT-X 扩展。 这是您需要在 BIOS 级别执行的任务。

安装步骤

在这里,我们将列出在 Windows 中通过 Docker 安装tensorflow所需的不同步骤。

下载 Docker 工具箱安装程序

安装程序的当前 URL 位于此链接

执行安装程序后,我们将看到第一个安装屏幕:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5F7twUWc-1681565654388)(https://gitcode.net/apachecn/apachecn-dl-zh/-/raw/master/docs/build-ml-proj-tf-zh/img/00158.jpg)]

Docker 工具箱第一个安装屏幕

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-I2X3U6pv-1681565654388)(https://gitcode.net/apachecn/apachecn-dl-zh/-/raw/master/docs/build-ml-proj-tf-zh/img/00159.jpg)]

Docker 工具箱安装程序路径选择器

然后,选择安装中需要的所有组件:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5Y3vYbuQ-1681565654388)(https://gitcode.net/apachecn/apachecn-dl-zh/-/raw/master/docs/build-ml-proj-tf-zh/img/00160.jpg)]

Docker 工具箱包选择屏幕

完成各种安装操作后,我们的 Docker 安装将准备就绪:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZlEcSwHk-1681565654388)(https://gitcode.net/apachecn/apachecn-dl-zh/-/raw/master/docs/build-ml-proj-tf-zh/img/00161.jpg)]

Docker 工具箱安装最终屏幕

创建 Docker 机器

为了创建初始机器,我们将在 Docker 终端中执行以下命令:

docker-machine create vdocker -d virtualbox

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rcYO4Yod-1681565654388)(https://gitcode.net/apachecn/apachecn-dl-zh/-/raw/master/docs/build-ml-proj-tf-zh/img/00162.jpg)]

Docker 初始映像安装

然后,在命令窗口中,键入以下内容:

FOR /f "tokens=*" %i IN ('docker-machine env --shell cmd vdocker') DO %i docker run -it b.gcr.io/tensorflow/tensorflow

这将打印并读取运行最近创建的虚拟机所需的许多变量。

最后,要安装tensorflow容器,请像在 Linux 控制台上一样从同一控制台进行操作:

docker run -it -p 8888:8888 gcr.io/tensorflow/tensorflow

提示

如果您不想执行 Jupyter,但想直接启动到控制台,则可以通过以下方式运行 Docker 映像:

run -it -p 8888:8888 gcr.io/tensorflow/tensorflow bash

MacOSX 安装

现在转到在 MacOSX 上进行安装。安装过程与 Linux 非常相似。 它们基于 OSX El Capitan 版本。 我们还将参考不支持 GPU 的 2.7 版 Python。

安装要求安装用户具有sudo特权。

安装 PIP

在此步骤中,我们将使用easy_install包管理器安装 PIP 包管理器,该包管理器包含在安装工具 Python 包中,并且默认情况下包含在操作系统中。

对于此安装,我们将在终端中执行以下操作:

$ sudo easy_install pip

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2bI1DVhh-1681565654389)(https://gitcode.net/apachecn/apachecn-dl-zh/-/raw/master/docs/build-ml-proj-tf-zh/img/00163.jpg)]

然后,我们将安装六个模块,这是一个兼容性模块,可帮助 Python 2 程序支持 Python 3 编程:

要安装six,我们执行以下命令:

sudo easy_install --upgrade six

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-D04t8h9v-1681565654389)(https://gitcode.net/apachecn/apachecn-dl-zh/-/raw/master/docs/build-ml-proj-tf-zh/img/00164.jpg)]

在安装six包之后,我们通过执行以下命令来继续安装tensorflow包:

sudo pip install -ignore-packages six https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-0.10.0-py2-none-any.whl

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZpN9xr1M-1681565654389)(https://gitcode.net/apachecn/apachecn-dl-zh/-/raw/master/docs/build-ml-proj-tf-zh/img/00165.jpg)]

然后我们调整numpy包的路径,这在 El Capitan 中是必需的:

sudo easy_install numpy

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UKGgTJfR-1681565654389)(https://gitcode.net/apachecn/apachecn-dl-zh/-/raw/master/docs/build-ml-proj-tf-zh/img/00166.jpg)]

现在我们准备导入tensorflow模块并运行一些简单的示例:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZQ86NQBw-1681565654390)(https://gitcode.net/apachecn/apachecn-dl-zh/-/raw/master/docs/build-ml-proj-tf-zh/img/00167.jpg)]

总结

在本章中,我们回顾了可以执行 TensorFlow 安装的一些主要方法。

即使可能性是有限的,每个月左右我们都会看到支持新的架构或处理器,因此我们只能期望该技术的应用领域越来越多。

相关实践学习
基于阿里云DeepGPU实例,用AI画唯美国风少女
本实验基于阿里云DeepGPU实例,使用aiacctorch加速stable-diffusion-webui,用AI画唯美国风少女,可提升性能至高至原性能的2.6倍。
相关文章
|
5天前
|
机器学习/深度学习 数据采集 人工智能
构建高效机器学习模型的五大技巧
【4月更文挑战第7天】 在数据科学迅猛发展的今天,机器学习已成为解决复杂问题的重要工具。然而,构建一个既精确又高效的机器学习模型并非易事。本文将分享五种提升机器学习模型性能的有效技巧,包括数据预处理、特征工程、模型选择、超参数调优以及交叉验证。这些方法不仅能帮助初学者快速提高模型准确度,也为经验丰富的数据科学家提供了进一步提升模型性能的思路。
|
18天前
|
机器学习/深度学习 人工智能 前端开发
机器学习PAI常见问题之web ui 项目启动后页面打不开如何解决
PAI(平台为智能,Platform for Artificial Intelligence)是阿里云提供的一个全面的人工智能开发平台,旨在为开发者提供机器学习、深度学习等人工智能技术的模型训练、优化和部署服务。以下是PAI平台使用中的一些常见问题及其答案汇总,帮助用户解决在使用过程中遇到的问题。
|
18天前
|
机器学习/深度学习 数据采集 监控
大模型开发:描述一个典型的机器学习项目流程。
机器学习项目涉及问题定义、数据收集、预处理、特征工程、模型选择、训练、评估、优化、部署和监控。每个阶段都是确保模型有效可靠的关键,需要细致操作。
13 0
|
20天前
|
机器学习/深度学习 数据采集 算法
构建高效机器学习模型:从数据预处理到模型优化
在机器学习的实践中,构建一个高效的模型并非一蹴而就。本文将深入探讨如何通过精确的数据预处理、合理的特征选择、适当的模型构建以及细致的参数调优来提升模型的性能。我们将讨论数据清洗的重要性,探索特征工程的策略,分析不同算法的适用场景,并分享模型调参的实用技巧。目标是为读者提供一套系统的方法论,以指导他们在构建机器学习模型时能够更加高效和目标明确。
22 3
|
20天前
|
机器学习/深度学习 数据采集 自然语言处理
构建高效机器学习模型:从数据处理到性能优化
在数据驱动的时代,构建高效的机器学习模型已经成为解决复杂问题的关键手段。本文将详细讨论如何通过有效的数据处理、特征工程、模型选择以及性能优化策略来构建一个高效的机器学习模型。我们将重点关注数据处理的重要性,特征选择的影响,以及如何通过调整模型参数和采用集成学习方法来提高模型的性能。我们的目标是为读者提供一套实用的指南,帮助他们在构建自己的机器学习模型时能够更加高效和有效。
|
9天前
|
机器学习/深度学习 数据采集 算法
构建高效机器学习模型的最佳实践
【4月更文挑战第3天】在数据驱动的时代,构建高效的机器学习模型已成为解决复杂问题的关键。本文将探讨一系列实用的技术策略,旨在提高模型的性能和泛化能力。我们将从数据预处理、特征工程、模型选择、超参数调优到集成学习等方面进行详细讨论,并通过实例分析展示如何在实践中应用这些策略。
14 1
|
20天前
|
机器学习/深度学习 数据采集 自然语言处理
构建高效机器学习模型:从数据预处理到模型优化
在机器学习的实践中,一个精确且高效的模型是成功解决问题的关键。本文将深入探讨如何从原始数据的收集与处理开始,通过选择合适的算法,再到模型的训练与优化,最终构建出一个高性能的机器学习模型。我们将讨论数据预处理的重要性、特征工程的策略、常用机器学习算法的选择标准以及超参数调整的最佳实践。通过案例分析和技术讲解,本文旨在为读者提供一个清晰的构建高效机器学习模型的蓝图。
|
7天前
|
机器学习/深度学习 数据采集 算法
构建高效机器学习模型:从数据预处理到模型优化
【4月更文挑战第5天】 在机器学习领域,构建一个高效的模型并非易事。它涉及多个阶段,包括数据预处理、特征工程、模型选择、训练以及最终的评估和优化。本文深入探讨了如何通过精确的数据预处理技巧和细致的特征工程来提升模型性能,同时介绍了几种常见的模型优化策略。我们的目标是为读者提供一套实用的指导方案,帮助他们在面对复杂数据集时能够有效地构建和调整机器学习模型。
|
8天前
|
机器学习/深度学习 算法 数据挖掘
构建高效机器学习模型:从特征工程到模型调优
【4月更文挑战第4天】在数据驱动的时代,构建一个高效的机器学习模型是解决复杂问题的关键。本文将深入探讨特征工程的重要性,并分享如何通过自动化技术进行特征选择与构造。接着,我们将讨论不同的机器学习算法及其适用场景,并提供模型训练、验证和测试的最佳实践。最后,文章将展示如何使用网格搜索和交叉验证来微调模型参数,以达到最优性能。读者将获得一套完整的指南,用以提升机器学习项目的预测准确率和泛化能力。
|
18天前
|
机器学习/深度学习 数据采集 分布式计算
构建高效机器学习模型的策略与实践
在机器学习领域,构建一个高效的模型并非易事。它要求我们不仅对数据科学有深刻的理解,还要精通算法选择、数据处理和系统优化等多方面的知识。本文将深入探讨如何通过合理的数据预处理、特征工程、模型选择和调参策略,以及最终的部署优化,来构建出一个既准确又高效的机器学习模型。我们将透过案例分析,总结出一系列实用的技术和方法,旨在帮助读者提升模型性能并应对现实世界中的挑战。

热门文章

最新文章