自动写诗APP项目、基于python+Android实现(技术:LSTM+Fasttext分类+word2vec+Flask+mysql)第一节

本项目构建了一个基于深度学习的智能诗歌生成系统,能根据用户提供的主题词生成五言或七言的古诗,涵盖边塞征战、写景咏物等多种风格。系统利用FastText进行诗歌分类,word2vec计算主题词相似度,LSTM模型生成诗歌,同时考虑押韵和《诗学含英》的字词概率权重。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  首先,展示一下项目最终结果:

                    

                    

                    寒梅                                                           月夜         

腊雪初开绿阴雨, 疏疏深处不相侵。            声声不断夜月明,竹影摇摇兮山云。
数点花枝无限意, 寒梅一片雪中吟。            阶下梧桐秋色冷,意长风月不可听。

 

                     秋思                                                              思乡
秋风吹雨雨霏霏,念客相思不见人。           夜来风雨风吹月,泊客风霏月满船。  
孤水不知无处处,独来春雨不知愁。           异人何处相思梦,念君无是故人归。
泊人风雨无人去,怀客相逢一鬓开。           悲声不分无人事,独尽谁怜一日时。  
漂漫江山无不寐,思君何处更相逢。           晚夜不堪春水去,怀人何处醉相思。 

 

整个项目大体分为4部分:

  1. 30万首诗歌分类(基于Fasttext文本分类实现)
  2. 用户主题词,相似词计算(基于word2vec实现)
  3. 诗歌生成(应用tensorflow搭建的LSTM模型实现)
  4. 前端展示(flask框架做服务器+MySQL数据库保存+Android前端展示)

创新:

  • 诗歌中2/4/6/8句最后一个字押韵,按《汉字押韵字表》进行的筛选。
  • 诗歌类别针对性强,根据用户给定的主题词,生成以此主题为核心的诗歌。
  • 生成诗歌的每个字都经过《诗学含英》,进行了概率权重计算。

《诗学含英》此书是按韵分部,包罗天文地理,花木鸟兽,人物器物等的虚实应对。从单字到双字,三字对,五字对,七字对到十一字对,节奏明快琅琅上口,从中可得语音,修辞的训练。

整个项目的系统框架如下:

 

                                                                         

 

流程:

  1. 首先,把近30万首诗歌分为5类,分别训练5类诗歌的数据得到5个LSTM网络模型。

  2. 根据用户输入的主题词,由word2vec计算主题词与每类诗歌15个关键词的相似度,判断其最可能所属的类别。

  3. 再由所属类别的word2vec模型生成与主题词最相似的6个相似词,并结合主题词一同作为后续每句诗歌开头字的候选集合。

  4. 通过LSTM模型生成候选字,再通过《诗学含英》的概率权重计算,选择最终概率最高的作为生成字。

  5. 在生成2、4、6、8句诗的最后一个字时,按照《汉字押韵字表》进行筛选过滤,来实现押韵特征。

  6. 最后服务器将生成的诗歌返回给前端APP进行展示。

 

一 、诗歌分类:

      首先,在古诗文网上爬取五类诗歌(边塞征战,写景咏物,山水田园,思乡羁旅,咏史怀古)各600首作为分类模型的训练数据。训练生成FastText分类模型。然后用此分类模型为近30万首诗歌分类。

二、用户主题词分类:

事先分别为五类诗歌设置15个关键词,然后以维基百科为语料训练得到维基百科的word2vec模型。根据用户输入的主题词,来与各类诗歌的关键词做相似度计算,判断主题词最可能所属的诗歌类别

 

三、用户主题词的相似词生成:

之后以分好类的五类诗歌为语料,训练得到各自的word2vec模型。判断主题词类别后,以其所属类别的word2vec模型,生成6个与主题词最相似的词,作为后续生成诗歌时,每句开头字的候选集合。

四、建立模型

采用深度学习框架tensorflow为五类诗歌分别建立长短期记忆网络模型(LSTM)。把主题词最相似的6个词作为每句诗的开头字的候选集合,并将LSTM模型生成的每个候选字通过《诗学含英》进行概率权重计算,最终选择概率最大的字作为生成字。在生成2/4/6/8句诗歌时,对最后一个字按照《汉字押韵字表》进行押韵筛选过滤,实现诗歌的押韵机制。

五、前端展示

以APP的形式与用户进行移动端展示。服务器端用的Flask框架,连接的MySQL数据库,用于保存用户注册的基本信息。在APP的主界面下,用户输入主题词,可选择生成此主题下的五言绝句、五言律诗、七言绝句、七言律诗,随后服务器将生成的诗歌返回到APP的主界面进行展示。

 

整个项目的五个模块,共五小节:

二节:https://blog.csdn.net/turbo_come/article/details/94153192#comments

三节:https://blog.csdn.net/Turbo_Come/article/details/96478565?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

四节:https://blog.csdn.net/Turbo_Come/article/details/99685056?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

五节:https://blog.csdn.net/Turbo_Come/article/details/100033041

 

 

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值