0

我有

x = torch.ones(n,3) 
x[:,0].uniform_(-1.,1)
x[:5]

我得到了

tensor([[-0.4899,  1.0000,  1.0000],
        [ 0.7395,  1.0000,  1.0000],
        [-0.3599,  1.0000,  1.0000],
        [ 0.0863,  1.0000,  1.0000],
        [ 0.8935,  1.0000,  1.0000]])

我想要实现的是为第一行和第二行分配随机值并使第一行平方

[0.25,0.5,1](一个例子)

我有几个问题:

  • 如何将相同uniform_的内容仅应用于两行?
  • 是否有平方函数,以及如何仅将其应用于第一行?
  • 可以一次操作完成吗?
4

1 回答 1

0

我能够这样做

x = torch.ones(n,3) 
x[:,1].uniform_(-1.,1.)
x[:,0] = x[:,1]**2
x[:5]

带输出

tensor([[ 0.8429, -0.9181,  1.0000],
        [ 0.0638,  0.2525,  1.0000],
        [ 0.5168,  0.7189,  1.0000],
        [ 0.7832,  0.8850,  1.0000],
        [ 0.2592,  0.5091,  1.0000]])

我仍然很乐意接受更好的答案:)

于 2019-06-03T22:48:24.740 回答