二、pytorch的基石--Tensor张量

其实标量,向量,矩阵它们三个也是张量,标量是零维的张量,向量是一维的张量,矩阵是二维的张量。

四种加法

第一种:

>>>a+b

第二种:

>>>torch.add(a,b)

第三种:

>>>result = torch.Tensor(5,3)

>>>torch.add(a,b,out=result) #把运算结果存储在result上

第四种:

>>>b.add_(a) #把运算结果覆盖掉b

Tensor与numpy的Array的相互转换

1.tensor⇒array

>>>b = a.numpy() #a为tensor

2.array⇒tensor

>>>b = torch.from_numpy(a)  #a为numpy的array

CUDA的神助攻

假如少侠你有一块nvidia的显卡并支持cuda(如GTX 1080),那么恭喜你,你可以使用显卡gpu进行tensor的运算。假如你像Zen君一样没有,考虑买一个吧。。。购买指南:为你的深度学习任务挑选最合适GPU:从性能到价格的全方位指南

>>>torch.cuda.is_available()  #看看是否支持cuda

假如返回的是True那么,下面的代码将带你飞。

>>>x = x.cuda()

>>>y = y.cuda()

>>>x+y           #这里的x和y都是tensor,使用cuda函数以后,x和y的所有运算均会调用gpu来运算。



作者:Zen_君
链接:http://www.jianshu.com/p/5ae644748f21
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。