3首由系统自动生成的宋词示例。图/中科院软件研究所
1. 基于统计学的词库。虽说汉语常用词汇不过3千个,可是这些词放在不同的上下文中所能表达的意思确千差万别。登山则情满于山,观海则意溢于海,人类的语言是 人类情感的抒发。我认为要让计算机写诗,最基础的工作就是建立一个包含情感类别、语义、音韵等要素的元数据库。
2. 填词的过程是搜索的过程。回想高中学写宋词的时候,总是安装词牌的要求一个一个词的填写,这是从大脑中搜索的过程,对于计算机而言是一个类似的过程。我们 可以采用启发式搜索,使得搜索总是沿着较优的方向前进。可以根据词法等相关概念,从词库挑选一系列备用词,沿着计算出来的评价(打分)进行搜索。
这篇论文和我前段时间读的人工鱼模拟的的论文类似,在解决搜索问题上都使用了遗传算法。遗传算法(Genetic Algorithm)是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法(引:百度百科)。
这是一篇很有意思的论文,所以我写了些自己的想法。语义分析我不懂也不是很感兴趣,但是,通过读论文来开拓视野,长长见识,推荐大家多逛逛相关网站:)
下载:《一种宋词自动生成的遗传算法及其机器实现》
本论文由来自厦门大学和浙江大学的三位学者完成。
摘要: 主要针对宋词这种特殊的汉语诗歌体裁,开展了有关自动生成算法及其实现方法的探索性研究.研究工作主要根据宋词特点,设计了基于平仄的编码方式、基于句法和语义加权值的适应度函数、基于精英主义和轮盘赌算法的选择策略,采用部分映射和启发式交叉算子和启发式变异算子,从而构建了一种基于遗传算法的宋词生成计算模型并进行了系统实现.实验结果表明,所建立的计算模型及其软件系统,初步实现了机器自动生成宋词的目标,对于给定的主题词和词牌,基本上能够自动生成有一定欣赏价值的宋词.论文的工作也填补了我国在汉语诗歌自动生成研究方面的不足.
来源:Qizhi