【tenserflow】——数据类型以及常用属性

目录

 

一、什么是Tensor?

二、Tensorflow常见数据类型

三、Tensorflow常见属性device\cpu\gpu\ndim\shape\rank等

1、创建一个tensor

1)tf.constant()

2)tf.Variable()

2、判断一个变量是否为tensor张量

 3、生成不同设备(cpu,gpu)上的tensor

4、判断一个tensor工作的设备

5、cpu和gpu不同设备上tensor的转换

6、tensor载体上的数据和numpy库上的数据的相互转换

7、判断变量的数据类型

8、判断变量的维度

 9、tensor下不同数据类型之间进行转换


一、什么是Tensor?

Tensor实际上就是Tensorflow中的数据载体,可以囊括所有的数据类型,如标量、矩阵、向量等

专门为神经网络中深度学习设计的一个框架中的数据载体

二、Tensorflow常见数据类型

import tensorflow as tf

三、Tensorflow常见属性device\cpu\gpu\ndim\shape\rank等

1、创建一个tensor

具体可见:《【tensorflow】——创建tensor的方法》

1)tf.constant()

a=tf.constant(数据)

2)tf.Variable()

这个是专门为神经网络的参数进行设置的一个数据类型,它含有两个属性,一个是name,一个是train able

a = tf.range(4)#[0,1,2,3]b = tf.Variable(a,name = "变量名")b.nameb.trainable#返回True,表示是可以训练的变量,系统会自动对该变量的梯度进行监督(watch)

 

2、判断一个变量是否为tensor张量

import tensorflow as tftf.is_tensor(变量名)#是tensor返回True,否则返回False

 3、生成不同设备(cpu,gpu)上的tensor

import tensorflow as tf#创建cpu设备上的tensor变量a
with tf.device("cpu"):a=tf.constant(1)#创建gpu设备上的tensor变量a
with tf.device("gpu"):b=tf.constant(1.1)

4、判断一个tensor工作的设备

tf.device(变量名)#返回的是一个字符串,含有当前tensor所工作的环境设备

5、cpu和gpu不同设备上tensor的转换

不同设备上的变量有些操作是不能进行的,如a,b的加法,就需要在同一个设备环境下,才能进行,否则会报错,这时候就需要使用到不同设备间tensor的转换了

#假设a是cpu上的tensor,b是gpu上的tensoraa = a.gpu()#返回的是gpu上的tensor,当然不会影响原来的tensor a所在的设备环境bb = b.cpu()#返回的是cpu上的tensor,当然不会影响原来的tensor b所在的设备环境

6、tensor载体上的数据和numpy库上的数据的相互转换

这是两个数据库,可以看成是数据载体,都可以生成不同类型的数据,但是要想数据间进行操作,必须转换成同一个载体下的数据才能进行操作

import tensorflow as tf#tensor转换为numpy变量名.numpy()#如果tensor是一个标量scalar的话,也可以通过下面的方法进行转换为numpyint(a)
float(a)#numpy转换为tensortf.convert_to_tensor(变量名,dtype=tf.数据类型)

7、判断变量的数据类型

a.dtype,b.dtype,c.dtyp#返回三个变量的数据类型(tf.float32,tf.bool,tf.string)#表示在tensor数据载体下的各种数据类型#要是想验证某一个变量是否为具体的数据类型,可以通过以下方法a.dtype == tf.float32#返回布尔类型,是返回True,不是返回False

8、判断变量的维度

维度是指是标量还是向量还是矩阵抑或是更高维的数据

b.ndim#返回的是一个标量,一个值,等于维度tf.rank(b)#返回的是一个含有变量b相关信息的tensor

 

9、tensor下不同数据类型之间进行转换

tf.cast(变量名,dtype=需要转换成的数据类型)#例如tf.cast(aa,dtype = float32/double/int32)

布尔型和整型的转化

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/256339.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C# 事件详解附实例分析

一、定义 事件是两个对象间发布消息和响应后处理消息的过程,通过委托类型来实现的。 事件的机制被称为发布-订阅机制,其算法过程为:首先定义一个委托类型,然后在发布者类中声明一个event事件,同时此类中还有一个用来触…

网页开发浏览器兼容性问题

1、在ie6下的双margin问题 在ie6下,设置了float的元素,以float:left为例,如图所示。会出现第一个浮动元素,即相对于父级元素浮动的,会出现双倍margin的问题。 注意仅仅是相对于父级元素浮动的,即第一个会出…

【tensorflow】——创建tensor的方法

目录 1、tf.constant() 2、tf.Variable() 3、tf.zeros():用0去填充指定形状的数组 4、tf.convert_to_tensor(a,dtypetf.int32) 5、tf.ones():用1去填充指定形状的数组 6、tf.fill():用指定的元素去填充指定形状的数组 7、随机化初始化进行创建 1)normal正态分…

Halcon —— 图像像素类型与转换

图像类型 就目前工业领域主流的图像处理工具halcon来讲,有以下几种图像类型:‘byte’, ‘complex’, ‘cyclic’, ‘direction’, ‘int1’, ‘int2’, ‘int4’, ‘int8’, ‘real’, ‘uint2’,具体含义如下图所示。 ‘byte’ 每像素1字节…

软件方法

核心工作流业务建模(组织建模):描述组织内部各个系统如何协作,使得组织可以为其他的组织提供有价值的服务,新系统只不过是组织为了对外提供更好的服务,对自己的内部重新设计而购买的一个零件。需求&#xf…

修改vim中的tab为4个空格

