Tensor数据类型-1

本文介绍了Python中数据载体从List到Tensor的转变,重点讨论了在处理大数据时使用Numpy和TensorFlow的优势。TensorFlow的Tensor对象支持多种数据类型,并且能够利用GPU加速计算,还具备自动求导功能。通过`tf.device()`可以实现CPU与GPU间的资源转换,以适应不同的计算需求。
摘要由CSDN通过智能技术生成

数据载体

在python中,我们熟悉的载体有list载体,我们在list中可以添加任何的数据。但是List也有它的坏处,当你使用list存储一个较大的数据类型的时候,如果使用list一次存储一个值的话,这样它消耗的内存空间是非常大的,并且当使用它读取的时候会非常的慢。
然后为了解决大数据吞吐这个问题,我们可以使用numpy来解决,而numpy是在神经网络深度学习之前就设计号的一个计算方法,所以它就缺少那种自动求导,它也没有很好的gpu支持。这是tensor就诞生了,gpu可以很好的支持gpu,而且他还有自动求导等多种功能。

创建不同类型数据

我们如果要用tensor创建一个整数类型的数据,代码如下:
工具包就不写了

tf.constant(1)
<tf.Tensor:id=2,shape=(),dtype=int32,numpy=1>

单精度浮点型:

tf.constant(1.)
<tf.Tensor:id=4,shape=(),dtype=float32,numpy=1.0>

双精度浮点型:

tf.constant(2.,dtype=tf.double)
<tf.Tensor:id=2,shape=(),dtype=float64,numpy=1>

布尔型:

tf.constant([true,false])
<tf.Tensor:id=9,shape=(2,),dtype=bool,numpy=array[true,false]>

字符型:

tf.constant('hello.')
<tf.Tensor:id=2,shape=(),dtype=string,numpy=b'hello.'>

这个第二行都是生成的,就那第一个整型的举例来说吧,你给了一个整型的1,它下面就会给生成它的类型等和它相关的东西。
我们想要把在cpu上的设备给调用到gpu中,代码如下:

with tf.device("cpu")
	a=tf.constant([1])
aa=a.gpu
aa.device

同理,把gpu上的给调用到cpu上:

with tf.device("gpu")
	b=tf.constant([1])
bb=b.gpu
bb.device

现在我们知道它们之间是怎么相互转换了,但是我们还不知道为什么去转换。
原因就是,gpu和cpu之间的功能有不一样的功能,在cpu上的装置只能进行cpu的功能,在gpu上的装置只能进行gpu的功能。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值