深度学习基础之《TensorFlow框架(6)—张量》
一、张量
1、什么是张量
张量Tensor和ndarray是有联系的,当我们print()打印值的时候,它返回的就是ndarray对象
TensorFlow的张量就是一个n维数组,类型为tf.Tensor。Tensor具有以下两个重要的属性:
(1)type:数据类型
(2)shape:形状(阶)
2、张量的类型
张量,在计算机当中如何存储?
标量,一个数字
向量,一维数组 [2,3,4]
矩阵,二维数组 [[2,3,4],[2,3,4]]
张量,就是n维数组
标量,可以看做0阶张量
向量,可以看做1阶张量
矩阵,可以看做2阶张量
n维数组,n阶张量
| 数据类型 | python类型 | 描述 |
| DT_FLOAT | tf.float32 | 32位浮点数 |
| DT_DOUBLE | tf.float64 | 64位浮点数 |
| DT_INT64 | tf.int64 | 64位有符号整数 |
| DT_INT32 | tf.int32 | 32位有符号整数 |
| DT_INT16 | tf.int16 | 16位有符号整数 |
| DT_INT8 | tf.int8 | 8位有符号整数 |
| DT_UINT8 | tf.uint8 | 8位无符号整数 |
| DT_STRING | tf.string | 可变长度的字节数组,每一个张量元素都是一个字节数组 |
| DT_BOOL | tf.bool | 布尔型 |
| DT_COMPLEX64 | tf.complex64 | 由两个32位浮点数组成的复数:实数和虚数 |
| DT_QINT32 | tf.qint32 | 用于量化Ops的32位有符号整型 |
| DT_QINT8 | tf.qint8 | 用于量化Ops的8位有符号整型 |
| DT_QUINT8 | tf.quint8 | 用于量化Ops的8位无符号整型 |
3、张量的阶
对应到ndarray的维数
| 阶 | 数学实例 | python | 例子 |
| 0 | 纯量 | 只有大小 | s = 483 |
| 1 | 向量 | 大小和方向 | v = [1.1, 2.2, 3.3] |
| 2 | 矩阵 | 数据表 | m = [[1,2,3],[4,5,6],[7,8,9]] |
| 3 | 3阶张量 | 数据立体 | ... |
| n | n阶张量 | 自己想想... | ... |
import os
os.environ['TF_CPP_MIN_LOG_LEVEL']='2'
import tensorflow as tfdef tensorflow_demo():"""TensorFlow的基本结构"""# TensorFlow实现加减法运算a_t = tf.constant(2)b_t = tf.constant(3)c_t = a_t + b_tprint("TensorFlow加法运算结果:\n", c_t)print(c_t.numpy())# 2.0版本不需要开启会话,已经没有会话模块了return Nonedef graph_demo():"""图的演示"""# TensorFlow实现加减法运算a_t = tf.constant(2)b_t = tf.constant(3)c_t = a_t + b_tprint("TensorFlow加法运算结果:\n", c_t)print(c_t.numpy())# 查看默认图# 方法1:调用方法default_g = tf.compat.v1.get_default_graph()print("default_g:\n", default_g)# 方法2:查看属性# print("a_t的图属性:\n", a_t.graph)# print("c_t的图属性:\n", c_t.graph)# 自定义图new_g = tf.Graph()# 在自己的图中定义数据和操作with new_g.as_default():a_new = tf.constant(20)b_new = tf.constant(30)c_new = a_new + b_newprint("c_new:\n", c_new)print("a_new的图属性:\n", a_new.graph)print("b_new的图属性:\n", b_new.graph)# 开启new_g的会话with tf.compat.v1.Session(graph=new_g) as sess:c_new_value = sess.run(c_new)print("c_new_value:\n", c_new_value)print("我们自己创建的图为:\n", sess.graph)# 可视化自定义图# 1)创建一个writerwriter = tf.summary.create_file_writer("./tmp/summary")# 2)将图写入with writer.as_default():tf.summary.graph(new_g)return Nonedef session_run_demo():"""feed操作"""tf.compat.v1.disable_eager_execution()# 定义占位符a = tf.compat.v1.placeholder(tf.float32)b = tf.compat.v1.placeholder(tf.float32)sum_ab = tf.add(a, b)print("a:\n", a)print("b:\n", b)print("sum_ab:\n", sum_ab)# 开启会话with tf.compat.v1.Session() as sess:print("占位符的结果:\n", sess.run(sum_ab, feed_dict={a: 1.1, b: 2.2}))return Nonedef tensor_demo():"""张量的演示"""tensor1 = tf.constant(4.0)tensor2 = tf.constant([1, 2, 3, 4])linear_squares = tf.constant([[4], [9], [16], [25]], dtype=tf.int32)print("tensor1:\n", tensor1)print("tensor2:\n", tensor2)print("linear_squares:\n", linear_squares)return Noneif __name__ == "__main__":# 代码1:TensorFlow的基本结构# tensorflow_demo()# 代码2:图的演示#graph_demo()# feed操作#session_run_demo()# 代码4:张量的演示tensor_demo()
python3 day01_deeplearning.pytensor1:tf.Tensor(4.0, shape=(), dtype=float32)
tensor2:tf.Tensor([1 2 3 4], shape=(4,), dtype=int32)
linear_squares:tf.Tensor(
[[ 4][ 9][16][25]], shape=(4, 1), dtype=int32)
创建张量的时候,如果不指定类型:
整型:默认tf.inf32
浮点型:默认tf.float32
二、创建张量的指令
1、固定值张量
tf.zeros(shape, dtype=tf.float32, name=None)
创建所有元素设置为零的张量
此操作返回一个具有dtype、shape和所有元素设置为零的类型的张量
tf.zeros_like(tensor, dtype=None, name=None)
给定一个张量tensor,该操作返回与所有元素设置为零的tensor具有相同类型和形状的张量
tf.ones(shape, dtype=tf.float32, name=None)
创建一个所有元素设置为1的张量
此操作返回一个具有dtype、shape和所有元素设置为1的类型的张量
tf.ones_like(tensor, dtype=None, name=None)
给定一个张量tensor,该操作返回与所有元素设置为1的tensor具有相同类型和形状的张量
tf.fill(dims, value, name=None)
创建一个填充了标量值的张量
此操作创建一个张量,形状为dims,并用value填充
tf.constant(value, dtype=None, shape=None, name='Const')
创建一个常数张量
2、随机值张量
一般我们经常使用的随机函数Math.random()产生的是服从均匀分布的随机数,能够模拟等概率出现的情况
例如,仍一个骰子,1到6点的概率应该相等,但现实生活中更多的随机现象是符合正态分布的,例如20岁成年人的体重分布等
假如我们在制作一个游戏,要随机设定许许多多NPC的升高,如果还用Math.random(),生成从140到220之间的数字,就会发现每个身高段的人数是一样多的,这是比较无趣的,这样的世界也与我们习惯不同,现实应该是特别高和特别矮的都很少,处于中间的人数最多,这就要求随机函数符合正态分布
tf.truncated_normal(shape, mean=0.0, stddev=1.0, dtype=tf.float32, seed=None, name=None)
从截断的正态分布中输出随机值,和tf.random_normal()一样,但是所有数字都不超过两个标准差
mean:均值
stddev:标准差
tf.random_normal(shape, mean=0.0, stddev=1.0, dtype=tf.float32, seed=None, name=None)
从正态分布中输出随机值,由随机正态分布的数字组成的矩阵
mean:均值
stddev:标准差
相关文章:
深度学习基础之《TensorFlow框架(6)—张量》
一、张量 1、什么是张量 张量Tensor和ndarray是有联系的,当我们print()打印值的时候,它返回的就是ndarray对象 TensorFlow的张量就是一个n维数组,类型为tf.Tensor。Tensor具有以下两个重要的属性: (1)typ…...
第三百六十六回
文章目录 1. 概念介绍2. 使用方法2.1 List2.2 Map2.3 Set 3. 示例代码4. 内容总结 我们在上一章回中介绍了"convert包"相关的内容,本章回中将介绍collection.闲话休提,让我们一起Talk Flutter吧。 1. 概念介绍 我们在本章回中介绍的内容是col…...
Fiddler工具 — 18.Fiddler抓包HTTPS请求(一)
1、Fiddler抓取HTTPS过程 第一步:Fiddler截获客户端发送给服务器的HTTPS请求,Fiddler伪装成客户端向服务器发送请求进行握手 。 第二步:服务器发回相应,Fiddler获取到服务器的CA证书, 用根证书(这里的根证…...
多租户数据库的缓冲区共享和预分配方案设计
多租户数据库的缓冲区共享和预分配方案设计 文章目录 多租户数据库的缓冲区共享和预分配方案设计简介初始化输入交互输出输入部分的输出交互部分的输出 评分注意点语言要求需要使用的模块系统框架图方案设计初始化阶段交互阶段 修改进度规划最终代码 简介 云计算技术使企业能够…...
C++:C++入门基础
创作不易,感谢三连 !! 一、什么是C C语言是结构化和模块化的语言,适合处理较小规模的程序。对于复杂的问题,规模较大的程序,需要高度的抽象和建模时,C语言则不合适。为了解决软件危机ÿ…...
利用System.Web.HttpRuntime.Cache制作缓存工具类
用到的依赖介绍 当谈到 ASP.NET 中的缓存管理时,常涉及到以下三个类:CacheDependency、HttpRuntime.Cache 和 System.Web.Caching。 CacheDependency(缓存依赖项): CacheDependency 类用于指定一个或多个文件或目录作…...
266.【华为OD机试真题】抢7游戏(深度优先搜索DFS-JavaPythonC++JS实现)
🚀点击这里可直接跳转到本专栏,可查阅顶置最新的华为OD机试宝典~ 本专栏所有题目均包含优质解题思路,高质量解题代码(Java&Python&C++&JS分别实现),详细代码讲解,助你深入学习,深度掌握! 文章目录 一. 题目-抢7游戏二.解题思路三.题解代码Python题解代码…...
工具分享:在线键盘测试工具
在数字化时代,键盘作为我们与计算机交互的重要媒介之一,其性能和稳定性直接影响到我们的工作效率和使用体验。为了确保键盘的每个按键都能正常工作,并帮助用户检测潜在的延迟、连点等问题,一款优质的在线键盘测试工具显得尤为重要…...
Arcmap excel转shp
使用excel表格转shp的时候,如果你的excel里面有很多字段,直接转很大概率会出现转换结果错误的情况,那么就需要精简一下字段的个数。将原来的表格文件另存一份,在另存为的文件中只保留关键的经度、纬度、和用于匹配的字段即可&…...
14. rk3588自带的RKNNLite检测yolo模型(python)
首先将文件夹~/rknpu2/runtime/RK3588/Linux/librknn_api/aarch64/下的文件librknnrt.so复制到文件夹/usr/lib/下(该文件夹下原有的文件librknnrt.so是用来测试resnet50模型的,所以要替换成yolo模型的librknnrt.so),如下图所示&am…...
心理辅导|高校心理教育辅导系统|基于Springboot的高校心理教育辅导系统设计与实现(源码+数据库+文档)
高校心理教育辅导系统目录 目录 基于Springboot的高校心理教育辅导系统设计与实现 一、前言 二、系统功能设计 三、系统实现 1、学生功能模块的实现 (1)学生登录界面 (2)留言反馈界面 (3)试卷列表界…...
字符串方法挑战
题目 编写一个程序,接收一个使用下划线命名法(underscore_case)编写的变量名列表,并将它们转换为驼峰命名法(camelCase)。 输入将来自插入到DOM中的文本区域(请参见下面的代码)&…...
vivado FIR Filters
Vivado合成直接从RTL中推导出乘加级联来组成FIR滤波器。这种滤波器有几种可能的实现方式;一个例子是收缩滤波器在7系列DSP48E1 Slice用户指南(UG479)中进行了描述,并在8抽头偶数中显示对称收缩FIR(Verilog)…...
c# Contains方法-检查集合中是否包含指定的元素
Contains 是 .NET 集合框架中许多集合类(如 List、Array、HashSet 等)提供的一种方法,用于检查集合中是否包含指定的元素。对于 List<int> 类型,Contains 方法会遍历列表中的所有元素,并判断传入的方法参数是否存…...
【开源】在线办公系统 JAVA+Vue.js+SpringBoot+MySQL
目录 1 功能模块1.1 员工管理模块1.2 邮件管理模块1.3 人事档案模块1.4 公告管理模块 2 系统展示3 核心代码3.1 查询用户3.2 导入用户3.3 新增公告 4 免责声明 本文项目编号: T 001 。 \color{red}{本文项目编号:T001。} 本文项目编号:T001。…...
dubbo源码中设计模式——注册中心中工厂模式的应用
工厂模式的介绍 工厂模式提供了一种创建对象的方式,而无需指定要创建的具体类。 工厂模式属于创建型模式,它在创建对象时提供了一种封装机制,将实际创建对象的代码与使用代码分离。 应用场景:定义一个创建对象的接口࿰…...
T-Dongle-S3开发笔记——移植LVGL
添加lvgl组件 idf.py add-dependency lvgl/lvgl>8.* 新建终端执行命令后出现了新的文件: 清除再编译后才会出现lvgl库 优化为本地组件 以上方式修改了组件文件内容重新编译后文件又会变回去。 所以我们要把lvgl变成本地组件 1、要把 idf_component.yml 文…...
SOPHON算能科技新版SDK环境配置以及C++ demo使用过程
目录 1 SDK大包下载 2 获取SDK中的库文件和头文件 2.1 注意事项 2.2 交叉编译环境搭建 2.2.1 首先安装工具链 2.2.2 解压sophon-img包里的libsophon_soc__aarch64.tar.gz,将lib和include的所有内容拷贝到soc-sdk文件夹 2.2.3 解压sophon-mw包里的sophon-mw-s…...
Linux-SSH被攻击-解决方案
文章目录 一、检查攻击来源二、防范措施三、Fail2banfirewallcmd-ipset安装Fail2ban:安装firewalld:配置Fail2ban:配置firewalld以使用fail2ban:测试配置: SSH端口暴露在公网上很可能被黑客扫描,并尝试登入…...
第1章 计算机系统概述(2)
1.4操作系统结构 随着操作系统功能的不断增多和代码规模的不断变大,合理的操作系统结构,对于降低操作系统复杂度,提升操作系统安全与可靠性来说变得尤为重要。 分层法: 优点: 1.便于系统调试和验证,简化系统的设计和实现 2.易于扩充和维护 缺点: 1.合理定义各层较难(依赖关系比…...
终极Emu模型架构解析:深入理解370亿参数的多模态Transformer
终极Emu模型架构解析:深入理解370亿参数的多模态Transformer 【免费下载链接】Emu Emu Series: Generative Multimodal Models from BAAI 项目地址: https://gitcode.com/gh_mirrors/emu/Emu Emu是由BAAI开发的革命性多模态生成模型系列,通过融合…...
2026年局域网考试系统选型对比:优考试助力政企信创与内网安全
在数字政府与信创产业全面推进的当下,政企、事业单位及涉密单位的考试场景,正面临国产化适配、数据安全、灵活部署三重核心要求。既要满足内网环境下的数据安全与物理隔离,又要兼顾部分场景下外网访问的灵活性,传统单一架构考试系…...
Prompt 缓存,一次讲明白
每当一个 AI Agent 往前走一步,它其实都在交一笔税。它会重新读取所有内容。系统提示词。 工具定义。 项目上下文。 三轮前已经加载过的内容。每一轮都重新读一遍。这就是 context tax。对长时间运行的 Agent 工作流来说,它往往是整个 AI 基础设施里最贵…...
玻璃材质提示词失效率高达67%?2024最新Glass Prompt Framework v3.0(含Cinema4D材质参数→MJ语义映射表)
更多请点击: https://kaifayun.com 第一章:玻璃材质提示词失效率的行业现状与归因分析 在当前AIGC图像生成领域,“glass material”(玻璃材质)类提示词的失效问题已成高频痛点。多项基准测试显示,主流多模…...
大家都在签电子合同了,对企业有什么好处?
一、电子合同,已经不是什么新鲜事了可能你身边还有人在犹豫电子合同靠不靠谱,但数据不会骗人。据统计,2025年我国电子合同签约量达到2576.1亿份,市场规模已经达到305.1亿元,这几年年均增速超过23%。说白了,…...
沥青生产导向的常减压过程模拟及排产计划优化【附仿真】
✨ 长期致力于沥青生产、多目标优化、遗传算法、排产、换热网络综合、粒子群算法研究工作,擅长数据搜集与处理、建模仿真、程序编写、仿真设计。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流,点击《获取方式》 (1)原油实沸点切割与沥青…...
Midjourney单色调风格失效诊断图谱(含8种典型失败案例+对应--no、--style、--seed三重校准方案)
更多请点击: https://intelliparadigm.com 第一章:Midjourney单色调风格失效诊断图谱(含8种典型失败案例对应--no、--style、--seed三重校准方案) 单色调(Monochrome)图像生成在Midjourney中高度依赖提示词…...
从扁平到触手可及,Midjourney拟物化全流程拆解,含12组高复用材质参数模板与避坑清单
更多请点击: https://kaifayun.com 第一章:从扁平到触手可及:Midjourney拟物化设计范式跃迁 当UI设计从iOS 7的极简扁平风席卷全球,我们曾笃信“去装饰即高级”。而Midjourney V6起悄然掀起一场静默革命——它不再满足于生成“看…...
2026年四款主流 SaaS 收银系统:不同场景怎么选?
开店做生意,最让人头疼的往往不是选址或装修,而是每天打烊后对着乱糟糟的账本发愁。很多刚起步的老板为了省成本,初期只用纸笔或简单的 Excel 记账,一旦客流上来,库存对不上、会员积分算错、交接班混乱等问题接踵而至。…...
ElevenLabs支持闽南语吗?福建话语音合成实测:从API调用到音色克隆的7步通关手册
更多请点击: https://intelliparadigm.com 第一章:ElevenLabs福建话语音支持现状与能力边界 ElevenLabs 目前尚未在官方语音模型库中提供对福建话(含闽南语、闽东语等分支)的原生支持。其公开文档与 API 文档均未列出任何以“Fuj…...
