EOS标记可以添加到训练集每一个句子的结尾。
计算机对于自然语言的理解只能通过把文本转化为向量、矩阵的形式,通过计算来获取有用的信息,词嵌入应运而生。
词嵌入(WordEmbedding)的目的在于把某个词语、短语映射到高维空间,让相同、相近含义的字词在空间距离上距离相近
RNN的每一个神经元的softmax的输出就是词典的大小,每个词都有对应的概率。
下面是RNN从左到右依次预测每个词的过程。
上图是第一个神经元,然后再把第一个预测到的概率最大的输入到下一个神经元。
损失函数:每个时间步:
总的损失函数就是把所有时间步的损失都加起来。
采样使用的是随机采样:np.random.sampling
原因:如果是直接采用的softmax最大概率的预测,那么生成模型显然不具备结果多样性的特点。
注意,由于一些不是频繁出现的字符自定义置为某些字符比如都是 UNK,所以如果采样都UNK,可以继续采样来替换。
可以使用字符级的语言模型预测,即就是字母,数字,空格等符号组成原本的文本,这样就不会有新的未知短语的出现。但是需要更多的算力!!没有广泛的应用。