针对tensorflow2.0版本

Broadcasting的主要特点:expand without copying data(扩展了维度,但是不复制数据,不占用内存空间)

(1)隐式的Broadcasting

tensor的一些操作符已经包含了Broadcasting,比如下面这个:

In [3]: a = tf.random.normal([4,28,28,3])In [4]: b = tf.random.normal([3])In [5]: (a+b).shape
Out[5]: TensorShape([4, 28, 28, 3])

随机两个矩阵a,b,但矩阵维度不一致,当a+b时,系统会自动扩展b的维度(不复制数据,不增加内存),以能够与a相加。

(2)显示的Broadcasting(tf.broadcast_to)

In [6]: c = tf.broadcast_to(tf.random.normal([4,1,1,1]),[4,28,28,3])In [7]: c.shape
Out[7]: TensorShape([4, 28, 28, 3])

使用tf.broadcast_to函数手动使c的维度扩展。

(3)Broadcasting与tf.tile的区别

功能相近,但是tf.tile是复制数据,需占用内存,Broadcasting不用。

Tensor的Broadcasting操作相关推荐

  1. torch对于tensor的常规操作

    前言 使用pytorch框架,会常操作tensor,以下则是对tensor常规操作的汇总. import torch torch.Tensor会继承某些torch的某些数学运算,例如sort, min ...

  2. pytorch小知识点(三)-------Tensor的indices操作

    一.Tesnor 先简单介绍一下Tensor.Tensor是pytorch的核心,它是一个包含单一数据类型的多维矩阵. pyTorch定义了七种CPU tensor类型和八种GPU tensor类型: ...

  3. torch.Tensor常用数据操作汇总与自动求梯度

    在深度学习中,通常会频繁地对数据进行操作,在PyTorch中,torch.Tensor是存储和变换数据的主要工具(Tensor和NumPy的多维数组非常类似,Tensor提供GPU计算和自动求梯度等更 ...

  4. Tensor:逐元素操作

    逐元素操作 这部分操作会对tensor的每一个元素(point-wise,又名element-wise)进行操作,此类操作的输入与输出形状一致.常用的操作如表3-4所示. 表3-4: 常见的逐元素操作 ...

  5. pytorch张量(tensor)常用高级操作函数

    张量创建 张量拼接.切分.索引和变换 torch.cat(),torch.concentrate(),torch.concat() 注:这三个函数是等价的 函数:torch.cat(tensors, ...

  6. 【PyTorch系例】torch.Tensor详解和常用操作

    学习教材: 动手学深度学习 PYTORCH 版(DEMO) (https://github.com/ShusenTang/Dive-into-DL-PyTorch) PDF 制作by [Marcus ...

  7. pytorch基础操作学习笔记(autograd,Tensor)

    简述 简单讲讲关于torch.autograd内容(因为我也有点菜) 文章目录 简述 简单讲讲 Tensor 介绍Tensor 创建Tensor 获取Tensor数据规模 将tensor转成其他数据类 ...

  8. 深度学习(9)TensorFlow基础操作五: Broadcasting

    深度学习(9)TensorFlow基础操作五: Broadcasting 1. 操作思想 2. 具体例子 3. 理解 (1) How to understand? (2) Why Broadcasti ...

  9. Pytorch(2)-tensor常用操作

    tensor常用数学操作 1. 随机数 1.1 torch.rand() - 均匀分布数字 1.2 torch.randn() - 正态分布数字 2. 求和 2.1 torch.sum(data, d ...

最新文章

  1. 交互设计中的c和php,c/s是一种重要的网络计算机模式,其含义是什么
  2. 暴力+构造 Codeforces Round #283 (Div. 2) C. Removing Columns
  3. .Net运行时的相互关系
  4. SQL语句的解释计划
  5. 分享在MVC3.0中使用jQuery DataTable 插件
  6. 回溯和递归的区别(简述)
  7. 7安装sql cent os server_CentOS7 安装并使用SQL Server
  8. 一个websocket 可以多个页面创建吗_实战分享|给我一个Puppeteer,没有爬不了的网站
  9. 【Elasticsearch】Elasticsearch中的相似度评分介绍
  10. 如何 shuffle 一个 vector 以及 vectorvector
  11. 二叉树的层序遍历_二叉树:你真的会翻转二叉树么?
  12. 什么是域名?什么网站名?什么是URL?
  13. 解密网页加密的两个方法
  14. 【vlan间通信的小玩法】在三层交换机上做ospf
  15. 汽车嵌入式软件自动化测试的方法及推荐工具
  16. 宝付国际跨境知识小课堂 | 人民币外汇市场是个啥?
  17. 利用godaddy的cpanel邮箱服务器的smtp发邮件
  18. 关于学术文献推荐系统的调研报告
  19. 《录屏工具:真正的两款良心免费开源录屏软件》
  20. 地大计算机学院田甜,【学霸画像】第七十一期—记计算机学院2013级本科生詹才韬...

热门文章

  1. 收集的图像处理网站http://blog.csdn.net/chief1985/article/details/1898358
  2. python 自动补全函数括号_三分钟,让你弄清楚Python中函数的括号使用
  3. android单例模式代码,设计模式(一):Android 源码中的单例模式
  4. js 连mysql 延后_详解MySQL 主从同步延迟
  5. 江苏职称计算机考试错做题,江苏省职称计算机考试word注意点.doc
  6. opencv怎么2个摄像头_扭到腰该怎么办?5个处理要点要谨记,2招教你预防扭伤
  7. linux dhcp 绑定mac地址,●DHCP协议的功能是 (58) 。在Linux中提供DHCP服务的程序是 (59) ;DHCP服务将主机的MAC地址和IP地 - 赏学吧...
  8. struts2教程_Struts 2教程– Struts2教程
  9. linux压缩命令gzip_Linux gzip命令示例
  10. linux下好玩的命令