《面向机器智能的TensorFlow实践》一 2.8 测试TensorFlow、Jupyter Notebook及matplotlib

简介:

本节书摘来自华章出版社《面向机器智能的TensorFlow实践》一书中的第2章,第2.8节,作者 山姆·亚伯拉罕(Sam Abrahams)丹尼亚尔·哈夫纳(Danijar Hafner)[美] 埃里克·厄威特(Erik Erwitt)阿里尔·斯卡尔皮内里(Ariel Scarpinelli),更多章节内容可以访问云栖社区“华章计算机”公众号查看。





2.8 测试TensorFlow、Jupyter Notebook及matplotlib

下面通过一些虚设代码来复查所有软件是否都能正常工作。创建一个名为“tf-notebooks”的目录以便进行测试。进入该目录,并运行Jupyter Notebook。同样,请确保“tensorflow”环境处于活动状态。

 

最后一条命令将启动一个Jupyter Notebook服务器,并在你默认的网页浏览器中打开该软件。假设tf-notebooks目录下没有任何文件,那么将看到一个空的工作空间,以及消息“Notebook list is empty”。要创建新的笔记,可单击页面右上角的“New”按钮,然后选择“Python 2”或“Python 3”,具体选择哪个取决于安装TensorFlow时使用的是哪个版本的Python。

 

新笔记将自动打开,呈现在眼前的将是一块用于工作的白板。下面为这个笔记设置一个新名称。在页面的顶端单击“Untitled”。

 

之后会弹出一个用于对笔记本重命名的窗口,也可用于修改笔记本文件的名称(扩展名为.ipynb)。你可使用任何自己喜欢的名称,在本例中笔者将其命名为“My First Notebook”:

 

下面来看实际的界面。我们注意到旁边有一个“In [ ]:”方块的空单元格,你可在该单元格内直接键入代码,而且它可容纳多行代码。下面将TensorFlow、NumPy以及matplotlib的pyplot模块导入该笔记本:

 

 

要运行该单元格,只需同时按下shift键和回车键。该单元格中的代码执行完成后,其下方会自动创建一个新的单元格。我们注意到左边方框中的提示符变成了“In [1]:”,这意味着该单元格是在内核中运行的第一个代码块。在该笔记本中键入下列代码,使用单元格的数量取决于你的需求。你可利用单元格中的分隔符将相关代码很自然地组织在一起。

 

 

 

下面这行代码非常特殊,值得专门介绍:

 

这是一条专门的命令,用于通知笔记本将matplotlib图表直接显示在浏览器中。

下面逐行分析其余代码,如果你不理解某些术语,请不必担心,后面章节还会一一进行讲解:

1)用TensorFlow定义一个由随机数构成的2×20的矩阵,并将其赋给变量a。

2)启动TensorFlow Session,并将其赋予一个sess对象。

3)用sess.run()方法执行对象a,并将输出(NumPy数组)赋给out。

4)将这个2×20的矩阵划分为两个1×10的向量x和y。

5)利用pyplot模块绘制散点图,x对应横轴,y对应纵轴。

如果所有软件均已正确安装,你将得到与上图类似的输出结果。这虽然只是向前迈出的小小一步,但我们毕竟已经开始上手尝试TensorFlow,但愿这能给你带来一个良好的体验。

要想通过更多、更全面的教程了解Jupyter Notebook的细节,请参考如下页面中的示例:

http://jupyter-notebook.readthedocs.io/en/latest/examples/Notebook/examples_index.htm

相关文章
|
7月前
|
机器学习/深度学习 搜索推荐 算法
推荐系统离线评估方法和评估指标,以及在推荐服务器内部实现A/B测试和解决A/B测试资源紧张的方法。还介绍了如何在TensorFlow中进行模型离线评估实践。
推荐系统离线评估方法和评估指标,以及在推荐服务器内部实现A/B测试和解决A/B测试资源紧张的方法。还介绍了如何在TensorFlow中进行模型离线评估实践。
442 0
|
4月前
|
自然语言处理 C# 开发者
Uno Platform多语言开发秘籍大公开:轻松驾驭全球用户,一键切换语言,让你的应用成为跨文化交流的桥梁!
【8月更文挑战第31天】Uno Platform 是一个强大的开源框架,允许使用 C# 和 XAML 构建跨平台的原生移动、Web 和桌面应用程序。本文详细介绍如何通过 Uno Platform 创建多语言应用,包括准备工作、设置多语言资源、XAML 中引用资源、C# 中加载资源以及处理语言更改。通过简单的步骤和示例代码,帮助开发者轻松实现应用的国际化。
44 1
|
4月前
|
持续交付 测试技术 jenkins
JSF 邂逅持续集成,紧跟技术热点潮流,开启高效开发之旅,引发开发者强烈情感共鸣
【8月更文挑战第31天】在快速发展的软件开发领域,JavaServer Faces(JSF)这一强大的Java Web应用框架与持续集成(CI)结合,可显著提升开发效率及软件质量。持续集成通过频繁的代码集成及自动化构建测试,实现快速反馈、高质量代码、加强团队协作及简化部署流程。以Jenkins为例,配合Maven或Gradle,可轻松搭建JSF项目的CI环境,通过JUnit和Selenium编写自动化测试,确保每次构建的稳定性和正确性。
65 0
|
4月前
|
UED 存储 数据管理
深度解析 Uno Platform 离线状态处理技巧:从网络检测到本地存储同步,全方位提升跨平台应用在无网环境下的用户体验与数据管理策略
【8月更文挑战第31天】处理离线状态下的用户体验是现代应用开发的关键。本文通过在线笔记应用案例,介绍如何使用 Uno Platform 优雅地应对离线状态。首先,利用 `NetworkInformation` 类检测网络状态;其次,使用 SQLite 实现离线存储;然后,在网络恢复时同步数据;最后,通过 UI 反馈提升用户体验。
106 0
|
4月前
|
机器学习/深度学习 人工智能 自然语言处理
【人工智能】TensorFlow简介,应用场景,使用方法以及项目实践及案例分析,附带源代码
TensorFlow是由Google Brain团队开发的开源机器学习库,广泛用于各种复杂的数学计算,特别是涉及深度学习的计算。它提供了丰富的工具和资源,用于构建和训练机器学习模型。TensorFlow的核心是计算图(Computation Graph),这是一种用于表示计算流程的图结构,由节点(代表操作)和边(代表数据流)组成。
89 0
|
7月前
|
机器学习/深度学习 自然语言处理 TensorFlow
构建高效的机器学习模型:基于Python和TensorFlow的实践
构建高效的机器学习模型:基于Python和TensorFlow的实践
82 0
|
7月前
|
机器学习/深度学习 人工智能 自然语言处理
TensorFlow在自然语言处理中的实践
【4月更文挑战第17天】本文探讨了TensorFlow在自然语言处理(NLP)中的应用,包括文本预处理、特征表示、模型构建、训练与评估。TensorFlow提供工具简化文本预处理,如`tf.text`模块进行分词。利用`Tokenizer`和`to_categorical`进行特征表示。通过`Embedding`、`LSTM`等构建模型,并用`model.fit`和`model.evaluate`训练及评估。实践中,可借助预训练词嵌入、序列填充、注意力机制和迁移学习提升性能。TensorFlow为NLP任务提供了高效解决方案,未来潜力无限。
|
7月前
|
机器学习/深度学习 PyTorch TensorFlow
NumPy与TensorFlow/PyTorch的集成实践
【4月更文挑战第17天】本文探讨了NumPy与主流深度学习框架TensorFlow和PyTorch的集成实践,阐述了它们如何通过便捷的数据转换提升开发效率和模型性能。在TensorFlow中,NumPy数组可轻松转为Tensor,反之亦然,便于原型设计和大规模训练。PyTorch的张量与NumPy数组在内存中共享,实现无缝转换。尽管集成带来了性能和内存管理的考量,但这种结合为机器学习流程提供了强大支持,促进了AI技术的发展。
|
7月前
|
机器学习/深度学习 PyTorch TensorFlow
【TensorFlow】TF介绍及代码实践
【4月更文挑战第1天】TF简介及代码示例学习
103 0
|
7月前
|
TensorFlow 算法框架/工具 数据安全/隐私保护
如何在云服务器使用docker快速部署jupyter web服务器(Nginx+docker+jupyter+tensorflow)
如何在云服务器使用docker快速部署jupyter web服务器(Nginx+docker+jupyter+tensorflow)
241 0