吴裕雄--天生自然TensorFlow2教程:Broadcasting

Broadcasting可以理解成把维度分成大维度和小维度,小维度较为具体,大维度更加抽象。也就是小维度针对某个示例,然后让这个示例通用语大维度。

import tensorflow as tf

x = tf.random.normal([4,32,32,3])
x.shape
(x+tf.random.normal([3])).shape
(x+tf.random.normal([32,32,1])).shape
(x+tf.random.normal([4,1,1,1])).shape
try:
    (x+tf.random.normal([1,4,1,1])).shape
except Exception as e:
    print(e)
(x+tf.random.normal([4,1,1,1])).shape
b = tf.broadcast_to(tf.random.normal([4,1,1,1]),[4,32,32,3])b.shape
a = tf.ones([3,4])
a.shape
a1 = tf.broadcast_to(a,[2,3,4])
a1.shape
a2 = tf.expand_dims(a,axis=0)  # 0前插入一维
a2.shape
a2 = tf.tile(a2,[2,1,1])  # 复制一维2次,复制二、三维1次
a2.shape

原文地址:https://www.cnblogs.com/tszr/p/12123928.html

时间: 2024-10-09 19:33:26

吴裕雄--天生自然TensorFlow2教程:Broadcasting的相关文章

吴裕雄--天生自然TensorFlow2教程:Tensor数据类型

list: [1,1.2,'hello'] ,存储图片占用内存非常大 np.array,存成一个静态数组,但是numpy在深度学习之前就出现了,所以不适合深度学习 tf.Tensor,为了弥补numpy的缺点,更多的是为了深度学习而生 tensor数据存储类型 scalar:标量,1.1 vector:向量,[1.1],[1.1,2.2,...] matrix: 矩阵,[[1.1,2.2],[3.3,4.4]] tensor:rank>2 数据类型: Int, float, double boo

吴裕雄--天生自然TensorFlow2教程:numpy [ ] 索引

import tensorflow as tf a = tf.ones([1, 5, 5, 3]) a.shape a[0][0] numpy : 索引 a = tf.random.normal([4, 28, 28, 3]) a.shape a[1].shape a[1, 2].shape a[1][2][3].shape a[1, 2, 3, 2].shape 一维切片 a = tf.range(10) a a[-1:] a[-2:] a[:2] a[:-1] 多维切片 a = tf.ran

吴裕雄--天生自然TensorFlow2教程:数学运算

import tensorflow as tf b = tf.fill([2, 2], 2.) a = tf.ones([2, 2]) a+b a-b a*b a/b b // a b % a tf.math.log(a) # 只有以e为底的log tf.exp(a) tf.math.log(8.)/tf.math.log(2.) # 以2为底 tf.math.log(100.)/tf.math.log(10.) # 以10为底 tf.pow(b, 3) b**3 tf.sqrt(b) [ema

吴裕雄--天生自然TensorFlow2教程:数据加载

import tensorflow as tf from tensorflow import keras # train: 60k | test: 10k (x, y), (x_test, y_test) = keras.datasets.mnist.load_data() x.shape y.shape # 0纯黑.255纯白 x.min(), x.max(), x.mean() x_test.shape, y_test.shape # 0-9有10种分类结果 y_onehot = tf.on

吴裕雄--天生自然TensorFlow2教程:测试(张量)- 实战

import tensorflow as tf from tensorflow import keras from tensorflow.keras import datasets import os # do not print irrelevant information # os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2' # x: [60k,28,28], [10,28,28] # y: [60k], [10k] (x, y), (x_test, y_te

吴裕雄--天生自然 JAVASCRIPT开发学习: 表单验证

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>菜鸟教程(runoob.com)</title> </head> <head> <script> function validateForm(){ var x=document.forms["myForm"]["fname"

吴裕雄--天生自然 JAVASCRIPT开发学习:函数定义

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>菜鸟教程(runoob.com)</title> </head> <body> <p>本例调用的函数会执行一个计算,然后返回结果:</p> <p id="demo"></p> <script>

吴裕雄--天生自然 JAVASCRIPT开发学习:函数参数

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>菜鸟教程(runoob.com)</title> </head> <body> <p>设置参数的默认值.</p> <p id="demo"></p> <script> function myFu

吴裕雄--天生自然 JAVASCRIPT开发学习:HTML DOM 集合(Collection)

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>菜鸟教程(runoob.com)</title> </head> <body> <h2>JavaScript HTML DOM</h2> <p>Hello World!</p> <p>Hello Runoob!&l