1. 为什么有多个维度?

几维/阶张量,是说它的基坐标有几个的张量。如:

0维张量(tensor of rank 0),就是标量,是说它的基向量是0组,也就是说,没有基向量,这样,就是没有方向的数字,就是标量。

1维张量(tensor of rank 1),就是向量。它的基向量是1组,能够表示方向(基坐标的方向)和长度(数字),这个就是向量。

2维张量(tensor of rank 2),就是矩阵。他的基向量是2组。为什么是两个呢?是为了描述更多的物理场景。比如说,我们要描述一个平面上受力这样一个物理场景。那么,我们知道,一个平面可以通过一个向量来表示。那么,我们可以通过一个向量来表示出这个平面了。但是受力呢,怎么表示?所以,我们需要引入第二个向量,来表示受力的方向+大小。这样,通过两个向量,可以表示出来“一个平面上受力”这样的物理场景了。

同样的,还可以扩展到更高维度的张量。

所以,可以看到,几维的tensor,就是表示基向量的个数是几,也就是基坐标是有几组。

具体可以看https://www.zhihu.com/question/23720923/answer/32739132 这个里面,White Pillow发的youtube的解释的翻译截图。

2. 坐标系无关是什么?

张量的目的,是为了解决同一个物理事件,在多坐标系下的描述不同的问题。

举个简单的例子,一个物体的运动速度是10KM/小时。这个坐标系是KM/小时,量是10。那么,A在这个坐标系上看,就知道这个是什么样的运动速度。但如果另一个人B用其他的坐标系,假设是KM/秒,那么,他看到的就是10/3600KM/秒=0.00278KM/秒。这样,A看到的是10KM/小时,B看到的是0.00278KM/秒,我们说,实质上这两个是一样的,但两个人看到的数据就是不同的,一个是10,一个是0.00278。这两个坐标系之间,是可以通过乘以或者除以3600来做线性变换的。所以,为了摒除坐标系的影响,取一个和坐标系无关的量。这个量,就是张量tensor。

但具体这个张量怎么弄?为什么和坐标系无关还能表示出来?我也没有看到好的解释来理解。

上面的速度的例子,是一维的。更高维度的,也是一样。只不过是变成了矩阵的变换。

3. 机器学习中的tensorflow和物理中的tensor啥关系?

按照我搜索的资料,貌似没啥关系。

Tensorflow中的tensor,浅显一点的话,更多的理解成矩阵就可以了。

如:

0维张量,是标量,就是一个数字。

1维张量,是向量。

2维张量,是矩阵。

3维张量,如,时间序列数据,股价,文本数据,彩色图片(RGB)等。

这里有一些存储在各种类型张量的功用数据集类型:

3维,时间序列。

4维,图像。

5维,视频。

更多的维度就还没看到。

而tensorflow的设计,就是为了各种多维度的数据处理。这些数据可以是0维tensor,1维tensor,还有可能是更高维度的tensor。所以tensorflow中的tensor,需要用一个张量这个更加比标量、向量、矩阵来往更高维度扩张的一个更抽象的概念来把他们都囊括。否则,叫标量flow,向量flow,矩阵flow这样的名字,都不能完整的表达这个意思。所以,叫tensorflow,只是取了这个tensor的概念,可以把他们都囊括进来,没有物理中的tensor那么多的物理含义。至于为什么叫flow,是因为这个需要建立一个图graph,tensor在图中各个节点之间流动来进行计算。

引用:

Alright, what's with the name?…The name TensorFlow comes from the design of the system.…TensorFlow is designed to work with large data sets…made up of many different individual attributes.…Any data that you want to process with TensorFlow…has to be stored in the multi-dimensional array.…These multi-dimensional arrays are also called tensors.…To run operations on the data set,…you construct a computational graph…similar to a flow chart…that determines how data flows…from one operation to the next.…

So it's called TensorFlow…because you're defining how data or tensors…will flow through the system.…

参考:

https://www.zhihu.com/question/20695804/answer/43265860

https://www.zhihu.com/question/20695804/answer/76486670

https://blog.csdn.net/qq_31821675/article/details/79188449

https://www.lynda.com/Google-TensorFlow-tutorials/Why-it-called-TensorFlow/601800/647722-4.html

