RET对数据挖掘的初步研究以及其在机器写诗中的应用

 

作者何福铿RET如今信息时代飞速发展。信息量大大增加。能在海量数据中挖掘出有效的信息尤为重要。在这次比赛中我...

作者
何福铿
R

E

T


如今信息时代飞速发展。信息量大大增加。能在海量数据中挖掘出有效的信息尤为重要。在这次比赛中我就数据挖掘进行了相关研究,以及尝试将它在机器写诗中的应用。
R

E

T
《酒》:点缀疏林遍,诗愁满去程。一杯驱世虑,爽气际青城。照耀初含露,一壶可忘形。飘零还柏酒,取醉郑国风。这样的诗歌,你能猜出是谁作出来的吗?如果我告诉你,这来自大数据之手,你是不是觉得很惊奇?没错这就是大数据的威力。没图没真相?这就是我从程序上截下来的几张图。




是不是相当不错,这里尽量做到了内容相关,并且做到了平仄符合韵律,偶数句押韵。

我是怎样做到的呢?下面我将带你重新走上我这一个多月来的研究之路。
一:吹尽黄沙始到金---------“数据挖掘”

一开始,我花了不少劲,发现了一个极为有用的网站:










这个网站神奇之处在于他把各种意象按情感分类了。我恰好解决了我这个棘手的难题。

有了这许多意象,剩下的就是寻找每个意象对应的关键词(包括动词,名词,虚词,形容词等等)。

怎样找到这些对应的关键词呢?接下来就是我们第一个重头戏。

为了获得全面的诗词数据,首先我们直接找到《全唐诗》来帮忙。







1 2

3

这简直就是一座金矿。

金矿是有了,但显然我们还需要一把掘金利器。

在这个时候,python在向我招手。这就是我用来掘金的程序工具。

从哪里开始掘呢?

我先把它一劈两半---分开五言和七言。



因为我的想法是五言就按2/3切,七言按2/2/3切。

虽略生硬,这却是我想到的所有办法中最好的办法。
就这样各种金属从金矿中被提取出来了。
二:  教电脑写诗

然后利用搜索技术得到每一个意象词关系比较密切的其他词。这样我们如需作某一类诗歌,只需要使用的意象词全是同一类的就可以了。

得到了一个如图的文件:


有了意象数据之后,为了平仄符合和押韵符合,。我从网上下载了一,个拼音库(包括声调),再用程。序遍历每一个意象和关键词,就可以得到他们的拼音了。



有了意象和拼音之后,剩下的就是模仿古诗建立平仄模板和押韵模板以及向诗歌中填充关键词。我们为了减少诗歌的搭配不合理的现象,采用诗歌2/2/3或者2/3分法。向古诗中某些固定的两字或者三字区域填充关键词,在填字过程中注意平仄韵符合以及押韵符合。这样就能创作出基本符合要求的诗歌。一下是一些代码文件(cpp文件):



写诗这个话题和人工智能机器学习,数据挖掘等等有着密切关系,要做得很好的话还需学习更多更深的东西。要知道,阿发狗和普通的围棋程序区别是很大的。

我们这个程序离真正的人工智能作诗还有相当远的距离,方法上可以说只是取巧,而且合理的情况也不是占绝大多数。而且目前的人工智能也并不能做到真正意义上的创作,我们要走的路还很长。



1
最后附上一首诗(当然这不是电脑写的):
青灯荧荧陪有梦,残漏声声伴无眠。

几段音韵几活用?何处平仄何处典?

编程学问日渐通,为伊消瘦终不倦。

写诗机器凭谁弄,初生牛犊走在前。


    关注 中大数计学生会


微信扫一扫关注公众号

0 个评论

要回复文章请先登录注册