当前位置: 首页 > news >正文

NumPy与TensorFlow-tf.tensor异同点

NumPy数组与TenosrFlow中的张量(即tf.tensor)有很多相似地方,而且可以互相转换。下表总结了NumPy与tf.tensor的异同点。

NumPy与tf.tensor的异同点

操作类别NumPyTensorFlow 2+
数据类型np.ndarraytf.Tensor
np.float32tf.float32
np.float64tf.double
np.int64tf.int64
从已有数据构建np.array([3.2, 4.3], dtype=np.float16)a=tf.constant([3.2, 4.3], dtype=tf.float16)#常量 v=tf.Variable([3.2, 4.3], type=tf.float16)#变量
x.copy()tf.identity(x);tf.tile(a,(n,m))# 元组里的每个数值对应该轴复制次数
np.concatenatetf.concat((a,b),axis)# 待拼接的轴对应的维度数值可以不等,但其他维度形状需一致
线性代数np.dot #内积 np.multiply(*)#逐元素相乘或哈达玛积tf.matmul(x, y, name=None) 或(@)#内积tf.multiply(x, y, name=None),或(*)#逐元素相乘或哈达玛积
属性x.ndimx.ndim #查看rank
x.shapex.shape
x.sizetf.size(x)
改变形状x.reshapetf.reshape(x,(n,(-1)))#-1表示自动计算其他维度
np.transpose(x, [新的轴顺序] )tf.transpose(x, [新的轴顺序] )
x.flatten()tf.reshape(x,[-1]);tf.keras.layers.Flatten()
维度增减np.expand_dims(arr, axis)tf.expend_dims(a,axis)
np.squeeze(arr, axis)tf.squeeze(a,axis),#如果不声明axis,那么将压缩所有数值为1的维度。
类型转换np.floor(x)x=tf.cast(x,dtype=XX) x=x.numpy()=>np.array
比较np.lesstf.less(x,threshold)
np.less_equaltf.less_equal(x, threshold)
np.greater_equaltf.greater_equal(x, threshold)
随机种子np.random.seedtf.random.set_seed(n)

它们可以互相转换,具体分析如下:

  • 通过使用 np.array 或 tensor.numpy 方法,可以将TensorFlow张量转换为 NumPy 数组;
  • tf.convert_to_tensor把Python对象(NumPy,list、tuple等),或使用tf.constant、tf.Variable把Python对象转换为TensorFlow张量。

http://www.mrgr.cn/news/69229.html

相关文章:

  • 【idea】更换快捷键
  • 【Qt实现虚拟键盘】
  • MySQL【五】
  • (实战)WebApi第13讲:怎么把不同表里的东西,包括同一个表里面不同的列设置成不同的实体,所有的给整合到一起?【前端+后端】、前端中点击标签后在界面中显示
  • 微搭低代码入门05循环
  • uniapp如何i18n国际化
  • Vue全栈开发旅游网项目(9)-用户登录/注册及主页页面开发
  • C# 集合与泛型
  • 网络编程示例之网络基础知识
  • 汽车行业的人工智能实践:以通用汽车的OnStar服务为例
  • C/C++--11--Vxworks6.8 + workbench3.2-一文看懂安装及工程导入说明
  • MYSQL——事务管理
  • Read excerpt(eighteen)——The hidden value of Corporate Social Responsibility
  • 2024年水利水电安全员考试题库及答案
  • 陪诊问诊APP开发实战:基于互联网医院系统源码的搭建详解
  • Android 应用插件化及其进程关系梳理
  • 新能源行业必会基础知识-----电力现货市场理论篇-----电力现货市场价格机制-----电力现货市场的价格帽
  • 51c大模型~合集19
  • 骨传导耳机哪个牌子好?2024年五大黑马骨传导耳机推荐分享!
  • 单链表OJ思路
  • SwiftUI开发教程系列 - 第4章:数据与状态管理
  • Logrus入门
  • More Effective C++:基础议题
  • 鸿蒙系统崛起:机遇、挑战与未来展望
  • 【Pikachu】File Inclusion文件包含实战
  • SpringBoot项目编译报错 类文件具有错误的版本 61.0, 应为 52.0