学习笔记(24)- plato-训练中文模型
先处理中文语料。参考上篇笔记
1. 准备model_definition_file文件
官方文档给了例子,
plato/example/config/ludwig/metalWOZ_seq2seq_ludwig.yaml
---
input_features:
-
name: user
type: text
level: word
encoder: rnn
cell_type: lstm
reduce_output: null
output_features:
-
name: system
type: text
level: word
decoder: generator
cell_type: lstm
attention: bahdanau
training:
epochs: 100
2. 开始训练模型
注意模型的保存路径
ludwig train \
--data_csv data/metalwoz.csv \
--model_definition_file plato/example/config/ludwig/metalWOZ_seq2seq_ludwig.yaml \
--output_directory "models/joint_models/"
3. 写类文件,加载模型
模型训练完毕之后,就可以使用了。
那么如何使用呢? 需要写类实现接口。
写一个类,继承Conversational Module,来加载和查询模型。
这个类只需要加载模型,查询并负责输出。
我们需要把输入文本转换为pandas dataframe,从输出捕获预测序列,将他们组织为字符串,并返回。
参考 plato.agent.component.joint_model.metal_woz_seq2seq.py
package: plato.agent.component.joint_model.metal_woz_seq2seq
class: MetalWOZSeq2Seq
文件:
plato/agent/component/joint_model/metal_woz_seq2seq.py
"""
MetalWOZ is an MetalWOZ class that defines an interface to Ludwig models.
"""
class MetalWOZSeq2Seq(ConversationalModule):
……
4. 运行Agent
写一个yaml文件,就可以运行Agent了,
参考plato/example/config/application/metalwoz_generic.yaml ,这是一个seq2seq的例子。
plato run --config metalwoz_text.yaml
plato/example/config/application/metalwoz_text.yaml
5. 测试结果
可以做一些输入和测试,看看效果
学习笔记(24)- plato-训练中文模型的更多相关文章
- GIS案例学习笔记-多边形内部缓冲区地理模型
GIS案例学习笔记-多边形内部缓冲区地理模型 联系方式:谢老师,135-4855-4328,xiexiaokui#qq.com 目的:对于多边形,建立内部缓冲区. 问题:ArcGIS缓冲工具不支持内部 ...
- TensorFlow学习笔记——LeNet-5(训练自己的数据集)
在之前的TensorFlow学习笔记——图像识别与卷积神经网络(链接:请点击我)中了解了一下经典的卷积神经网络模型LeNet模型.那其实之前学习了别人的代码实现了LeNet网络对MNIST数据集的训练 ...
- 《Master Bitcoin》学习笔记02——比特币的交易模型
比特币的交易模型 模型基本描述 前面一篇学习笔记01提到了一个交易模型(第三章的内容),在第五章中,除了对这个模型做个详细介绍之外,其实和我上一篇理解的交易模型差不多,一个交易包含输入与输出,比特币是 ...
- [原创]java WEB学习笔记17:关于中文乱码的问题 和 tomcat在eclipse中起动成功,主页却打不开
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- 【Spring学习笔记-MVC-7】Spring MVC模型对象-模型属性讲解
作者:ssslinppp 来自为知笔记(Wiz) 附件列表 处理模型数据.png
- [原创]java WEB学习笔记24:MVC案例完整实践(part 5)---删除操作的设计与实现
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- DeepLearning.ai学习笔记(五)序列模型 -- week2 序列模型和注意力机制
一.基础模型 假设要翻译下面这句话: "简将要在9月访问中国" 正确的翻译结果应该是: "Jane is visiting China in September" ...
- word2vec训练中文模型
-- 这篇文章是一个学习.分析的博客 --- 1.准备数据与预处理 首先需要一份比较大的中文语料数据,可以考虑中文的维基百科(也可以试试搜狗的新闻语料库).中文维基百科的打包文件地址为 https: ...
- 自然语言处理NLP学习笔记一:概念与模型初探
前言 先来看一些demo,来一些直观的了解. 自然语言处理: 可以做中文分词,词性分析,文本摘要等,为后面的知识图谱做准备. http://xiaosi.trs.cn/demo/rs/demo 知识图 ...
- DeepLearning.ai学习笔记(五)序列模型 -- week1 循环序列模型
一.为什么选择序列模型 序列模型可以用于很多领域,如语音识别,撰写文章等等.总之很多优点... 二.数学符号 为了后面方便说明,先将会用到的数学符号进行介绍. 以下图为例,假如我们需要定位一句话中人名 ...
随机推荐
- 删除空目录命令 - rmdir
(1) 命令名称:rmdir (2) 英文原意:remove empty directories (3) 命令所在路径:/bin/rmdir (4) 执行权限:所有用户 (5) 功能描述:删除空目录( ...
- 基于Linq表达式做的一个简单的表达式生成器
using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations.Schema; ...
- java List 排序,升序,降序
import java.util.*; public class EntrySets { public static void main(String[] args) { Map<Object, ...
- XSS Payload List
标签.事件.属性 xss的攻击原理就是前端被插入了恶意的js代码,下面展示大部分可以执行js的标签.事件.属性: 标签(label) <script> <a> <p> ...
- scw——02错误initializationError(Runner:JUnit 4)
代码: 错误: 原因:版本不同,自动生成的代码不同 解决:
- HTML文字标签
<h1>标题标签,总共六个等级,不能创造标签,只有预定义好的标签才可以被浏览器解析 <br>换行标签,没有内容可以修饰也称为空标签 <p>段落标签</p> ...
- mysql分组,然后组内排序取最新的一条
参照: https://blog.csdn.net/qq_16504067/article/details/78589232 https://www.cnblogs.com/w1441639547/p ...
- [lua]紫猫lua教程-命令宝典-L1-01-07. table表
L1[table]01. table表的定义与赋值 小知识:声明表的例子 xx={}--创建一个空表xx --给这表的元素赋值 test="a" xx[test]="a& ...
- ansible playbook详解
ansible playbook是由yml语法书写,结构清晰,可读性强,所以必须掌握yml基础语法 语法 描述 缩进 YAML使用固定的缩进风格表示层级结构,每个缩进由两个空格组成,不能使用tabs键 ...
- 洛谷 P4555 [国家集训队]最长双回文串(Manacher)
题目链接:https://www.luogu.com.cn/problem/P4555 首先明白两个回文串,那么要使两个回文串成立,那么我们只能把$'#'$作为中间节点. 然后我们跑一边Manache ...