编写一个基于训练数据的自然语言生成模型。
语言：Python 3
编写一个基于训练数据的自然语言生成模型，大致步骤如下：

1. 收集并处理原始文本数据，例如清除标点符号、特殊字符等。

2. 切分出单词或者词组，并对其进行编码、向量化等处理。

3. 使用训练数据构建一个语言模型，例如 n-gram 模型、循环神经网络（RNN）、变换器（Transformer）等。

4. 对测试数据进行预处理，并将其输入到构建好的语言模型中，得到生成的文本结果。

具体实现的细节和代码可以参考自然语言处理相关的 Python 库，例如 nltk、spaCy、keras 等。