文本生成(seq2seq)

问题:根据指定文本的风格生成。例如三国演义


如何实现?

首先需要了解语言模型

什么是语言模型?

语言模型是给定序列,预测下一个token出现的概率分布。
就好像是完型填空,只不过这个空在最后。而选项是整个单词表。
例如:一个女孩看见我,突然脸()
如果训练语料是我生平的简介的话,那么根据训练语料可以推测出,这个下面这个字大概率是“红”。

怎么做呢?

做文本生成的方法有很多。我作为刚入门都算不上的新手。写一下最简单的解决办法吧。

用LSTM 对文本编码 取出所有时间的编码或者最后时间的编码。然后去预测下一个token。

例如:我们从Si:“一个女孩看见我,"开始生成(当然也可以用一个代表开始的字符)。 对这个句子作为x,然后标签是“突”,最后计算将预测的概率分布和真实的概率分布做交叉熵损失计算,然后就是我们大家都知道的反向传播balabalabalala...
现在,就和普通的分类问题一毛一样了。

x:一个女孩看见我, y:突
x:个女孩看见我,突 y:然
x:女孩看见我,突然 y:脸
x:孩看见我,突然脸 y:红

这里假设根据前8个token预测下一个token。

其余的做法。

以后会学到新的生成方法,再来更新。
(要是能生成女朋友就好了)

你可能感兴趣的:(自然语言处理,深度学习)