lc222 / seq2seq_chatbot

基于seq2seq模型的简单对话系统的tf实现,具有embedding、attention、beam_search等功能,数据集是Cornell Movie Dialogs
330 stars 100 forks source link

Whatever I input, it replies same insignificant content. #13

Open yjyGo opened 5 years ago

yjyGo commented 5 years ago

How old are you? Replies ---------------------------------------> relied relied relied relied relied relied relied relied relied relied relied relied relied relied relied relied relied burning relied relied relied relied relied relied relied relied log relied relied relied relied relied relied relied relied highly relied relied relied relied relied relied relied relied debbie

How old are you: Replies ---------------------------------------> relied relied relied relied relied relied relied relied relied relied relied relied relied relied relied relied relied burning relied relied relied relied relied relied relied relied log relied relied relied relied relied relied relied relied highly relied relied relied relied relied relied relied relied debbie

How old are you? Replies ---------------------------------------> relied relied relied relied relied relied relied relied relied relied relied relied relied relied relied relied relied burning relied relied relied relied relied relied relied relied log relied relied relied relied relied relied relied relied highly relied relied relied relied relied relied relied relied debbie

What time is it ? Replies ---------------------------------------> relied relied relied relied relied relied relied relied relied relied relied relied relied relied relied relied relied burning relied relied relied relied relied relied relied relied log relied relied relied relied relied relied relied relied highly relied relied relied relied relied relied relied relied debbie

jayeew commented 5 years ago

@yangjingyingGo 你好,我自己用keras写了对话系统,但是不管输入什么,得到的回复都是一样的,都是一个不变的单词 。我想你的问题和我的类似,请问你的问题得到解决了么? 我看你也在做对话系统,可以深入交流一下么?我的qq 962326693,谢谢

yjyGo commented 5 years ago

这个我解决了,你输入的内容一定要按格式来输入,比如我上边how old are you?, 句子的形式是一定要正确,严格按照英文分词的标准,词要正确,我有次old写成ole,标点符号要对,都要按空格隔开,要写成how old are you ?, 关于中间缩略词有分号的比如what‘s, 要写成what 's, 看作者是怎么且分词的。还有可能要关闭文件,再在编译环境里面重新打开,运行测试代码才行。我之前偶尔就会输出像上面这些内容,现在不会了

yjyGo commented 5 years ago

@yangjingyingGo 你好,我自己用keras写了对话系统,但是不管输入什么,得到的回复都是一样的,都是一个不变的单词 。我想你的问题和我的类似,请问你的问题得到解决了么? 我看你也在做对话系统,可以深入交流一下么?我的qq 962326693,谢谢

这个我解决了,你输入的内容一定要按格式来输入,比如我上边how old are you?, 句子的形式是一定要正确,严格按照英文分词的标准,词要正确,我有次old写成ole,标点符号要对,都要按空格隔开,要写成how old are you ?, 关于中间缩略词有分号的比如what‘s, 要写成what 's, 看作者是怎么且分词的。还有可能要关闭文件,再在编译环境里面重新打开,运行测试代码才行。我之前偶尔就会输出像上面这些内容,现在不会了

jayeew commented 5 years ago

@yangjingyingGo 你好,我自己用keras写了对话系统,但是不管输入什么,得到的回复都是一样的,都是一个不变的单词 。我想你的问题和我的类似,请问你的问题得到解决了么? 我看你也在做对话系统,可以深入交流一下么?我的qq 962326693,谢谢

这个我解决了,你输入的内容一定要按格式来输入,比如我上边how old are you?, 句子的形式是一定要正确,严格按照英文分词的标准,词要正确,我有次old写成ole,标点符号要对,都要按空格隔开,要写成how old are you ?, 关于中间缩略词有分号的比如what‘s, 要写成what 's, 看作者是怎么且分词的。还有可能要关闭文件,再在编译环境里面重新打开,运行测试代码才行。我之前偶尔就会输出像上面这些内容,现在不会了

你好 谢谢你的回复。 我想我的问题还没有解决。问题大概出在了attention上面。在不加attention的时候,模型可以正常收敛,实际预测时候,回复也还可以,就是泛化能力不是很好。然而在加了attention后,loss不能降低,从开始的2.8左右,迭代很多次基本不变,甚至有升高趋势,acc也基本不变。实际测试时候,就是不管我输入什么,他都只回复我“你”。 你对keras实现attention有实践么?期待进一步的交流,谢谢!

jayeew commented 5 years ago

我还没有解决, , ,应该是我attention的问题,不加attention的时候,训练时loss正常降低,实际测试时候也差不多能说人话 但是泛化能力不好;加了attention之后,训练时loss一直降不下去,开始就是2点多,好多次迭代之后还是基本不变,acc也不增加,实际测试时候就是不管输入什么,都之回复我 “你”。 你有用keras实现attention么?我检查了好多次都不知道问题出在哪里,在github问了一个keras实现attention的印度人,把我的代码发给他,他也检查没问题。。。

谢谢交流。

发送自 Windows 10 版邮件应用

发件人: yjyGo 发送时间: 2019年4月14日 14:47 收件人: lc222/seq2seq_chatbot 抄送: ChiaEWg; Comment 主题: Re: [lc222/seq2seq_chatbot] Whatever I input, it replies sameinsignificant content. (#13)

这个我解决了,你输入的内容一定要按格式来输入,比如我上边how old are you?, 句子的形式是一定要正确,严格按照英文分词的标准,词要正确,我有次old写成ole,标点符号要对,都要按空格隔开,要写成how old are you ?, 关于中间缩略词有分号的比如what‘s, 要写成what 's, 看作者是怎么且分词的。还有可能要关闭文件,再在编译环境里面重新打开,运行测试代码才行。我之前偶尔就会输出像上面这些内容,现在不会了 — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.

yjyGo commented 5 years ago

我还没有解决, , ,应该是我attention的问题,不加attention的时候,训练时loss正常降低,实际测试时候也差不多能说人话 但是泛化能力不好;加了attention之后,训练时loss一直降不下去,开始就是2点多,好多次迭代之后还是基本不变,acc也不增加,实际测试时候就是不管输入什么,都之回复我 “你”。 你有用keras实现attention么?我检查了好多次都不知道问题出在哪里,在github问了一个keras实现attention的印度人,把我的代码发给他,他也检查没问题。。。 谢谢交流。 发送自 Windows 10 版邮件应用 发件人: yjyGo 发送时间: 2019年4月14日 14:47 收件人: lc222/seq2seq_chatbot 抄送: ChiaEWg; Comment 主题: Re: [lc222/seq2seq_chatbot] Whatever I input, it replies sameinsignificant content. (#13) 这个我解决了,你输入的内容一定要按格式来输入,比如我上边how old are you?, 句子的形式是一定要正确,严格按照英文分词的标准,词要正确,我有次old写成ole,标点符号要对,都要按空格隔开,要写成how old are you ?, 关于中间缩略词有分号的比如what‘s, 要写成what 's, 看作者是怎么且分词的。还有可能要关闭文件,再在编译环境里面重新打开,运行测试代码才行。我之前偶尔就会输出像上面这些内容,现在不会了 — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.

抱歉,我没用keras复现过这个模型。keras搭建起来比较简单,但是出问题不好解决,除非你对底层原理非常了解。不过应该有很多用keras写attention的项目,加油。