今天给大家分享一个有意思的开源代码——智能AI对对联。这是一个使用seq2seq模型打对联(对对联)的项目。这个项目是用Tensorflow写的。

目前github Star 数量 5.2k !使用开源协议:AGPL-3.0 License

环境要求:

  • Tensorflow
  • Python 3.6
  • Dataset(数据集)

你需要一些数据来运行这个程序,数据集可以从这个项目下载。

注意:如果您使用自己的数据集,则需要将<s><\s>作为前两行添加到 vocabs 文件中。

使用方法

训练

打开 couplet.py 并配置文件位置和超参数。然后运行 python couplet.py训练模型。

您可以在 Tensorbloard 看到训练损失和 bleu 分数。learning_rate当您发现损失停止递减时,您可能需要重新配置。这是损失图的示例:

如果您停止了训练并想继续训练它。您可以设置restore_model并True使用m.train(, start=),这start是您已经运行的步骤。

我已经在 Nivida GTX-1080 GPU 上训练了模型大约 4 天。

运行训练好的模型

打开server.py并配置vocab_file和model_dir参数。然后运行python server.py会启动一个可以播放对联的web服务。

或者使用 Dockerfile 构建 Docker 映像并使用 Docker 运行它。请记住将正确的模型文件路径挂载到 Docker 容器中。

这个开源项目演示地址和给github地址我放在下面了,感兴趣的小伙伴可以去尝试一下,如果你在使用这个项目中遇到有任何问题,也可以在本文章下留言评论。

项目演示地址:https://ai.binwang.me/couplet/

github地址: https://github.com/wb14123/seq2seq-couplet

最后修改日期: 2022年3月26日

作者

留言

撰写回覆或留言