embedding层需检查张量内部具体值的大小,并确保它们的值在有效范围内[0, num_embeddings-1]
学习参考
但是如果将嵌入的向量改成9就不会出错了,所以你设置的 input_dim 就是向量值的范围,超过了就会报错。
pytorch文档
torch.nn.Embedding(num_embeddings, embedding_dim, padding_idx=None, max_norm=None, norm_type=2.0, scale_grad_by_freq=False, sparse=False, _weight=None, device=None, dtype=None)
一个简单的查找表,存储固定字典和大小的嵌入。
这个模块通常用于存储单词嵌入并使用索引检索它们。模块的输入是一个索引列表,输出是相应的单词嵌入。
参数:
- num_embeddings (int) – 嵌入字典的大小
- embedding_dim (int) – 每个嵌入向量的大小