ChatBot-PyTorch icon indicating copy to clipboard operation
ChatBot-PyTorch copied to clipboard

没有weights/encoder,weights/decoder,weights/attention文件

Open zysNLP opened this issue 6 years ago • 33 comments

您好,我在运行过程中发现缺少这三个文件,作者是不是忘记导出这些参数了?谢谢!

zysNLP avatar Nov 27 '18 07:11 zysNLP

权重文件可以用自己的数据集训练。

liangstein avatar Nov 27 '18 13:11 liangstein

请问是运行哪个文件能训练出权重文件呢?我试了三个python文件好像都不行

zysNLP avatar Nov 29 '18 01:11 zysNLP

有个train的py文件

liangstein avatar Nov 29 '18 02:11 liangstein

是下面这个train_chatbot.py的最后三行吗? with open("weights/encoder","wb") as f: pickle.dump([ele.cpu() for ele in params_encoder],f,protocol=pickle.HIGHEST_PROTOCOL) with open("weights/decoder","wb") as f: pickle.dump([ele.cpu() for ele in params_decoder],f,protocol=pickle.HIGHEST_PROTOCOL) with open("weights/attention", "wb") as f: pickle.dump([ele.cpu() for ele in params_attention], f, protocol=pickle.HIGHEST_PROTOCOL)

zysNLP avatar Nov 29 '18 03:11 zysNLP

这是把训练好的权重写进硬盘,要开始训练需要有pytorch的环境,然后直接python train_chatbot.py就开始了。

liangstein avatar Nov 29 '18 03:11 liangstein

运行python train_chatbot.py以后没什么问题,结果: .... tensor(5.2833, device='cuda:0', grad_fn=<NllLossBackward>) tensor(5.1880, device='cuda:0', grad_fn=<NllLossBackward>) tensor(5.3055, device='cuda:0', grad_fn=<NllLossBackward>) Traceback (most recent call last): File "train_chatbot.py", line 104, in with open("weights/encoder","wb") as f: FileNotFoundError: [Errno 2] No such file or directory: 'weights/encoder'

这意思是让我实现建立一个'weights/encoder'吗,enconder文件后缀用什么

zysNLP avatar Nov 29 '18 04:11 zysNLP

原来需要在目录中事先建立一个'weights‘文件就好了。。。建议您在github里添上这个空文件夹吧

zysNLP avatar Nov 29 '18 04:11 zysNLP

最后想问下A_no_repeat和Q_no_repeat这两个文件怎么打开呀?需要用什么工具么

zysNLP avatar Nov 29 '18 04:11 zysNLP

用pickle 加载 pickle.load("filename")

liangstein avatar Nov 29 '18 05:11 liangstein

这跑到什么时候停止啊,现在已经是tensor(1.5055, device='cuda:0', grad_fn=),电脑太烫了

zysNLP avatar Nov 29 '18 05:11 zysNLP

老哥能给说下这个到什么时候收敛么,再跑下去我怕电脑热炸了....

zysNLP avatar Nov 29 '18 05:11 zysNLP

loss降到1e-4以下,看losses这个文本文件

liangstein avatar Nov 29 '18 06:11 liangstein

请问下有什么办法能把loss迅速降到1e-4以下?按照您的算法,跑完这个需要几天时间吧?而且电脑一直特别烫的问题怎么解决。我32G,1080Ti的电脑,跑您这个程序,感觉对电脑有点担忧啊,您跑得时候也这么烫么?

zysNLP avatar Nov 29 '18 07:11 zysNLP

我大概用了两天,1080ti要快些。我用1080平均75度。

liangstein avatar Nov 29 '18 07:11 liangstein

主板温度到了99度,GTX1080Ti温度87度,package id 0--68度也不知道是什么?主板这么高的温度我怕烤化了。。。

zysNLP avatar Nov 29 '18 08:11 zysNLP

那是你电脑机箱有问题。:)

liangstein avatar Nov 29 '18 08:11 liangstein

是没安装散热器么

zysNLP avatar Nov 29 '18 08:11 zysNLP

算了 我把model上传吧。 https://www.dropbox.com/s/i8lleyc4h4shx7n/weights.tar?dl=0

liangstein avatar Nov 29 '18 08:11 liangstein

打不开这个网站,老哥把weights单独发我一份吧,[email protected]

zysNLP avatar Nov 29 '18 08:11 zysNLP

那我没办法了 几百兆我邮箱发不了,打不开就想办法打开。

liangstein avatar Nov 29 '18 08:11 liangstein

实在打不开,哥你加我qq,然后压缩一下用qq发给我吧,648634000。多谢!!!

zysNLP avatar Nov 29 '18 08:11 zysNLP

https://liangstein.top/V/weights.tar

liangstein avatar Nov 29 '18 08:11 liangstein

OK,多谢!

zysNLP avatar Nov 29 '18 08:11 zysNLP

最后,如果我改变了训练语料库,得到了比小黄鸡语料更多的语料,是不是还要重新训练得到新的'weights‘?...我让师傅看看机箱吧,感谢!

zysNLP avatar Nov 29 '18 08:11 zysNLP

要的. 不用。

liangstein avatar Nov 29 '18 08:11 liangstein

請問我想使用自己的語料,不是小黃鴨的,請問原始的小黃鴨資料格式為何呢? 大感謝!

DavidLanz avatar Feb 18 '19 00:02 DavidLanz

需要分词,我是按照字分的,一个字对应一个one-hot编码。 输入格式是[batch_size, time_step, word_dimension]

liangstein avatar Feb 18 '19 02:02 liangstein

請問您 train_chatbot.py裡,word_index_dict與index_word_dict這兩個變量是怎麼產生的呢?

DavidLanz avatar Feb 18 '19 06:02 DavidLanz

这是通过count每个字出现的次数统计得到的。

liangstein avatar Feb 18 '19 07:02 liangstein

謝謝您,請問是在訓練集每句話 {問句+答句} 的全部的統計結果嗎?

比方說「鸡」,他的key是17,即: word_index_dict['鸡'] => 17,是重複了17次對嗎,不知道理解有沒有錯誤?

for k,v in enumerate(word_index_dict, start=0): print(("k=%s, v=%s") % (k,v))

DavidLanz avatar Feb 18 '19 07:02 DavidLanz