
CHAPTER 5. MACHINE LEARNING BASICS
be used to annotate the locations of roads in aerial photographs (Mnih and
Hinton, 2010). The output need not have its form mirror the structure of
the input as closely as in these annotation-style tasks. For example, in image
captioning, the computer program observes an image and outputs a natural
language sentence describing the image (Kiros et al., 2014a,b; Mao et al.,
2015; Vinyals et al., 2015b; Donahue et al., 2014; Karpathy and Li, 2015;
Fang et al., 2015; Xu et al., 2015a). These tasks are called structured output
tasks because the program must output several values that are all tightly
inter-related. For example, the words produced by an image captioning
program must form a valid sentence.
•
Anomaly detection: In this type of task, the computer program sifts through
a set of events or objects, and flags some of them as being unusual or atypical.
An example of an anomaly detection task is credit card fraud detection. By
modeling your purchasing habits, a credit card company can detect misuse
of your cards. If a thief steals your credit card or credit card information,
the thief’s purchases will often come from a different probability distribution
over purchase types than your own. The credit card company can prevent
fraud by placing a hold on an account as soon as that card has been used
for an uncharacteristic purchase. See Chandola et al. (2009) for a survey of
anomaly detection methods.
•
Synthesis and sampling: In this type of task, the machine learning algorithm
is asked to generate new examples that are similar to those in the training
data. Synthesis and sampling via machine learning can be useful for media
applications where it can be expensive or boring for an artist to generate large
volumes of content by hand. For example, video games can automatically
generate textures for large objects or landscapes, rather than requiring an
artist to manually label each pixel (Luo et al., 2013). In some cases, we
want the sampling or synthesis procedure to generate some specific kind of
output given the input. For example, in a speech synthesis task, we provide a
written sentence and ask the program to emit an audio waveform containing
a spoken version of that sentence. This is a kind of structured output task,
but with the added qualification that there is no single correct output for
each input, and we explicitly desire a large amount of variation in the output,
in order for the output to seem more natural and realistic.
•
Imputation of missing values: In this type of task, the machine learning
algorithm is given a new example
x ∈ R
n
, but with some entries
x
i
of
x
missing. The algorithm must provide a prediction of the values of the missing
entries.
102