什么是张量(tensor)?相关推荐

  1. Pytorch张量tensor的使用

    1. 张量Tensor Tensors张量: 张量的概念类似于Numpy中的ndarray数据结构, 最大的区别在于Tensor可以利用GPU的加速功能. 张量是一个统称,其中包含很多类型:   [各 ...

  2. tensor转换为图片_pytorch 实现张量tensor,图片,CPU,GPU,数组等的转换

    1, 创建pytorch 的Tensor张量: torch.rand((3,224,224)) #创建随机值的三维张量,大小为(3,224,224) torch.Tensor([3,2]) #创建张量 ...

  3. pytorch 实现张量tensor,图片,CPU,GPU,数组等的转换

    pytorch 实现张量tensor,图片,CPU,GPU,数组等的转换 1, 创建pytorch 的Tensor张量: torch.rand((3,224,224)) #创建随机值的三维张量,大小为 ...

  4. 什么是张量 (tensor)?

    在TensorFlow 官方文档中文版中学习cifar10时,对张量Tensor的概念一知半解,特别在理解代码如何批量读取图片,如何实现卷积的细节困扰了我好几天,在查询网上的资料后总结如下: 一.Te ...

  5. pytorch 创建张量tensor

    pytorch 创建张量tensor 先看下面一张图 通过上图有了一个直观了解后,我们开始尝试创建一下. 先创建一个标量和一个向量 a = torch.tensor([1]) #标量 print(a) ...

  6. Tensorflow:张量(Tensor)的创建及其基础操作

    Tensorflow版本:V2.8.0   Tensorflow中所有的运算操作都是基于张量进行的.Tensorflow中的张量Tensor是具有统一类型的多维数组.这篇博文主要介绍张量的创建及基础操 ...

  7. Pytorch入门之张量tensor

    一.张量tensor 张量的三个特征:秩.轴.形状 张量的秩是指索引的个数,轴是指每一个维度的最大的索引的值,张量的形状提供了维度和索引的数量关系. 经常需要对张量进行重塑 t.reshape(1,9 ...

  8. pytorch 张量tensor 转为 jpg 图片

    在用pytorch训练网络的时候,每一张图片都被转为了张量形式的数据,有时候我们需要将这些张量转为jpg格式的图片,应该如何转变呢?我们只要将张量tensor转为PIL格式的数据,然后再将数据保存起来 ...

  9. 笔记 | PyTorch张量Tensor的一些必备操作

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 张量是什么? 标量:0维张量:比如一个单独的数字1 向量:1维张量 ...

  10. 对比tensorflow查看打印输出张量Tensor的两种方法(急切执行tf.enable_eager_execution()和tf.Session.run())

    第一种:tf.enable_eager_execution() # -*- coding: utf-8 -*- """ @File : 111.py @Time : 20 ...

最新文章

  1. 对计算属性中get和set的理解
  2. python基础语法手册format-python的格式化输出(format,%)实例详解
  3. TCP 滑动窗口简述
  4. 使用 Fluentd 和 ElasticSearch Stack 实现 Kubernetes 的集群 Logging
  5. 【转】理解小波消失矩
  6. 圣诞节,程序员应该给女朋友送一个线上圣诞树
  7. [jQuery] jQuery.fn的init方法返回的this指的是什么对象?为什么要返回this
  8. 修改、读取txt文档
  9. python爬虫新浪新闻_学习了《python网络爬虫实战》第一个爬虫,爬取新浪新闻
  10. List 、Set、 Map有什么区别和联系
  11. 用原生 JS 实现双向绑定及应用实例
  12. 受 SQLite 多年青睐,C 语言到底好在哪儿? 1
  13. Ajax学习笔记-get请求参数-3
  14. Reflector使用详解,把DLL文件转换为.cs文件
  15. 时间管理——帕累托法则(二八定律)
  16. U-Boot中Distro_bootcmd的实现分析
  17. 为什么要用同花顺程序化交易接口
  18. 正宇丨人活得虚伪容易,活得真实很难
  19. 植树节种树-第12届蓝桥杯Scratch选拔赛真题精选
  20. CentOS8(8.2)安装mysql8

热门文章

  1. 如何生成数据库设计文档
  2. leetcode: 70. Climbing Stairs
  3. node linux cache补释放,linux下释放cache内存
  4. GitHub的使用方法
  5. 排列组合———求一串数字可以有多少种不同的组合
  6. Spring Cloud简单笔记
  7. 如何通过Chrome查看网站登录 Cookie 信息
  8. 初学pwn-攻防世界(get_shell)
  9. Python培训课程怎么学
  10. [CDQ分治与整体二分]个人对CDQ分治与整体二分的理解