学习笔记(26)- plato-端到端模型-定闹钟

今天用了定闹钟的场景语料,在plato框架尝试了端到端的模型。

本文先记录英文的训练过程,然后记录中文的训练过程。

训练端到端的模型

发现使用英文的模型,还是显示有中文,所以,新建目录,重新训练

1. 用英文训练模型

工作目录:

xuehp@haomeiya002:~/git/plato-0224$

注意
metalwoz.jsonmetalwoz.hdf5 ,自动生成这2个文件

1.1. 准备文件

  • 数据文件

metalwoz.csv

  • 模型定义文件

metalWOZ_seq2seq_ludwig.yaml
定义了输入输出的特征

  • 运行加载文件

metalwoz_text.yaml
运行Agent时使用,定义了模型的路径

1.2. 训练模型

ludwig train 
       --data_csv data/metalwoz.csv 
       --model_definition_file metalWOZ_seq2seq_ludwig.yaml 
       --output_directory "models/joint_models/"

训练完毕

1.3. 使用模型

plato run --config metalwoz_text.yaml

看样子是可以运行起来的。

接下来使用中文语料进行训练

2. 用中文训练模型

工作目录:

xuehp@haomeiya002:~/git/plato-0223$

注意
metalwoz.jsonmetalwoz.hdf5 ,自动生成这2个文件

2.1. 准备文件

工作目录:

xuehp@haomeiya002:~/git/plato-0223$

  • 数据文件

INSURANCE_zh_seg.txt

这是翻译成中文的语料文件

已分词的对话语料文件

  • 模型定义文件

metalWOZ_seq2seq_ludwig.yaml
定义了输入输出的特征

  • 运行加载文件

metalwoz_text.yaml
运行Agent时使用,定义了模型的路径

2.2. 处理文件

分词,将中文的语料文件进行分词

解析,将txt文件解析为csv文件

  • 定义配置文件

Parse_MetalWOZ.yaml

  • 执行转换
plato parse --config Parse_MetalWOZ.yaml

解析之后的文件在data/metalwoz.csv

2.3. 训练模型

ludwig train 
       --data_csv data/metalwoz.csv 
       --model_definition_file metalWOZ_seq2seq_ludwig.yaml 
       --output_directory "models/joint_models/"

训练完毕

2.4. 使用模型

plato run --config metalwoz_text.yaml

原文地址:https://www.cnblogs.com/xuehuiping/p/12358817.html