离谱,这个开源项目我服了!

Posted 纯洁的微笑

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了离谱,这个开源项目我服了!相关的知识,希望对你有一定的参考价值。

哈喽,大家好,我是开源君,一个资深的互联网玩家,致力于为大家分享各领域优质开源项目。

逛逛GitHub是开源君的日常,最近偶然间看到一个使用深度学习来进行自动对对子的项目,着实有趣,让我想起周星驰主演的《唐伯虎点秋香》中唐伯虎与军师对穿肠进行对对子的场景,现在还历历在目,里面的对子有:

对穿肠:图画里,龙不吟虎不啸,小小书僮可笑可笑

唐伯虎:棋盘里,车无轮马无缰,叫声将军提防提防

对穿肠:十口心思,思君思国思社稷

唐伯虎:八目共赏,赏花赏月赏秋香

很多同学估计也和开源君一样,对于星爷的无厘头搞笑的作品爱不释手,遥想起当年。

项目简介

怀念了一番以后,我们来看看这个项目是怎么样的。文件的结构如下:

离谱,这个开源项目我服了!

这个项目使用的是 seq2seq 模型,并用 Tensorflow 完成项目的 coding。在进行项目研究之前我们需要准备一些东西:

  • Tensorflow
  • Python 3.6
  • 数据集

其中数据集需要根据开源作者提供的链接额外的下载,或者你可以使用自己的数据集,在使用自己的数据集的时候要注意作者的提示。

项目用法

1.训练

打开 couplet.py 并配置文件位置和参数,然后通过运行 python couplet.py 来训练模型,你可以在面板中看到 lossbleu 得分。当你发现 loss 停止损失时,可能需要重新配置 learning rate

如果你停止了训练后,想要接着继续训练。可以将 restore_model 设置为 True 并使用 m.train(<epoches>, start=<start>),其中 start 是你已经运行过的步骤。开源作者在 Nivida GTX-1080 GPU 上训练了这个模型大约4天。

2.运行训练模型

打开 server.py并配置vocab_filemodel_dir 参数,然后运行 python server.py 将启动一个可以运行 couplet 的 web 服务。或者用 Dockerfile 构建 Docker 映像,然后用 Docker 运行它。记住将正确的模型文件路径挂载到 Docker 容器中。

项目结果

开源君在进行一番鼓捣之后,感觉自己也可以成为对王之王。这就来对对对穿肠的对子:

对穿肠:图画里,龙不吟虎不啸,小小书僮可笑可笑

开源君:音容中,马识途春无声,茫茫战马难追难追

对穿肠:十口心思,思君思国思社稷

开源君:寸身言谢,谢天谢地谢大家

所以,为了鼓励鼓励开源君 ,点赞 + 在看 不来一下吗,祝各位程序员开发无 Bug,发大财,行大运。