pytorch与torch,pytorch调用tensorflow

  pytorch与torch,pytorch调用tensorflow

  本文主要介绍Pytorch中关于torch.flatten()和torch.nn.Flatten()的相关资料。文中介绍了详细的实例,对大家的学习或工作有一定的参考价值。有需要的朋友可以参考一下。

  Torch.flatten(x)等于torch.flatten(x,0)。默认情况下,张量被拉成一维向量,即从第一维开始展平,torch.flatten(x,1)表示从第二维开始展平。

  进口火炬

  x=torch.randn(2,4,2)

  打印(x)

  z=火炬.展平(x)

  打印(z)

  w=torch.flatten(x,1)

  打印(w)

  输出是:

  张量([[[-0.9814,0.8251),

  [ 0.8197, -1.0426],

  [-0.8185, -1.3367],

  [-0.6293, 0.6714]],

  [[-0.5973, -0.0944],

  [ 0.3720, 0.0672],

  [ 0.2681, 1.8025],

  [-0.0606, 0.4855]]])

  张量([-0.9814,0.8251,0.8197,-1.0426,-0.8185,-1.3367,-0.6293,0.6714,

  -0.5973, -0.0944, 0.3720, 0.0672, 0.2681, 1.8025, -0.0606, 0.4855])

  张量([[-0.9814,0.8251,0.8197,-1.0426,-0.8185,-1.3367,-0.6293,0.6714]

  ,

  [-0.5973, -0.0944, 0.3720, 0.0672, 0.2681, 1.8025, -0.0606, 0.4855]

  ])

  Torch.flatten(x,0,1)表示第一维度和第二维度之间的展平。

  进口火炬

  x=torch.randn(2,4,2)

  打印(x)

  W=torch.flatten(x,0,1) #第一维的长度为2,第二维的长度为4,展平后的长度为2*4。

  打印(w.shape)

  打印(w)

  输出是:

  张量([[[-0.5523,-0.1132),

  [-2.2659, -0.0316],

  [ 0.1372, -0.8486],

  [-0.3593, -0.2622]],

  [[-0.9130, 1.0038],

  [-0.3996, 0.4934],

  [ 1.7269, 0.8215],

  [ 0.1207, -0.9590]]])

  火炬。大小([8,2])

  张量([[-0.5523,-0.1132),

  [-2.2659, -0.0316],

  [ 0.1372, -0.8486],

  [-0.3593, -0.2622],

  [-0.9130, 1.0038],

  [-0.3996, 0.4934],

  [ 1.7269, 0.8215],

  [ 0.1207, -0.9590]])

  对于torch.nn.Flatten(),因为用在神经网络中,输入是一批数据,第一维度是batch。通常,一个数据被拉入一个维度,而不是一批数据。所以torch.nn.flat()默认从二次元展开。

  进口火炬

  # 32个随机5*5图形,带1个通道

  x=torch.randn(32,1,5,5)

  model=torch.nn.Sequential(

  #具有1个输入通道和6,3 * 3个输出通道的卷积内核,步长为1,填充=1

  torch.nn.Conv2d(1,6,3,1,1),

  torch.nn.Flatten()

  )

  输出=模型(x)

  print(output . shape)# 6 *(7-3 1)*(7-3 1)

  输出是:

  火炬。尺寸([32,150])

  总结

  关于Pytorch中torch.flatten()和torch.nn.Flatten()的这篇文章到此为止。有关Pytorch.flatten()和torch.nn.Flatten()的更多信息,请搜索热门IT软件开发工作室之前的文章或继续浏览下面的相关文章。希望大家以后多多支持热门IT软件开发工作室!

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

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