|
|
51CTO旗下网站
|
|
移动端

1.1.1 张量的属性——阶、形状和类型

《TensorFlow机器学习项目实战》第1章探索和转换数据,本章探索和转换数据,帮助读者理解TensorFlow应用程序的主要组件和其包含的主要的数据探索方法。本节为大家介绍张量的属性——阶、形状和类型。

作者:姚鹏鹏 译来源:人民邮电出版社|2018-01-30 15:57

【线上直播】11月21日晚8点贝壳技术总监侯圣文《数据安全之数据库安全黄金法则》

1.1.1 张量的属性——阶、形状和类型

之前已经介绍过,TensorFlow使用张量数据结构来表征所有的数据。所有的张量都有一个静态的类型和动态的维数。所以你能够实时地改变一个张量的内部结构。

张量的另一个属性就是只有张量类型的对象才能在计算图的节点中传递。

我们开始来讨论张量的其他属性(从此处开始,我们所有说的张量都是TensorFlow中的张量对象)。

1.张量的阶

张量的阶(rank)表征了张量的维度,但是跟矩阵的秩(rank)不一样。它表示张量的维度的质量。

阶为1的张量等价于向量,阶为2的向量等价于矩阵。对于一个阶为2的张量,通过t[i, j]就能获取它的每个元素。对于一个阶为3的张量,需要通过t[i, j, k]进行寻址,以此类推,见表1-2。

表1-2 张量的阶

在下面这个例子中,我们创建了一个张量,并获取其元素:

  1. >>> import tensorflow as tf  
  2. >>> tens1 = tf.constant([[[1,2],[2,3]],[[3,4],[5,6]]])  
  3. >>> print sess.run(tens1)[1,1,0]  

这个张量的阶是3,因为该张量包含的矩阵中的每个元素,都是一个向量。

2.张量的形状

TensorFlow文档使用三个术语来描述张量的维度:阶(rank),形状(shape)和维数(dimension number)。表1-3展示了它们彼此之间的关系。

表1-3 三者之间的关系

图1-1的例子中,我们创建了一个三阶张量,并打印出它的形状。

3.张量的数据类型

除了维度,张量还有一个确定的数据类型。你可以把表1-4中的任意一个类型指派给向量。

表1-4 张量数据类型


喜欢的朋友可以添加我们的微信账号:

51CTO读书频道二维码


51CTO读书频道活动讨论群:365934973

【责任编辑:book TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

活学活用 Ubuntu Server

活学活用 Ubuntu Server

实战直通车
共35章 | UbuntuServer

216人订阅学习

Java EE速成指南

Java EE速成指南

掌握Java核心
共30章 | 51CTO王波

83人订阅学习

Mysql DBA修炼之路

Mysql DBA修炼之路

MySQL入门到高阶
共24章 | 武凤涛

468人订阅学习

读 书 +更多

精通SOA:基于服务总线的Struts+EJB+Web Service

Java的出现,实现了跨操作系统平台的程序开发,以Java为基础的J2EE技术已经成为因特网服务技术的主流。然而,以J2EE为基础的SOA架构技术必...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO播客