正在阅读:全民一起来学习 用遗传算法让电脑写宋词全民一起来学习 用遗传算法让电脑写宋词

2010-05-11 11:13 出处:PConline 作者:caoweiye 责任编辑:caoweiye

  相逢缥缈,窗外又拂晓。长忆清弦弄浅笑,只恨人间花少。菊不待清尊,相思飘落无痕。风雨重阳又过,登高多少黄昏。

  有没有想过用电脑能自动生成这么优美的诗词?这首《清平乐.菊》的作者就是一台计算机,诗歌平仄、押韵十分工整,没有明显的句法错误,没有读着别扭的句子,风格婉约,伤感悲秋。这还是一台CPU 1.83GHz,内存512M计算机写出来的!看完《一种宋词自动生成的遗传算法及其机器实现》这篇论文后,笔者对诗人、艺术家们十分同情,会有一天他们下岗的。

  上文这首优美的的诗歌是由来自厦门大学和浙江大学的三位学者开发出来的“宋词自动生成的遗传算法”所自动创作的,这几位学者针对宋词这种特殊的汉语诗歌体裁,开展了有关自动生成算法及其实现方法的探索性研究。

  他们根据宋词特点,设计了基于平仄的编码方式、基于句法和语义加权值的适应度函数、基于精英主义和轮盘赌算法的选择策略,采用部分映射和启发式交叉算子和启发式变异算子,从而构建了一种基于遗传算法的宋词生成计算模型并进行了系统实现。实验结果表明,所建立的计算模型及其软件系统,初步实现了机器自动生成宋词的目标,对于给定的主题词和词牌,基本上能够自动生成有一定欣赏价值的宋词。论文的工作也填补了我国在汉语诗歌自动生成研究方面的不足。

  我们来看看研究者们解决电脑自动生成诗词问题的思路分析:

  三首由系统自动生成的宋词示例:

电脑自动生成诗词
宋词自动生成典型事例

  1. 基于统计学的词库。虽说汉语常用词汇不过3千个,可是这些词放在不同的上下文中所能表达的意思确千差万别。登山则情满于山,观海则意溢于海,人类的语言是 人类情感的抒发。我认为要让计算机写诗,最基础的工作就是建立一个包含情感类别、语义、音韵等要素的元数据库。

  2. 填词的过程是搜索的过程。回想高中学写宋词的时候,总是安装词牌的要求一个一个词的填写,这是从大脑中搜索的过程,对于计算机而言是一个类似的过程。我们 可以采用启发式搜索,使得搜索总是沿着较优的方向前进。可以根据词法等相关概念,从词库挑选一系列备用词,沿着计算出来的评价(打分)进行搜索。

  关于遗传算法:

  遗传算法(Genetic Algorithm)是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法。

  点击下载:《一种宋词自动生成的遗传算法及其机器实现》

相关文章

关注我们

最新资讯离线随时看 聊天吐槽赢奖品