pytorch不是一个完备的语言库,它是用于数据计算的GPU加速库,它没有内置对string类型的支持。
它如何表达string?使用编码的方式
(1)one-hot([0,1,0,0……])
(2)Embedding(word2vec、glove)
Tensor有不同的数据类型,每种类型分别有对应CPU和GPU版本(HalfTensor除外)。
默认的Tensor是FloatTensor,可通过torch.set_default_tensor_type修改默认tensor类型(如果默认类型为GPU tensor,则所有操作都将在GPU上进行)。
HalfTensor是专为GPU版本设计的,同样的元素个数,显存占用只有HalfTensor的一半,所以可以极大缓解GPU显存不足的问题,但是由于HalfTensor所能表示的数值大小和精度有限,所以可能出现溢出等问题。
在cpu上tensor的数据类型:torch.FloatTensor
在GPU上tensor的数据类型:torch.cuda.FloatTensor
CPU张量