AI 智能写情诗、藏头诗
一、AI 智能情诗、藏头诗展示
最近使用PyTorch的LSTM训练一个写情诗(七言)的模型,可以随机生成情诗、也可以生成藏头情诗。

在特殊的日子用AI生成一首这样的诗,是不是很酷!下面分享下AI 智能写情诗原理。
二、AI 智能写情诗原理
1、AI 智能写情诗思想
通过学习既有的情诗,随机或者依据给出的字,逐个完成下一个字的预测,直到一首诗全部预测完成。
预测过程大致如下:

2、情诗准备
在网上搜索并收集情诗(本文七言),如https://github.com/chinese-poetry/chinese-poetry。
本文的情诗包含两部分:
第一部分:原始的七言情诗
原始七言情诗,如:
相见时难别亦难,
东风无力百花残。
春蚕到死丝方尽,
蜡炬成灰泪始干。
第二部分:改造的七言情诗
为了把写的比较好的五言、词也纳入到AI的学习中,将其改造生成七言情诗:改造后的为两行一句,通过随机匹配两句组成一首诗,如:
日看镜中问相思,溯游宛在水中央。
雁字多相思几许,恰豆蔻词工梦好。
3、模型训练
3.1、处理情诗数据
第一步需要将准备好的情诗数据转换为PyTorch LSTM模型需要的词向量格式:
- 构建x,y
x=[相,见,时,难,别,亦,难,,,东,风,无,力,百,花,残,。,春,蚕,到,死,丝,方,尽,,,蜡,炬,成,灰,泪,始,干]
y=[见,时,难,别,亦,难,,,东,风,无,力,百,花,残,。,春,蚕,到,死,丝,方,尽,,,蜡,炬,成,灰,泪,始,干,。]
- 将x对应的字,对应词库索引,对应向量;将y对应的字,对应词库索引,大致的过程如下:

3.2、构建情诗模型
第二步就是使用LSTM模型训练情诗模型,大致过程如下:

相关的应用也在设计与研发中,期待和大家见面!


AI 智能写情诗、藏头诗的更多相关文章
- 用Python优雅的写出送给女儿的藏头诗
2016年迎来了我的小土匪,忙活了一年,在17年的4月加班的夜里因思念以小土匪的名字写了一首藏头发了朋友圈,不温不火,最近在看python,那么如何用python优雅的用写出这首诗了? 执行 代码 i ...
- PTA实验11-1-7 藏头诗 (15分)
实验11-1-7 藏头诗 (15分) 本题要求编写一个解密藏头诗的程序. 输入格式: 输入为一首中文藏头诗,一共四句,每句一行.注意:一个汉字占两个字节. 输出格式: 取出每句的第一个汉字并连接在一起 ...
- NYOJ题目817英文藏头诗
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAtEAAAKXCAIAAADLqoEhAAAgAElEQVR4nO3dO1LrzNbG8W8S5AyE2D
- 七夕节来啦!AI一键生成情诗,去发给你的女朋友吧!
[摘要] Hello大家好,今天就是七夕节了,为了增进和女朋友之间的情感,我写了一个自动生成情诗的AI: 大家可以在ModelArts尝试复现模型,然后快去发给你们的女朋友吧- 大家好,我是b站up主 ...
- AI智能外呼机器人网络拓扑结构笔记
最近开发了一套AI智能外呼机器人系统,系统主要有3部分组成:web管理平台:呼叫机器人:SIP软交换.具体网络拓扑结构如下图: 三部分主要功能如下: 1.web管理平台:话术管理.任务管理.线路管理. ...
- 用电销机器人让电销企业迈入AI智能时代
2019年是AI智能快速发展的一年,有非常多的企业已经用AI智能代替原有的传统员工做重复性高的工作,就拿销售行业来说,为了让电销员工提升工作效率,拥有更多的成单,大部分有电销岗位的公司都会把重复率较高 ...
- AI智能皮肤测试仪助力美业数字化营销 实现门店与用户双赢局面
当皮肤遇到AI智能,会有怎么样的火花呢?随着生活水平的提升,人们对肌肤保养护理的需求也越来越高,人要美,皮肤养护也要更精准,数字化必将成为美业发展的新契机.新机遇下肌肤管家SkinRun为美业客户提供 ...
- 人工智能AI智能加速卡技术
人工智能AI智能加速卡技术 一. 可编程AI加速卡 1. 概述: 这款可编程AI加速器卡具备 FPGA 加速的强大性能和多功能性,可部署AI加速器IP(WNN/GNN,直接加速卷积神经网络,直接运行常 ...
- 36氪首发 | 「myShape」完成千万级人民币 Pre-A轮融资,推出 AI 智能健身私教
无需任何可穿戴设备. 36氪获悉,myShape(原Shapejoy)已于近期完成千万级人民币的Pre-A轮融资,由天奇阿米巴领投,远洋集团.七熹资本以及老股东跟投.过去 myShape 曾获得元迅资 ...
随机推荐
- 使用VUE CLI3.0搭建项目vue2+scss+element简易版
1.安装Vue CLI 3 //三选一即可cnpm install -g @vue/cli npm install -g @vue/cli yarn global add @vue/cli 注意: 1 ...
- 编写Java程序,使用Swing布局管理器和常用控件,实现仿QQ登录界面
返回本章节 返回作业目录 需求说明: 使用Swing布局管理器和常用控件,实现仿QQ登录界面 实现思路: 创建登录界面的类QQLogin,该类继承父类JFrame,在该类中创建无参数的构造方法,在构造 ...
- docker简单安装
docker的安装官网有很直接的教程,直达链接: Ubuntu:https://docs.docker.com/engine/install/ubuntu/ CentOS:https://docs.d ...
- C# double类型精度丢失问题
我们先看一段代码,可以在控制台程序中执行看看结果 { double d = 500; double d1 = 233.84; double d2 = d - d1; //d2=266.15999999 ...
- PHP 中的僵尸进程、孤儿进程详解
僵尸进程 当子进程运行结束,父进程仍然继续运行,但父进程没有对子进程进行回收,释放子进程占用的资源,此时子进程就成为了一个僵尸进程. 在Unix进程管理中,如果新开的子进程运行结束,父进程将会收到一个 ...
- centos6.5-Apache优化
Apache的网页压缩功能 一.配置网页压缩功能 在配置压缩功能以前访问网页的响应头部 Response Headers view source Accept-Ranges:bytes Connect ...
- Java 单引号 与 双引号 区别
双引号,用来引用字符串, 单引号用来表示单个字符.
- spring boot 中使用swagger
一.pom.xml <dependency> <groupId>io.springfox</groupId> <artifactId>springfox ...
- Spring Security 接口认证鉴权入门实践指南
目录 前言 SpringBoot 示例 SpringBoot pom.xml SpringBoot application.yml SpringBoot IndexController SpringB ...
- redis的使用场景和优缺点
使用场景和优缺点: 2 Redis用来做什么? 通常局限点来说,Redis也以消息队列的形式存在,作为内嵌的List存在,满足实时的高并发需求.而通常在一个电商类型的数据处理过程之中,有关商品,热销, ...