one-hot向量
为了将词表示为向量输入到神经网络,一个简单的办法是使用one-hot向量。假设词典中不同字符的数量为N,每个字符已经同一个从0到N-1的连续整数值索引一一对应。如果一个字符的索引是整数i,那么就创建一个全0的长为N的向量,并将其位置为i的元素设成1.该向量就是对原字符的one-hot向量。
label = torch.tensor([2,3,4,1]).view(-1,1)
one_hot = torch.zeros(4, 10).scatter_(1, label, 1)
print(one_hot)
tensor([[0., 0., 1., 0., 0., 0., 0., 0., 0., 0.],
[0., 0., 0., 1., 0., 0., 0., 0., 0., 0.],
[0., 0., 0., 0., 1., 0., 0., 0., 0., 0.],
[0., 1., 0., 0., 0., 0., 0., 0., 0., 0.]])
来源:CSDN
作者:小白827
链接:https://blog.csdn.net/qq_24503095/article/details/103701585