seq2seq聊天模型(一)

摘要:
本文目的利用流程图,从理论方面,回顾,总结seq2seq模型,seq2seq概念你给模型一段输入,它返回一段输出!可以用在这些情景,聊天模型、翻译、看图说话、主旨提取等等涉及自然语言的层面,用途较广泛例如:输入"今天中午吃什么",输出"吃兰州拉面"。seq2seq是通过encoder编译器将一段输入,编译,汇聚成一个状态。再通过decoder解析器,解析该状态,返回一个输出!encoder和decoder都是建立再LSTM或者RNN的基础上。self.dec_Wemb=tf.get_variable2.使用gesim工具,将分词转换为向量。

原创文章,转载请注明出处

最近完成了sqe2seq聊天模型,磕磕碰碰的遇到不少问题,最终总算是做出来了,并符合自己的预期结果。

本文目的

利用流程图,从理论方面,回顾,总结seq2seq模型,

seq2seq概念

你给模型一段输入,它返回一段输出!

可以用在这些情景,聊天模型、翻译、看图说话、主旨提取等等涉及自然语言的层面,用途较广泛

例如:

输入"今天中午吃什么",
输出"吃兰州拉面"。

seq2seq是通过encoder编译器将一段输入,编译,汇聚成一个状态。再通过decoder解析器,解析该状态,返回一个输出!

encoder和decoder都是建立再LSTM或者RNN的基础上。


## 运行流程

1. 分词

输入"今天中午吃什么"

通过结巴分词工具,分词为["今天", "中午", "吃", "什么"]

输出结果为:输入通过seq2seq的计算后,输出结果为["吃", "拉州", "拉面"]

2. 分词向量化

对于分词最终都会转换为相应的向量
我采用了两种方法,将分词转换为向量
1.随机定义分词的向量,训练过程中,不断的修改,最终形成分词向量。

(下面代码,可以忽略)

 self.dec_Wemb = tf.get_variable('embedding', 
                       initializer=tf.random_uniform([dec_vocab_size + 2, self.dec_emb_size]), 
                       dtype=tf.float32)

2.使用gesim工具,将分词转换为向量。(我认为这个好,拓展性广很多)

for world in all_words_list:
    # ["_GAO_", "_PAD_", "*",
    if world == "_GAO_" or world == "_PAD_" or world == "*":
        continue
    try:
        embedding.append(model[world].tolist())
    except KeyError:
        embedding.append([0.5] * vim)

3.seq2seq核心运作如下流程图

这里是基础模型(还有attention模型,schedule模型等)
模型的核心点都是在encoder处,编译整理输入状态,传递给decoder解析器,解析得到结果!
seq2seq聊天模型(一)第1张

免责声明:文章转载自《seq2seq聊天模型(一)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Akka源码分析-Remote-收消息31 讲带你搞懂 SkyWalking下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

中文分词之结巴分词~~~附使用场景+demo(net)

常用技能(更新ing):http://www.cnblogs.com/dunitian/p/4822808.html#skill 技能总纲(更新ing):http://www.cnblogs.com/dunitian/p/5493793.html 在线演示:http://cppjieba-webdemo.herokuapp.com 完整demo:https...

Lucene实践之中文分词IKAalyzer

做检索怎么都绕不过中文分词去,学习一下用IKAnalyzer分词器做中文分词。 Game Starts 参考文档   1) 中文分词之Java实现使用IK Analyzer实现   2) IKAnalyzer 独立使用 配置扩展词典 依赖jar包   1) IKAnalyzer2012FF_u1.jar 最好使用这个版本下面说 [百度网盘下载]   2...

基于分布式的短文本命题实体识别之----人名识别(python实现)

目前对中文分词精度影响最大的主要是两方面:未登录词的识别和歧义切分。 据统计:未登录词中中文姓人名在文本中一般只占2%左右,但这其中高达50%以上的人名会产生切分错误。在所有的分词错误中,与人名有关的错误占到了将近90%,这中国人名都是根据人的想法起的名字,有很大的随意性,并且数量巨大,规律也不尽相同。 1.理论简介 命名实体识别(Named Ent...

Elasticsearch中文分词加拼音

网上可能有很多教程,我写这个只是记录一下自己学习的过程,给自己看的 。 中文分司网上搜了一下,用的IK分词器(https://github.com/medcl/elasticsearch-analysis-ik),拼音搜索插件用的是拼音分词器(https://github.com/medcl/elasticsearch-analysis-pinyin)。...

[转]智能聊天机器人小黄鸡及其制作方法

转自http://www.cnblogs.com/huj690/archive/2013/01/24/2875114.html      讲前先预热一下,如果有还不熟悉小黄鸡的亲~欢迎大家戳这里http://mysimi.sinaapp.com/ 自制小黄鸡一枚,欢迎测试。。暂且叫他小黄鸡2号~1号在后面哈        大家好,我是沐儿,今天很荣...

一个人工智能项目里的中文分词方案

做搜索的都知道,中文分词,一般都是先建一个词库,再根据词库进行分词。但是这样做有两个问题:1.存在歧义词,2.不容易发现新词。尤其第2点,在处理舆情类内容时更是如此。如果想减少这类问题,现在的主要解决手段,一般都是在后端建一个词条系统,通过累积找到高频词,然后把高频词加到词库中,再进行分词。但是这样做仍然有一个时间差问题,不适合即时性的内容判断。最近接手了...