序列到序列模型

使用 Keras 构建语言建模的循环神经网络(RNN)

David Cecchini

Instructor

序列到序列

可能的架构:

  • 多输入单输出
    • 情感分析
    • 分类
  • 多输入多输出
    • 文本生成
    • 神经机器翻译(NMT)
使用 Keras 构建语言建模的循环神经网络(RNN)

文本生成:示例

文本生成:示例

# 预训练模型
model.generate_sheldon_phrase()
'knock knock. penny. do you have an epost is part in your expert, 
too bealie to play the tariment with last night.'
使用 Keras 构建语言建模的循环神经网络(RNN)

文本生成:建模

如何构建文本生成模型:

  • 选择 token 粒度:字符或词
    • 词需要超大数据集(数亿句)
    • 字符训练更快,但易出错别字
  • 数据准备
    • 构造训练样本:(过去的 tokens,下一 token)
  • 设计模型架构
    • 嵌入层、层数等
  • 训练并实验
使用 Keras 构建语言建模的循环神经网络(RNN)

NMT:示例

神经机器翻译:示例

# 预训练模型
model.translate("Vamos jogar futebol?")
'Let's go play soccer?'
使用 Keras 构建语言建模的循环神经网络(RNN)

NMT:建模

如何构建 NMT 模型:

  • 获取双语平行句对样本
    • 例如 Anki 项目
  • 数据准备
    • 对输入语句进行分词
    • 对输出语句进行分词
  • 设计模型架构
    • 编码器与解码器
  • 训练并实验
使用 Keras 构建语言建模的循环神经网络(RNN)

章节概要

本章内容:

  • 文本生成
    • 用预训练模型生成句子
    • 学习数据准备与建模
  • 神经机器翻译(NMT)
    • 一体化 NMT 模型
使用 Keras 构建语言建模的循环神经网络(RNN)

Passons à la pratique !

使用 Keras 构建语言建模的循环神经网络(RNN)

Preparing Video For Download...