《Web安全之机器学习入门》一 2.2 TensorFlow简介与环境搭建

2.2 TensorFlow简介与环境搭建

TensorFlow是一个采用数据流图、用于数值计算的开源软件库(见图2-5)。节点在图中表示数学操作,图中的线则表示在节点间相互联系的多维数据数组,即张量。它灵活的架构使你可以在多种平台上展开计算,例如台式计算机中的一个或多个CPU(或GPU)、 服务器、移动设备等等。TensorFlow 最初由Google大脑小组(隶属于Google机器智能研究机构)的研究员和工程师们开发出来,用于机器学习和深度神经网络方面的研究,但这个系统的通用性使其也可广泛用于其他计算领域。

TensorFlow的特点:
高度的灵活性;
真正的可移植性;
将科研和产品联系在一起;
自动求微分;
多语言支持;
性能最优化。
安装方法如下:

# 仅使用 CPU 的版本
$ pip install https:
//storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.5.0-cp27-none-linux_x86_64.whl
# 开启 GPU 支持的版本 (安装该版本的前提是已经安装了 CUDA sdk)
$ pip install https:
//storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.5.0-cp27-none-linux_x86_64.whl

我们推荐使用 virtualenv 创建一个隔离的容器来安装 TensorFlow,这样做能使排查安装问题变得更容易。
首先,安装所有必备工具:

# 在 Linux 上:
$ sudo apt-get install python-pip python-dev python-virtualenv
# 在 Mac 上:
$ sudo easy_install pip  # 如果还没有安装 pip
$ sudo pip install --upgrade virtualenv

接下来,建立一个全新的 virtualenv 环境。为了将环境建在 ~/tensorflow 目录下,执行:

$ virtualenv --system-site-packages ~/tensorflow
$ cd ~/tensorflow

然后,激活 virtualenv:

$ source bin/activate  # 如果使用 bash
$ source bin/activate.csh  # 如果使用 csh
(tensorflow)$  # 终端提示符应该发生变化

在 virtualenv 内,安装 TensorFlow:

(tensorflow)$ pip install –U TensorFlow

当使用完 TensorFlow:

(tensorflow)$ deactivate  # 停用 virtualenv
时间: 2024-11-03 05:43:49

《Web安全之机器学习入门》一 2.2 TensorFlow简介与环境搭建的相关文章

《Web安全之机器学习入门》一 导读

前 言 近几年,人工智能无疑成为人们口中的热点话题,先是谷歌的AlphaGo,后有百度的度秘.无人车,微软必应搜索推出的小冰.这一系列人工智能产品的推陈出新,令人眼花缭乱,一时间给人的感觉是人工智能遍地开花.无论人们接受还是不接受,人工智能都在迅速渗透各行各业.网络安全相比之下是一个传统行业,基于规则以及黑白名单的检测技术已经发展到了一定的瓶颈,而利益驱动的黑产团伙,其技术的发展已经远远超乎我们的想象.如何借助人工智能的力量,提升安全行业的整体检测与防护能力,成为各大安全厂商研究的课题.在国内安

《Web安全之机器学习入门》一 第2章 打造机器学习工具箱

第2章 打造机器学习工具箱 在机器学习领域,Python语言可以大展身手,因为Python的设计哲学是"优雅.明确.简单".Python开发者的哲学是"用一种方法,最好是只有一种方法来做一件事".在设计Python语言时,如果面临多种选择,Python开发者一般会拒绝花俏的语法,而选择明确的没有或者很少有歧义的语法.由于这种设计观念的影响,Python源代码具备更好的可读性,并且能够支撑大规模的软件开发.几乎在任何涉及软件开发的领域都可以看到Python的身影,在机

《Web安全之机器学习入门》一 3.2 数据集

3.2 数据集 数据集合和算法就像黄油和面包一样缺一不可,很多时候数据比算法还要重要.本书的例子涉及的数据主要来自多年搜集的开源数据集合以及部分脱敏的测试数据. 3.2.1 KDD 99数据 KDD是知识发现与数据挖掘(Knowledge Discovery and Data Mining)的简称,KDD CUP是由ACM组织的年度竞赛如图3-1所示.KDD 99 数据集就是KDD竞赛在1999年举行时采用的数据集. 1998年美国国防部高级研究计划局(DARPA)在MIT林肯实验室进行了一个入

