  Controllable text generation is a challenging and meaningful field in natural
language generation (NLG). Especially, poetry generation is a typical one with
well-defined and strict conditions for text generation which is an ideal
playground for the assessment of current methodologies. While prior works
succeeded in controlling either semantic or metrical aspects of poetry
generation, simultaneously addressing both remains a challenge. In this paper,
we pioneer the use of the Diffusion model for generating sonnets and Chinese
SongCi poetry to tackle such challenges. In terms of semantics, our
PoetryDiffusion model, built upon the Diffusion model, generates entire
sentences or poetry by comprehensively considering the entirety of sentence
information. This approach enhances semantic expression, distinguishing it from
autoregressive and large language models (LLMs). For metrical control, the
separation feature of diffusion generation and its constraint control module
enable us to flexibly incorporate a novel metrical controller to manipulate and
evaluate metrics (format and rhythm). The denoising process in PoetryDiffusion
allows for gradual enhancement of semantics and flexible integration of the
metrical controller which can calculate and impose penalties on states that
stray significantly from the target control distribution. Experimental results
on two datasets demonstrate that our model outperforms existing models in
automatic evaluation of semantic, metrical, and overall performance as well as
human evaluation.
