N Gram个人理解(根据pytorch官方代码)

WORD EMBEDDINGS: ENCODING LEXICAL SEMANTICS
参考官方代码 N gram的操作过程如下:
1、给定数据集合如
sentence = """Whatever is worth doing is worth doing well.""".split()
2、提取所有三元组
"""Whatever is worth"""等
3、提取所有sentence出现的不同词汇set(sentence)
4、按数字将不同词转换为标量1~n
5、用torch.nn.Embedding初始化每个词的初始向量
官方文档对这个函数的解释如下:
A simple lookup table that stores embeddings of a fixed dictionary and size.

This module is often used to store word embeddings and retrieve them using indices. The input to the module is a list of indices, and the output is the corresponding word embeddings.
根据实际操作,猜测应该是随机初始化一个向量,不过函数提供了可以初始化pretrained weight的结构
6、输入是头两个词embedding的向量,输出则是第三个词的one-hot表示形式。
也就是一个预测编码的形式

你可能感兴趣的:(N Gram个人理解(根据pytorch官方代码))