《Web安全之机器学习入门》一 3.5 本章小结

3.5 本章小结 本章在一定程度上科普了机器学习的常见概念,并介绍了后面章节将频繁使用的一些知名数据集,我们在后面章节将频繁和这些数据打交道.本章并没有详细讲解各种概念的定义,如果对机器学习的基本概念还是很模糊,也没有关系,通过后面章节的学习,我们会不断加深对这些概念的理解. 参考资源 我写作本章时参考了以下网站,读者要想进一步学习,欢迎到这些网站进一步了解更多信息: http://kdd.ics.uci.edu/databases/kddcup99/kddcup99.html http://b

《Web安全之机器学习入门》一 3.3 特征提取

3.3 特征提取 机器学习中,特征提取被认为是个体力活,有人形象地称为"特征工程",可见其工作量之大.特征提取中数字型和文本型特征的提取最为常见. 3.3.1 数字型特征提取 数字型特征可以直接作为特征,但是对于一个多维的特征,某一个特征的取值范围特别大,很可能导致其他特征对结果的影响被忽略,这时候我们需要对数字型特征进行预处理,常见的预处理方式有以下几种. 1.标准化: >>> from sklearn import preprocessing >>&g

《Web安全之机器学习入门》一 2.1 Python在机器学习领域的优势

2.1 Python在机器学习领域的优势 Python在机器学习领域应用广泛(如图2-1所示),我认为主要原因有两个: 语法简单,功能强大: 生态完整,具备丰富的第三方库,对应的机器学习库非常丰富. 下面将重点介绍四个库. 2.1.1 NumPy NumPy是Python的一种开源的数值计算扩展.这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表结构要高效的多. NumPy包括: 一个强大的N维数组对象Array: 比较成熟的(广播)函数库: 用于整合C/C++和Fortran代码的

《Web安全之机器学习入门》一 1.1 人工智能、机器学习与深度学习

1.1 人工智能.机器学习与深度学习 如今,人工智能.机器学习与深度学习几乎成了家喻户晓的名词,究竟这三者之间有什么联系和区别呢? 通常认为,机器学习是实现人工智能的主要方式,人类基于机器学习以及海量的数据,逐步实现人工智能,其中深度学习是机器学习的一个分支.如果用同心圆来表示三者的范围,那么人工智能是最外面的一个圆,深度学习是最里面的圆.人可以在1秒以内做出的判断,都可以用机器来实现,而且机器可以同时完成成百上千人1秒内可以做出的判断,这就是人工智能.

《Web安全之机器学习入门》一 3.1 机器学习基本概念

3.1 机器学习基本概念 1.有监督学习:对具有概念标记(分类)的训练样本进行学习,以便尽可能对训练样本集外的数据进行标记(分类)预测.这里,所有的标记(分类)是已知的.因此,训练样本的歧义性低.2.无监督学习:对没有概念标记(分类)的训练样本进行学习,以便发现训练样本集中的结构性知识.这里,所有的标记(分类)是未知的.因此,训练样本的歧义性高.聚类就是典型的无监督学习.3.准确率与召回率:信息检索.分类.识别.翻译等领域中有两个最基本指标:召回率(Recall Rate)和准确率(Precis

《Web安全之机器学习入门》一 2.3 本章小结

2.3 本章小结 本章介绍了常见的机器学习工具,并给出了基本的安装过程.几乎再难以找到一门语言可以像Python这样受欢迎,机器学习领域尤其如此.现在我们已经打造出了自己的机器学习工具箱,让我们开启机器学习之旅吧!参考资源我写作本章时参考了以下网站,读者要想进一步学习,欢迎到这些网站进一步了解更多信息: http://www.numpy.org/ https://www.scipy.org/ http://www.nltk.org/ http://scikit-learn.org/stable/