python中的torch库是干什么的,什么是TORCH

  python中的torch库是干什么的,什么是TORCH

  PyTorch这几年火了。与TensorFlow相比,PyTorch对Python初学者更友好,也更容易使用。

  众所周知,numpy作为Python中数据分析的专业第三方库,速度比Python附带的数学库要快。同样,PyTorch也有一个类似numpy的库,叫做Tensor。张量称自己为神经网络的数字。

  numpy和张量的比较

  比较项目

  数字

  张量

  相同积分

  您可以为切片、改变维度、数学运算等定义多维数组。

  您可以为切片、改变维度、数学运算等定义多维数组。

  差异

  1.生成的数组类型为numpy.ndarray;

  2.将ndarray放入CPU进行操作;

  3.导入方法是将numpy作为NP导入,然后用NP排序。数组([1,2]);

  4.numpy中没有x.type()的用法,只能使用type () x)。

  1.生成的序列类型是火炬。张量;

  2.将张量放入GPU进行加速运算(如果有GPU的话);

  3.导入方法是torch,后面跟着torch.tensor ([1,2])或者torch.tensor ([1,2])进行排序;

  4.要在张量中查看数组类型,可以同时使用type(x)和x.type)。不过更推荐x.type()。具体原因请参考以下内容。

  例如,以下所有代码都在Jupyter Notebook上运行并通过:

  numpy:

  将numpy作为np导入

  x=NP.array ([ 1,2 ]))).

  写#告诉你,在Jupyter笔记本中,根据是否有print())功能,打印输出的效果是不一样的~

  (x #数组([ 1,2])))))))))))))652)))

  打印(x ) # [1] 2

  类型(x ) #numpy.ndarray

  打印(类型)x) #

  #注意:numpy没有x.type()的用法。Type)) x)只能用!

  张量:

  导入跟踪#请注意,这是导入跟踪,而不是导入传感器!

  x=torch.tensor ([ 1,2 ])))))))).

  (x #张量([ 1,2 ] ) ) ) ) ) ) ) ) ) ) ) ) 652)))

  Print (x) # tensor ([1,2]),请注意这和numpy不一样!

  (x)型#火炬。张量

  打印(类型)x) #

  X.type(#Torch.longtensor),注意:你不能用numpy写这个。报告错误。

  print(x . type))# torch . long tenser,注意:numpy里不能这么写。报告错误。

  Numpy和Tensor在使用上还有其他区别。因为不是文中的重点,我就不详细描述了。以后可能会更新~

  二。torch.tensor和torch.tensor的区别

  细心的读者可能会注意到,在张量中有两种创建数组的方法:torch.tensor [1,2]和torch.tensor [1,2]。那么,这两种方式有什么区别呢?

  )1) torch.tensor根据数据猜测数据类型,而torch.tensor torch.empty(随机生成垃圾排列。见例题)和torch.tensor然而,torch。导入数据时,张量使用全局默认浮点张量(dtype)。

  (2)火炬。张量)1)返回固定值1,Torch。张量)1)返回第一大小的张量,它是一个初始化的随机值。

  导入跟踪#请注意,这是导入跟踪,而不是导入传感器!

  x=torch.tensor ([ 1,2 ])))))))).

  (x #张量([ 1,2 ] ) ) ) ) ) ) ) ) ) ) ) ) 652)))

  Print (x) # tensor ([1,2]),请注意这和numpy不一样!

  (x)型#火炬。张量

  打印(类型)x) #

  X.type(#Torch.longtensor),注意:你不能用numpy写这个。报告错误。

  print(x . type))# torch . long tenser,注意:numpy里不能这么写。报告错误。

  y=torch.tensor ([ 1,2 ]).

  y #张量([1.2。])是因为火炬。张量使用全局缺省数据类型)floattensor。

  Print(y) #tensor([1.2。])是因为火炬。张量使用全局缺省数据类型(floatte)

  nsor)

  (y)型#火炬。张量

  打印(类型(y)) #

  Y.type() # 火炬。 FloatTensor ,注意:这里和上面不一样!张量-长张量,张量-浮点张量!

  print(y . type())# torch . float tensor,注意:这里和上面不一样!张量-长张量,张量-浮点张量!

  z=torch.empty([1,2])

  Z #随机运行两次,结果不同:张量([0。 0.]]),张量([[1.4013e-45,0.0000e00]])

  Print(z) #随机运行两次,结果不同:Tensor ([[0。 0.]]),张量([[1.4013e-45,0.0000e00]])

  (z)型#火炬。张量

  打印(类型(z)) #

  Z.type() # 火炬。 FloatTensor ,注意:empty()默认为torch。用浮子代替火炬。龙腾传感器

  Print (z.type ()) # torch。FloatTensor,注意:empty()默认为torch.floattensor而不是torch。龙腾传感器

  #torch.tensor(1)的比较,torch。张量(1)和torch.empty(1):

  t1=torch .张量(1)

  t2=火炬。张量(1)

  t3=torch.empty(1)

  t1 #张量(1)

  打印(t1)#张量(1)

  (t1)型#火炬。张量

  打印(类型(t1)) #

  t1.type() # 火炬。龙腾索

  print(t1.type()) #torch。龙腾传感器

  T2 #随机运行两次,得到不同的结果:张量([2.8026E-45]),张量([0 .])

  Print(t2) #随机运行两次,得到不同的结果:张量([2.8026E-45]),张量([0 .])

  (t2)型#火炬。张量

  打印(类型(t2)) #

  t2.type() # 火炬。“漂浮者”

  print(t2.type()) #torch。漂浮者

  T3 #随机运行两次,结果不同:张量([0。]),张量([1.4013e-45])

  Print(t3) #随机运行两次,得到不同的结果:张量([0。]),张量([1.4013e-45])

  (t3)型#火炬。张量

  打印(类型(t3)) #

  t3.type() # 火炬。“漂浮者”

  print(t3.type()) #torch。漂浮者

  如上所述,对于张量,更推荐使用x.type()来查看数据类型。因为x.type()的输出结果是torch。“龙感”或“火炬”。“FloatTensor”,您可以看到两个数组之间的差异。但是,如果采用类型(x ),所有输出结果都是torch。张量,不能反映类型差异。

  PyTorch是一个神奇的工具,其中张量比numpy丰富得多。可以在实践中总结,逐步完善~

  关于torch.tensor和torch的区别这篇文章到此为止。皮托赫张量。有关torch.tensor和torch的更多信息。PyTorch中的张量,请搜索脚本之家之前的文章或者继续浏览下面的相关文章。希望大家以后多多支持剧本之家!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: