通过paddle的to_tensor,我们可以很简单的进行paddlepaddle的向量创建,并可以与python的基础列表,或者numpy进行相互转换。
import numpy as np
import paddle
x = np.array([1,2])
tensor = paddle.to_tensor(x)
x = [1,2]
tensor1 = paddle.to_tensor(x)
print(tensor == tensor1)#Tensor(shape=[2], dtype=bool, place=Place(cpu), stop_gradient=True,[True, True])
print(tensor is tensor1)#False
可以看到tensor和tensor1在值上是一致的,并且在==下打印了多个True,这和numpy的相等方式是一致的,但是在is下是false,这说明两次赋值即使值相同,但是也分配了两次空间。
如果要生成全是0或1的向量,在paddle中也可以像numpy一样方便的生成对应形状的值。
import paddle
x = paddle.ones([1,2])
y = paddle.zeros([2,1])
print(x)#Tensor(shape=[1, 2], dtype=float32, place=Place(cpu), stop_gradient=True,[[1., 1.]])
print(y)#Tensor(shape=[2, 1], dtype=float32, place=Place(cpu), stop_gradient=True,[[0.],[0.]])