  Suspense is a crucial ingredient of narrative fiction, engaging readers and
making stories compelling. While there is a vast theoretical literature on
suspense, it is computationally not well understood. We compare two ways for
modelling suspense: surprise, a backward-looking measure of how unexpected the
current state is given the story so far; and uncertainty reduction, a
forward-looking measure of how unexpected the continuation of the story is.
Both can be computed either directly over story representations or over their
probability distributions. We propose a hierarchical language model that
encodes stories and computes surprise and uncertainty reduction. Evaluating
against short stories annotated with human suspense judgements, we find that
uncertainty reduction over representations is the best predictor, resulting in
near-human accuracy. We also show that uncertainty reduction can be used to
predict suspenseful events in movie synopses.
