Welcome to AdaptiFont, a novel human-in-the-loop system to increase
individual’s reading speed with a generative font model and bayesian optimization.
Traditionally, typography is a complex creative process driven by a multitude of diverse
influences involving individual judgements. The scientific and empirical investigation of the
relationship between how text looks and how it is processed lies at the intersection of cognitive
and perceptual science. The introduction of digital font has generated new techniques
and challenges for adaptively rendering and setting text particularly on electronic devices.
Despite these different motivations and diverse goals coming together in typography,
one fundamental aspect is summarized in the quote by Adrian Frutiger "...optimum readability should
always be foremost when developing a typeface". But what is optimal readability? Think of
different situations in your everyday life. We read on different devices,
at different times of day, in different places, under different lighting conditions,
with or without a visual aid and with different mindsets. Wouldn’t it be great to have a font that
adapts to these situations or even better a font that adapts to how the user is able to read it?
How could we design such a font that adapts to the reader’s needs? First of all,
we need to be able to parametrically generate new fonts as freely as possible with few restrictions.
Once we have created such a new font, we could present it to the reader and measure the
reading speed it elicits. Based on the measured reading speed, we need to be able to generate a
new font in such a way that it increases the reading speed with high probability.
This process could be repeated continuously to adjust fonts seamlessly for the individual
reader across contexts and across time. Here we present AdaptiFont, our dynamic human-in-the-loop
system to solve these tasks. To generate fonts on a continuum, we use
a parametric generative font model. Specifically we use Non-Negative Matrix Factorization to learn
a font space based on 25 classical and popular fonts. Through this representation it is now
possible to synthesize new fonts as a linear combination of the learnt font basis vectors.
Accordingly, a font can be represented by a point in this learned embedding space.
Here you can see the influence of the three dimensions on the upper case letter K.
Inspecting the letter renderings suggest that the first and third dimension are related to the
scaling of letters in the vertical or horizontal directions, whereas the second dimension is
related to the presence and strength of serifs. This generative model allows not only creating new
fonts, but also interpolating between actual fonts, for example between Frutiger and Sabon.
Along this line in euclidean font space we can find an infinite number of unnamed fonts
with gradual and smooth changes. Each of these unnamed fonts can be converted
to a TrueType-Font file on the fly, so you can actually install and use them on every system.
We are now able to generate and present fonts to readers and measure their reading speed.
We now need a method to generate successively new fonts that explore the font space so we
can measure individuals’ reading speed but also exploits these measurements to select new fonts
that lead to a higher reading speed with high probability. We use Bayesian optimization, a
form of active learning, which can find minima of complex cost functions when the number of samples
that can be drawn is limited. Let’s illustrate this process. First new points in a high reading
speed cluster are sampled in an exploitation phase. After a slow new sample was found in
the exploration phase, the process is searching again in the region of the faster speeds.
We conducted a user study with eleven participants who read 95 texts with individually
generated AdaptiFonts. Here are the fonts of highest reading speed for our participants.
All fonts are concentrated in a region bounded by the traditional fonts Rockwell,
Myriad, Optima and News Gothic. To give you a sense, the pairwise distance between the optimized
fonts in euclidean space is comparable to the distance between Avantgarde and Universe.
In a preliminary study, we gave subjects the classic fonts Arial, Cambria, Century Schoolbook,
Helvetica and Times New Roman and modified them in size and boldness parameters. On the
left you can see the average reading speeds for these classic fonts compared to the AdaptiFonts.
A Kolmogorov-Smirnov test and a Bayesian Two-Sample t-Test indicates that the two
distributions are indeed significantly different and that the mean reading speeds for AdaptiFont
were significantly higher. To locate regions of fast and and slow fonts, sampled fonts were
clustered by reading speeds. The right figure shows the statistically significant increase
in reading speed across clusters of fonts for all eleven subjects in our user study.
While constant, variable, and parametric fonts have been designed and developed in the past,
Adaptifont is an interactive system, which dynamically and continuously creating fonts
based on a user's interaction with text. The unique approach is that we don't put
any specifications or restrictions into the design of the fonts. Through active learning
and Bayesian optimization, we purposefully move through an infinitely large type space and find
the optimal font, no matter for whom, no matter on what device, and no matter what time of day.