中文古诗,我们从小到大在中文课本里都学过不少,有些直到现在都能背诵并且郎朗上口,但是如果让你自己做一首中文古诗,对于绝大多数人来说还是不太可能吧?现在有了解决办法,在这篇论文http://aclweb.org/anthology/D/D14/D14-1074.pdf里给出了具体的实现方法。这里只讲关键步骤。
我们知道,要想作出一个首古诗,这里拿五言绝句来举例吧,有一些规则必须满足,比如:
1.要押韵,一般第一二四句末尾最后一个字必须押韵。
2.要有韵律,声韵声调上要有音乐的节奏和美感,平仄声必须用对。
例如下面这首王维的“相思“:
就满足以上两个条件,所以郎朗上口,再加上诗词里的意境,成为佳作,流传至今。
具体的作诗步骤如下:
1.用户指定几个关键字来表明诗的主题。
2.通过语料库来生成所有满足规则条件组合的短语。
3.使用语言模型来对这些组合进行打分排序,选择靠前的排名,来生成第一句话,然后第二句基于第一句来生成,第三句基于前两句,第四句基于前三句。
这里用的语料库是《诗学含英》古人作诗常用的字,词都包含在里面。
这里用的语言模型有,词向量模型和N元模型 任何工具只要能提供词到向量之间的转换和N元模型变换都可以使用。