目前循环神经网络(RNN)已经广泛用于自然语言处理中,可以处理大量的序列数据,可以说是最强大的神经网络模型之一。人们已经给 RNN 找到了越来越多的事情做,比如画画和写诗,微软的小冰都已经出版了一本诗集了。

而其实训练一个能写诗的神经网络并不难,下面我们就介绍如何简单快捷地建立一个会写诗的网络模型。

本次开发环境如下:

  • Python 3.6
  • Keras 环境
  • Jupyter Notebook

整个过程分为以下步骤完成:

  1. 语料准备
  2. 语料预处理
  3. 模型参数配置
  4. 构建模型
  5. 训练模型
  6. 模型作诗
  7. 绘制模型网络结构图

下面一步步来构建和训练一个会写诗的模型。

第一,语料准备。一共四万多首古诗,每行一首诗,标题在预处理的时候已经去掉了。

第二,文件预处理。首先,机器并不懂每个中文汉字代表的是什么,所以要将文字转换为机器能理解的形式,这里我们采用 One-Hot 的形式,这样诗句中的每个字都能用向量来表示,下面定义函数 preprocess_file() 来处理。

    puncs = [']', '[', '(', ')', '{', '}', &

第11课:动手实战基于 LSTM 轻松生成各种古诗相关推荐

  1. java rnn生成古诗_Tensorflow:基于LSTM轻松生成各种古诗

    原标题:Tensorflow:基于LSTM轻松生成各种古诗 本文代码在公众号 datadw 里 回复古诗即可获取. RNN不像传统的神经网络-它们的输出输出是固定的,而RNN允许我们输入输出向量序列. ...

  2. 自然语言处理实战-基于LSTM的藏头诗和古诗自动生成

    自然语言处理实战-基于LSTM的藏头诗和古诗自动生成 第一次写也是自己的第一篇博客,分享一下自己做的实验以及遇到的一些问题和上交的结课作业.资源都是开源的,参考文章写的很好,菜鸟的我也能理解.原文链接 ...

  3. 第06课:动手实战基于 ML 的中文短文本分类

    文本分类,属于有监督学习中的一部分,在很多场景下都有应用,下面通过小数据的实例,一步步完成中文短文本的分类实现,整个过程尽量做到少理论重实战. 开发环境,我们选择: Windows 系统 Python ...

  4. 第07课:动手实战基于 ML 的中文短文本聚类

    关于文本聚类,我曾在 Chat<NLP 中文文本聚类之无监督学习>中介绍过,文本聚类是将一个个文档由原有的自然语言文字信息转化成数学信息,以高维空间点的形式展现出来,通过计算哪些点距离比较 ...

  5. 第10课:动手实战基于 CNN 的电影推荐系统

    本文从深度学习卷积神经网络入手,基于 Github 的开源项目来完成 MovieLens 数据集的电影推荐系统. 什么是推荐系统呢? 什么是推荐系统呢?首先我们来看看几个常见的推荐场景. 如果你经常通 ...

  6. Tensorflow:基于LSTM生成藏头诗

    Tensorflow:基于LSTM生成藏头诗 最近在学习TensorFlow,学习到了RNN这一块,相关的资料不是很多,了解到使用RNN可以生成藏头诗之后,我就决定拿这个下手啦! 本文不介绍RNN以及 ...

  7. 第103课:动手实战联合使用Spark Streaming、Broadcast、Accumulator实现在线黑名单过滤和计数

    第103课:动手实战联合使用Spark Streaming.Broadcast.Accumulator实现在线黑名单过滤和计数 /* 王家林老师授课http://weibo.com/ilovepain ...

  8. 第11课 Altium Designer20(AD20)+VESC6.4实战教程:绘制原理图8(北冥有鱼)

    第11课 Altium Designer20(AD20)+VESC6.4实战教程:绘制原理图8(北冥有鱼)

  9. Spark商业案例与性能调优实战100课》第11课:商业案例之通过纯粹通过DataFrame分析大数据电影点评系仿QQ和微信、淘宝等用户群分析与实战

    Spark商业案例与性能调优实战100课>第11课:商业案例之通过纯粹通过DataFrame分析大数据电影点评系仿QQ和微信.淘宝等用户群分析与实战

最新文章

  1. Python_note7 文件和数据格式化+wordcloud库
  2. 【Android 插件化】Hook 插件化框架 ( Hook Activity 启动流程 | Hook 点分析 )
  3. compareHist函数 例子
  4. kali设置中文_kali安装教程
  5. Percona Server 5.6 Master-Slave Replication测试
  6. php课程 10-35 php实现文件上传的注意事项是什么
  7. (11)机器学习_Kmeans聚类算法
  8. 安装matlab 2016a win10 64bit系统
  9. Linux version 4.19.90-2003.4.0.0036.oe1.aarch64安装carbonData
  10. 南阳 oj 6174问题
  11. dreamweaver cs6 html5 pack,HTML5 Pack for Dreamweaver CS5——HTML5开发工具
  12. java 右下角_java右下角弹窗
  13. 郑大计算机专业英语01章,郑州大学远程教育《大学英语II》第01章在线测试
  14. Right-BICEP要求设计四则运算2
  15. 别混淆区别很大 LED网格屏和格栅屏区别对比及分析
  16. php如何做md5签名,MD5数字签名算法:生成签名和验签(附代码)
  17. UA OPTI570 量子力学23 角动量基础
  18. RestHighLevelClient
  19. 微信支付网络监控工具部署指引
  20. SQL SERVER 解析XML字符串

热门文章

  1. 【附超时原因】1055 The World‘s Richest (25 分)_42行代码AC
  2. 编译原理习题(含答案)——1 绪论——MOOC哈工大陈鄞配套, 1 编译是对()。 A. 机器语言的执行 B. 汇编语言的翻译
  3. Python去线性化趋势
  4. mysql最高安全级别双一_MySQL核心之双一原则
  5. layui分页limit不显示_layui table分页 page为false时,limit问题
  6. FatFs最新版本获取方法
  7. java 文件 递归_JAVA实现遍历文件夹下的所有文件(递归调用和非递归调用)
  8. aspnet是前端还是后端_项目开发中无法回避的问题:前端和后端如何合作和并行工作?...
  9. idea 升级到2020后 无法启动_IDEA 2020 无法启动的解决办法(启动崩盘)附IDEA 2020 新功能...
  10. vs最好的版本_Win10 环境下,LightGBM GPU 版本的安装