Tensorflow2.0笔记 - Broadcasting和Tile

这篇具有很好参考价值的文章主要介绍了Tensorflow2.0笔记 - Broadcasting和Tile。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        关于broadcasting的介绍,参考这篇文章。

        https://blog.csdn.net/python_LC_nohtyp/article/details/104097417

import tensorflow as tf
import numpy as np

tf.__version__

#关于broadcasting的介绍,参考这篇文章
#https://blog.csdn.net/python_LC_nohtyp/article/details/104097417

tensor = tf.random.normal([4,32,32,3])
#tensor + [3],[3]可以扩展为[4,32,32,3]后相加
t = tensor + tf.random.normal([3])
print("=========tensor + [3]=======", t.shape)
#tensor +[32,32,1],可以扩展为[4,32,32,3]后相加
t = tensor + tf.random.normal([32,32,1])
print("=========tensor + [32,32,1]=======", t.shape)
#tensor + [4,1,1,1],可以扩展为[4,32,32,3]后相加
t = tensor + tf.random.normal([4,1,1,1])
print("=========tensor + [4,1,1,1]=======", t.shape)
#不使用运算符,使用broadcast_to来扩展维度
b = tf.broadcast_to(tf.random.normal([4,1,1,1]), [4,32,32,3])
print("=========tf.broadcast_to([4,1,1,1], [4,32,32,3])========", b.shape)
#tensor + [1,4,1,1],第二维度不是1,也不是32,无法相加,报错
#t = tensor + tf.random.normal([1,4,1,1])
#print("=========tensor + [1,4,1,1]=======", t.shape)
#InvalidArgumentError: {{function_node __wrapped__AddV2_device_/job:localhost/replica:0/task:0/device:CPU:0}} 
#Incompatible shapes: [4,32,32,3] vs. [1,4,1,1] [Op:AddV2] name: 

#使用tile方式进行复制扩展,tile方式会实际分配内存
tensor = tf.random.uniform([3,4], minval=0, maxval=10, dtype=tf.int32)
print("=========Original tensor======\n", tensor)

#使用broadcasting复制扩展,不会分配内存,但实际效果和tile一样
b = tf.broadcast_to(tensor, [2,3,4])
print("==========Broadcasting========\n", b)

#使用expand_dims扩展一个维度
t = tf.expand_dims(tensor, axis=0)
print("==========After expand_dims:", t.shape)
#使用tile复制第一个维度,参数[2,1,1]表示第一个维度复制两次,后两个维度复制1次(不动)
t1 = tf.tile(t, [2,1,1])
print("After tile:", t1.shape)
print(t1)

        运行结果

Tensorflow2.0笔记 - Broadcasting和Tile,TensorFlow2.0,笔记,tensorflow2,python,深度学习,人工智能Tensorflow2.0笔记 - Broadcasting和Tile,TensorFlow2.0,笔记,tensorflow2,python,深度学习,人工智能文章来源地址https://www.toymoban.com/news/detail-807051.html

到了这里,关于Tensorflow2.0笔记 - Broadcasting和Tile的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Tensorflow2.0笔记 - 不使用layer方式,简单的MNIST训练

            本笔记不使用layer相关API,搭建一个三层的神经网络来训练MNIST数据集。         前向传播和梯度更新都使用最基础的tensorflow API来做。         运行结果:

    2024年01月20日
    浏览(48)
  • tensorflow2基础

    TensorFlow 包含以下特性: 训练流程 数据的处理  :使用 tf.data 和 TFRecord 可以高效地构建和预处理数据集,构建训练数据流。同时可以使用 TensorFlow Datasets 快速载入常用的公开数据集。 模型的建立与调试  :使用即时执行模式和著名的神经网络高层 API 框架 Keras,结合可视化

    2024年02月11日
    浏览(46)
  • tensorflow2 模型建立与训练

    模型的构建:  tf.keras.Model  和  tf.keras.layers 模型的损失函数:  tf.keras.losses 模型的优化器:  tf.keras.optimizer 模型的评估:  tf.keras.metrics Keras 有两个重要的概念:  模型(Model)  和  层(Layer)  。层将各种计算流程和变量进行了封装(例如基本的全连接层,CNN 的卷积层

    2024年02月10日
    浏览(66)
  • tensorflow2模型保存和恢复

    有两种方法可以保存模型: ·使用检查点,一种简单的在硬盘上保存变量的方法 ·使用SavedModel,模型结构及检查点 检查点不包含任何关于模型自身的描述:它们只是一种简单的存储参数并能让开发者正确恢复它的方法。 SavedModel格式在保存参数值的基础上加上了计算过程的序

    2024年02月11日
    浏览(49)
  • TensorFlow2.0教程1-Eager

    2023年11月06日
    浏览(37)
  • Tensorflow2——Eager模式简介以及运用

    TensorFlow的eager执行模式是一个重要的编程环境,它能立即评估运算,而无须构建图:运算会实时返回值,而不是构建一个计算图后再运行。这使得使用TensorFlow和调试模型更简单,并且可以减少很多样板代码。 eager执行模式对研究和实验来说是一个灵活的机器学习平台,有下列

    2024年02月11日
    浏览(54)
  • Tensorflow2 GPU版本-极简安装方式

    1、配置conda环境加速 https://wtl4it.blog.csdn.net/article/details/135723095 https://wtl4it.blog.csdn.net/article/details/135723095 2、tensorflow-gpu安装

    2024年01月21日
    浏览(42)
  • 深入浅出TensorFlow2函数——tf.exp

    分类目录:《深入浅出TensorFlow2函数》总目录 相关文章: · 深入浅出TensorFlow2函数——tf.exp · 深入浅出TensorFlow2函数——tf.math.exp · 深入浅出Pytorch函数——torch.exp · 深入浅出PaddlePaddle函数——paddle.exp 按元素计算 x x x 的指数 y = e x y=e^x y = e x 。 语法 参数 x :[ tf.Tensor ] 必须

    2024年02月12日
    浏览(32)
  • 深入浅出TensorFlow2函数——tf.reshape

    分类目录:《深入浅出TensorFlow2函数》总目录 语法 参数 返回值 返回一个新的形状为 shape 的 tf.Tensor 且具有与 tensor 以同样的顺序和相同的值。 实例 输入: 如果 shape 的一个参数为是 -1 ,则计算该维度的大小,使总大小保持不变。特别是,若 shape 为 [-1] ,则将 tensor 展平为一

    2024年02月11日
    浏览(59)
  • 深入浅出TensorFlow2函数——tf.rank

    分类目录:《深入浅出TensorFlow2函数》总目录 语法 参数 input : tf.Tensor 或 tf.SparseTensor name :[可选] 操作的名称 返回值 张量 input 的维度,是一个 int32 类型的张量 实例 输入: 输出: 函数实现

    2024年02月12日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包