记录一下,避免用时还得搜........ 1、临时修改 在vi中,set tabstop4 或 set ts4  2、永久修改 vi --version 查看要修改的文件如果是vim的话,修改~/.vimrc如果是vi,修改~/.exrc加上:set tabstop4set nu //显示行号set…

Halcon例程详解(基于卡尺工具的匹配测量方法) —— measure_stamping_part.hdev

前言 1卡尺工具介绍 Halcon中的Metrology方法即为卡尺工具,可用来拟合线,圆,这种方法对于目标比背景很明显的图像尺寸测量是很方便的,不需要用blob进行边缘提取等,但缺点也很明显,需要目标的相对位置基本…

【TensorFlow】——不同shape的tensor在神经网络中的应用(scalar,vector,matrix)

目录 ​ 1、scalar——标量 1)在神经网络中存在的场景 2)one_hot编码 3)举例应用 2、vector——向量 ​ 3、matrixs——矩阵 4、dim3的tensor 5、dim4的tensor 6、dim5的tensor 本文主要的目的是让初学者对tensor的各种形式的使用场…

404页面 3秒后跳到首页 实现

---恢复内容开始--- 当我们访问一个页面不存在的时候&#xff0c;就会跳到404页面 一般网站都在在404页面中做一个处理&#xff0c; 就是当用户3秒种内还没有任何操作的话&#xff0c;就会自动跳转到其它页面 技术实现有两种方法 1. 在404页面中的header间加上 <meta http-e…

Java - I/O

File类 java.io操作文件和目录&#xff0c;与平台无关。具体的常用实例方法&#xff1a; File file new File("."); // 以当前路径创建名为 "." 的 File 对象   文件目录信息函数     -   String getName/Path/Parent()&#xff1a; 文件名/路径…

Halcon —— 边缘检测算子详解

一、算子介绍 1.1 种类 halcon内常用的边缘检测算子包括如下几种&#xff1a; 1.edges_image: 提取2D 图像边缘 2.edges_sub_pix&#xff1a;提取2D图像亚像素边缘 3.edges_object_model_3d &#xff1a;提取3D图像边缘 4.edges_color和edges_color_sub_pix&#xff1a;提取彩…

【TensorFlow】——索引与切片

目录 1、利用index进行索引 2、利用“&#xff1a;”和“...”进行索引与切片 3、tf.gather&#xff08;&#xff09;——对一个维度进行乱序索引 优势&#xff1a; 缺点&#xff1a; 例子 4、tf.gather_nd()——同时对多个维度进行索引 5、tf.boolean_mask()——通过布…

华硕(ASUS)X554LP笔记本一开机就进入aptio setup utility 问题的解决

某次因大意一直未插电&#xff0c;华硕&#xff08;ASUS&#xff09;X554LP笔记本后来没电关机。后来每次一开机就进入aptio setup utility界面&#xff0c;按F9调入默认配置&#xff0c;F10保存后退出&#xff0c;重启仍然进入aptio setup utility。 网上查了一下&#xff0c;…

redis和memcached缓存

memcached memcache开源的&#xff0c;高性能&#xff0c;高并发分布式内存缓存系统,天生支持集群 memcached下载地址&#xff1a; http://memcached.org/downloads python实现memcached缓存 pip3 install python-memcached import memcache aamemcache.Client(["10.0.0.2…

C# —— 进程与线程的理解

定义 进程 进程&#xff08;Process&#xff09;是Windows系统中的一个基本概念&#xff0c;它包含着一个运行程序所需要的资源。一个正在运行的应用程序在操作系统中被视为一个进程&#xff0c;进程可以包括一个或多个线程。 程序是在特定操作系统上的可执行文件&#xff0c…

git安装和初步使用

基本参照以下链接&#xff1a; http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137583770360579bc4b458f044ce7afed3df579123eca000 注意&#xff1a; &#xff08;1&#xff09;每台电脑对于github来说都有对应的ssh密钥&#xff0c;…

【TensorFlow】——broadcast_to(在不复制内存的情况下自动扩张tensor)

目录 作用&#xff1a; 内在的思路 优点 什么时候可以broadcast ​ tf.boradcast_to .VS tf.tile 作用&#xff1a; 在不会实际意义上复制数据的情况下进行tensor的维度和形状的扩张&#xff0c;使得两个tensor维度和形状一致 对两个维度不一致的tensor进行加减前进行br…

20145212 《信息安全系统设计基础》第2周学习总结

20145212 《信息安全系统设计基础》第2周学习总结 教材学习内容总结 Vim基本操作 1.使用vim命令进入vim界面vim后面加上你要打开的已存在的文件名或者不存在&#xff08;则作为新建文件&#xff09;的文件名。 打开Xfce终端&#xff0c;输入以下命令$ vim practice_1.txt 直接使…

Opencv—— 拟合直线

概念 最小二乘法是勒让德( A. M. Legendre)于1805年在其著作《计算慧星轨道的新方法》中提出的。 最小二乘法就是通过最小化误差的平方和&#xff0c;使得拟合对象无限接近目标对象。在图像处理中主要用于拟合线&#xff0c;通过求采样点距离误差最小的线&#xff0c;可以是直…

本地搭建Dubbo监控中心的安装步骤

Dubbo监控中心的安装步骤 参考链接&#xff1a;http://blog.csdn.net/lichunan/article/details/40349645 一、从github上下载dubbo源码进行编译&#xff1a; 1、下载地址为&#xff1a; https://github.com/alibaba/dubbo.git2、编译源码命令&#xff1a;首先进入~/dubbo&am…