annotate writeup/aistats2011_cameraready.tex @ 627:249a180795e3

camera ready version
author Yoshua Bengio <bengioy@iro.umontreal.ca>
date Thu, 17 Mar 2011 08:15:34 -0400
parents
children f55f1b1499c4
rev   line source
627
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
1 %\documentclass[twoside,11pt]{article} % For LaTeX2e
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
2 \documentclass{article} % For LaTeX2e
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
3 \usepackage[accepted]{aistats2e_2011}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
4 %\usepackage{times}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
5 \usepackage{wrapfig}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
6 \usepackage{amsthm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
7 \usepackage{amsmath}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
8 \usepackage{bbm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
9 \usepackage[utf8]{inputenc}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
10 \usepackage[psamsfonts]{amssymb}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
11 %\usepackage{algorithm,algorithmic} % not used after all
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
12 \usepackage{graphicx,subfigure}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
13 \usepackage[numbers]{natbib}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
14
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
15 \addtolength{\textwidth}{10mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
16 \addtolength{\evensidemargin}{-5mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
17 \addtolength{\oddsidemargin}{-5mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
18
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
19 %\setlength\parindent{0mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
20
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
21 \begin{document}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
22
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
23 \twocolumn[
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
24 \aistatstitle{Deep Learners Benefit More from Out-of-Distribution Examples}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
25 \runningtitle{Deep Learners for Out-of-Distribution Examples}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
26 \runningauthor{Bengio et. al.}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
27 \aistatsauthor{
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
28 Yoshua Bengio \and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
29 Frédéric Bastien \and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
30 Arnaud Bergeron \and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
31 Nicolas Boulanger-Lewandowski \and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
32 Thomas Breuel \and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
33 Youssouf Chherawala \and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
34 Moustapha Cisse \and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
35 Myriam Côté \and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
36 Dumitru Erhan \and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
37 Jeremy Eustache \and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
38 Xavier Glorot \and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
39 Xavier Muller \and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
40 Sylvain Pannetier Lebeuf \and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
41 Razvan Pascanu \and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
42 Salah Rifai \and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
43 Francois Savard \and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
44 Guillaume Sicard
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
45 \vspace*{5mm}}]
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
46 \aistatsaddress{Dept. IRO, U. Montreal, P.O. Box 6128, Centre-Ville branch, H3C 3J7, Montreal (Qc), Canada}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
47 %\date{{\tt bengioy@iro.umontreal.ca}, Dept. IRO, U. Montreal, P.O. Box 6128, Centre-Ville branch, H3C 3J7, Montreal (Qc), Canada}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
48 %\jmlrheading{}{2010}{}{10/2010}{XX/2011}{Yoshua Bengio et al}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
49 %\editor{}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
50
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
51 %\makeanontitle
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
52 %\maketitle
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
53
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
54 %{\bf Running title: Deep Self-Taught Learning}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
55
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
56 \vspace*{5mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
57 \begin{abstract}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
58 Recent theoretical and empirical work in statistical machine learning has demonstrated the potential of learning algorithms for deep architectures, i.e., function classes obtained by composing multiple levels of representation. The hypothesis evaluated here is that intermediate levels of representation, because they can be shared across tasks and examples from different but related distributions, can yield even more benefits. Comparative experiments were performed on a large-scale handwritten character recognition setting with 62 classes (upper case, lower case, digits), using both a multi-task setting and perturbed examples in order to obtain out-of-distribution examples. The results agree with the hypothesis, and show that a deep learner did {\em beat previously published results and reached human-level performance}.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
59 \end{abstract}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
60 %\vspace*{-3mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
61
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
62 %\begin{keywords}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
63 %Deep learning, self-taught learning, out-of-distribution examples, handwritten character recognition, multi-task learning
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
64 %\end{keywords}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
65 %\keywords{self-taught learning \and multi-task learning \and out-of-distribution examples \and deep learning \and handwriting recognition}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
66
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
67
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
68
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
69 \section{Introduction}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
70 %\vspace*{-1mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
71
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
72 {\bf Deep Learning} has emerged as a promising new area of research in
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
73 statistical machine learning~\citep{Hinton06,ranzato-07-small,Bengio-nips-2006,VincentPLarochelleH2008-very-small,ranzato-08,TaylorHintonICML2009,Larochelle-jmlr-2009,Salakhutdinov+Hinton-2009,HonglakL2009,HonglakLNIPS2009,Jarrett-ICCV2009,Taylor-cvpr-2010}. See \citet{Bengio-2009} for a review.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
74 Learning algorithms for deep architectures are centered on the learning
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
75 of useful representations of data, which are better suited to the task at hand,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
76 and are organized in a hierarchy with multiple levels.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
77 This is in part inspired by observations of the mammalian visual cortex,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
78 which consists of a chain of processing elements, each of which is associated with a
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
79 different representation of the raw visual input. In fact,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
80 it was found recently that the features learnt in deep architectures resemble
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
81 those observed in the first two of these stages (in areas V1 and V2
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
82 of visual cortex) \citep{HonglakL2008}, and that they become more and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
83 more invariant to factors of variation (such as camera movement) in
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
84 higher layers~\citep{Goodfellow2009}.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
85 It has been hypothesized that learning a hierarchy of features increases the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
86 ease and practicality of developing representations that are at once
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
87 tailored to specific tasks, yet are able to borrow statistical strength
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
88 from other related tasks (e.g., modeling different kinds of objects). Finally, learning the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
89 feature representation can lead to higher-level (more abstract, more
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
90 general) features that are more robust to unanticipated sources of
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
91 variance extant in real data.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
92
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
93 Whereas a deep architecture can in principle be more powerful than a
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
94 shallow one in terms of representation, depth appears to render the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
95 training problem more difficult in terms of optimization and local minima.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
96 It is also only recently that successful algorithms were proposed to
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
97 overcome some of these difficulties. All are based on unsupervised
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
98 learning, often in an greedy layer-wise ``unsupervised pre-training''
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
99 stage~\citep{Bengio-2009}.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
100 The principle is that each layer starting from
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
101 the bottom is trained to represent its input (the output of the previous
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
102 layer). After this
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
103 unsupervised initialization, the stack of layers can be
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
104 converted into a deep supervised feedforward neural network and fine-tuned by
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
105 stochastic gradient descent.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
106 One of these layer initialization techniques,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
107 applied here, is the Denoising
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
108 Auto-encoder~(DA)~\citep{VincentPLarochelleH2008-very-small} (see
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
109 Figure~\ref{fig:da}), which performed similarly or
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
110 better~\citep{VincentPLarochelleH2008-very-small} than previously
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
111 proposed Restricted Boltzmann Machines (RBM)~\citep{Hinton06}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
112 in terms of unsupervised extraction
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
113 of a hierarchy of features useful for classification. Each layer is trained
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
114 to denoise its input, creating a layer of features that can be used as
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
115 input for the next layer, forming a Stacked Denoising Auto-encoder (SDA).
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
116 Note that training a Denoising Auto-encoder
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
117 can actually been seen as training a particular RBM by an inductive
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
118 principle different from maximum likelihood~\citep{Vincent-SM-2010},
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
119 namely by Score Matching~\citep{Hyvarinen-2005,HyvarinenA2008}.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
120
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
121 Previous comparative experimental results with stacking of RBMs and DAs
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
122 to build deep supervised predictors had shown that they could outperform
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
123 shallow architectures in a variety of settings, especially
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
124 when the data involves complex interactions between many factors of
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
125 variation~\citep{LarochelleH2007,Bengio-2009}. Other experiments have suggested
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
126 that the unsupervised layer-wise pre-training acted as a useful
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
127 prior~\citep{Erhan+al-2010} that allows one to initialize a deep
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
128 neural network in a relatively much smaller region of parameter space,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
129 corresponding to better generalization.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
130
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
131 To further the understanding of the reasons for the good performance
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
132 observed with deep learners, we focus here on the following {\em hypothesis}:
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
133 intermediate levels of representation, especially when there are
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
134 more such levels, can be exploited to {\bf share
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
135 statistical strength across different but related types of examples},
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
136 such as examples coming from other tasks than the task of interest
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
137 (the multi-task setting), or examples coming from an overlapping
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
138 but different distribution (images with different kinds of perturbations
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
139 and noises, here). This is consistent with the hypotheses discussed
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
140 in~\citet{Bengio-2009} regarding the potential advantage
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
141 of deep learning and the idea that more levels of representation can
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
142 give rise to more abstract, more general features of the raw input.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
143
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
144 This hypothesis is related to a learning setting called
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
145 {\bf self-taught learning}~\citep{RainaR2007}, which combines principles
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
146 of semi-supervised and multi-task learning: the learner can exploit examples
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
147 that are unlabeled and possibly come from a distribution different from the target
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
148 distribution, e.g., from other classes than those of interest.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
149 It has already been shown that deep learners can clearly take advantage of
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
150 unsupervised learning and unlabeled examples~\citep{Bengio-2009,WestonJ2008-small},
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
151 but more needed to be done to explore the impact
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
152 of {\em out-of-distribution} examples and of the {\em multi-task} setting
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
153 (one exception is~\citep{CollobertR2008}, which shares and uses unsupervised
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
154 pre-training only with the first layer). In particular the {\em relative
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
155 advantage of deep learning} for these settings has not been evaluated.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
156
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
157
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
158 %
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
159 The {\bf main claim} of this paper is that deep learners (with several levels of representation) can
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
160 {\bf benefit more from out-of-distribution examples than shallow learners} (with a single
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
161 level), both in the context of the multi-task setting and from
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
162 perturbed examples. Because we are able to improve on state-of-the-art
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
163 performance and reach human-level performance
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
164 on a large-scale task, we consider that this paper is also a contribution
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
165 to advance the application of machine learning to handwritten character recognition.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
166 More precisely, we ask and answer the following questions:
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
167
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
168 %\begin{enumerate}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
169 $\bullet$ %\item
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
170 Do the good results previously obtained with deep architectures on the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
171 MNIST digit images generalize to the setting of a similar but much larger and richer
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
172 dataset, the NIST special database 19, with 62 classes and around 800k examples?
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
173
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
174 $\bullet$ %\item
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
175 To what extent does the perturbation of input images (e.g. adding
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
176 noise, affine transformations, background images) make the resulting
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
177 classifiers better not only on similarly perturbed images but also on
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
178 the {\em original clean examples}? We study this question in the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
179 context of the 62-class and 10-class tasks of the NIST special database 19.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
180
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
181 $\bullet$ %\item
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
182 Do deep architectures {\em benefit {\bf more} from such out-of-distribution}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
183 examples, in particular do they benefit more from
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
184 examples that are perturbed versions of the examples from the task of interest?
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
185
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
186 $\bullet$ %\item
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
187 Similarly, does the feature learning step in deep learning algorithms benefit {\bf more}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
188 from training with moderately {\em different classes} (i.e. a multi-task learning scenario) than
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
189 a corresponding shallow and purely supervised architecture?
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
190 We train on 62 classes and test on 10 (digits) or 26 (upper case or lower case)
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
191 to answer this question.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
192 %\end{enumerate}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
193
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
194 Our experimental results provide positive evidence towards all of these questions,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
195 as well as {\bf classifiers that reach human-level performance on 62-class isolated character
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
196 recognition and beat previously published results on the NIST dataset (special database 19)}.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
197 To achieve these results, we introduce in the next section a sophisticated system
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
198 for stochastically transforming character images and then explain the methodology,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
199 which is based on training with or without these transformed images and testing on
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
200 clean ones.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
201 Code for generating these transformations as well as for the deep learning
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
202 algorithms are made available at {\tt http://anonymous.url.net}.%{\tt http://hg.assembla.com/ift6266}.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
203
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
204 %\vspace*{-3mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
205 %\newpage
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
206 \section{Perturbed and Transformed Character Images}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
207 \label{s:perturbations}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
208 %\vspace*{-2mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
209
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
210 Figure~\ref{fig:transform} shows the different transformations we used to stochastically
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
211 transform $32 \times 32$ source images (such as the one in Fig.\ref{fig:torig})
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
212 in order to obtain data from a larger distribution which
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
213 covers a domain substantially larger than the clean characters distribution from
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
214 which we start.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
215 Although character transformations have been used before to
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
216 improve character recognizers, this effort is on a large scale both
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
217 in number of classes and in the complexity of the transformations, hence
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
218 in the complexity of the learning task.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
219 The code for these transformations (mostly Python) is available at
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
220 {\tt http://anonymous.url.net}. All the modules in the pipeline (Figure~\ref{fig:transform}) share
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
221 a global control parameter ($0 \le complexity \le 1$) that allows one to modulate the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
222 amount of deformation or noise introduced.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
223 There are two main parts in the pipeline. The first one,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
224 from thickness to pinch, performs transformations. The second
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
225 part, from blur to contrast, adds different kinds of noise.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
226 More details can be found in~\citep{ift6266-tr-anonymous}.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
227
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
228 \begin{figure*}[ht]
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
229 \centering
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
230 \subfigure[Original]{\includegraphics[scale=0.6]{images/Original.png}\label{fig:torig}}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
231 \subfigure[Thickness]{\includegraphics[scale=0.6]{images/Thick_only.png}}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
232 \subfigure[Slant]{\includegraphics[scale=0.6]{images/Slant_only.png}}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
233 \subfigure[Affine Transformation]{\includegraphics[scale=0.6]{images/Affine_only.png}}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
234 \subfigure[Local Elastic Deformation]{\includegraphics[scale=0.6]{images/Localelasticdistorsions_only.png}}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
235 \subfigure[Pinch]{\includegraphics[scale=0.6]{images/Pinch_only.png}}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
236 %Noise
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
237 \subfigure[Motion Blur]{\includegraphics[scale=0.6]{images/Motionblur_only.png}}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
238 \subfigure[Occlusion]{\includegraphics[scale=0.6]{images/occlusion_only.png}}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
239 \subfigure[Gaussian Smoothing]{\includegraphics[scale=0.6]{images/Bruitgauss_only.png}}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
240 \subfigure[Pixels Permutation]{\includegraphics[scale=0.6]{images/Permutpixel_only.png}}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
241 \subfigure[Gaussian Noise]{\includegraphics[scale=0.6]{images/Distorsiongauss_only.png}}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
242 \subfigure[Background Image Addition]{\includegraphics[scale=0.6]{images/background_other_only.png}}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
243 \subfigure[Salt \& Pepper]{\includegraphics[scale=0.6]{images/Poivresel_only.png}}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
244 \subfigure[Scratches]{\includegraphics[scale=0.6]{images/Rature_only.png}}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
245 \subfigure[Grey Level \& Contrast]{\includegraphics[scale=0.6]{images/Contrast_only.png}}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
246 \caption{Top left (a): example original image. Others (b-o): examples of the effect
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
247 of each transformation module taken separately. Actual perturbed examples are obtained by
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
248 a pipeline of these, with random choices about which module to apply and how much perturbation
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
249 to apply.}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
250 \label{fig:transform}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
251 %\vspace*{-2mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
252 \end{figure*}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
253
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
254 %\vspace*{-3mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
255 \section{Experimental Setup}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
256 %\vspace*{-1mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
257
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
258 Much previous work on deep learning had been performed on
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
259 the MNIST digits task~\citep{Hinton06,ranzato-07-small,Bengio-nips-2006,Salakhutdinov+Hinton-2009},
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
260 with 60,000 examples, and variants involving 10,000
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
261 examples~\citep{Larochelle-jmlr-2009,VincentPLarochelleH2008-very-small}.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
262 The focus here is on much larger training sets, from 10 times to
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
263 to 1000 times larger, and 62 classes.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
264
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
265 The first step in constructing the larger datasets (called NISTP and P07) is to sample from
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
266 a {\em data source}: {\bf NIST} (NIST database 19), {\bf Fonts}, {\bf Captchas},
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
267 and {\bf OCR data} (scanned machine printed characters). See more in
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
268 Section~\ref{sec:sources} below. Once a character
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
269 is sampled from one of these sources (chosen randomly), the second step is to
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
270 apply a pipeline of transformations and/or noise processes outlined in section \ref{s:perturbations}.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
271
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
272 To provide a baseline of error rate comparison we also estimate human performance
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
273 on both the 62-class task and the 10-class digits task.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
274 We compare the best Multi-Layer Perceptrons (MLP) against
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
275 the best Stacked Denoising Auto-encoders (SDA), when
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
276 both models' hyper-parameters are selected to minimize the validation set error.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
277 We also provide a comparison against a precise estimate
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
278 of human performance obtained via Amazon's Mechanical Turk (AMT)
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
279 service ({\tt http://mturk.com}).
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
280 AMT users are paid small amounts
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
281 of money to perform tasks for which human intelligence is required.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
282 Mechanical Turk has been used extensively in natural language processing and vision.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
283 %processing \citep{SnowEtAl2008} and vision
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
284 %\citep{SorokinAndForsyth2008,whitehill09}.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
285 AMT users were presented
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
286 with 10 character images (from a test set) on a screen
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
287 and asked to label them.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
288 They were forced to choose a single character class (either among the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
289 62 or 10 character classes) for each image.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
290 80 subjects classified 2500 images per (dataset,task) pair.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
291 Different humans labelers sometimes provided a different label for the same
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
292 example, and we were able to estimate the error variance due to this effect
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
293 because each image was classified by 3 different persons.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
294 The average error of humans on the 62-class task NIST test set
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
295 is 18.2\%, with a standard error of 0.1\%.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
296 We controlled noise in the labelling process by (1)
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
297 requiring AMT workers with a higher than normal average of accepted
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
298 responses ($>$95\%) on other tasks (2) discarding responses that were not
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
299 complete (10 predictions) (3) discarding responses for which for which the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
300 time to predict was smaller than 3 seconds for NIST (the mean response time
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
301 was 20 seconds) and 6 seconds seconds for NISTP (average response time of
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
302 45 seconds) (4) discarding responses which were obviously wrong (10
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
303 identical ones, or "12345..."). Overall, after such filtering, we kept
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
304 approximately 95\% of the AMT workers' responses.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
305
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
306 %\vspace*{-3mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
307 \subsection{Data Sources}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
308 \label{sec:sources}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
309 %\vspace*{-2mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
310
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
311 %\begin{itemize}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
312 %\item
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
313 {\bf NIST.}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
314 Our main source of characters is the NIST Special Database 19~\citep{Grother-1995},
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
315 widely used for training and testing character
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
316 recognition systems~\citep{Granger+al-2007,Cortes+al-2000,Oliveira+al-2002-short,Milgram+al-2005}.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
317 The dataset is composed of 814255 digits and characters (upper and lower cases), with hand checked classifications,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
318 extracted from handwritten sample forms of 3600 writers. The characters are labelled by one of the 62 classes
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
319 corresponding to ``0''-``9'',``A''-``Z'' and ``a''-``z''. The dataset contains 8 parts (partitions) of varying complexity.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
320 The fourth partition (called $hsf_4$, 82,587 examples),
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
321 experimentally recognized to be the most difficult one, is the one recommended
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
322 by NIST as a testing set and is used in our work as well as some previous work~\citep{Granger+al-2007,Cortes+al-2000,Oliveira+al-2002-short,Milgram+al-2005}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
323 for that purpose. We randomly split the remainder (731,668 examples) into a training set and a validation set for
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
324 model selection.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
325 The performances reported by previous work on that dataset mostly use only the digits.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
326 Here we use all the classes both in the training and testing phase. This is especially
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
327 useful to estimate the effect of a multi-task setting.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
328 The distribution of the classes in the NIST training and test sets differs
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
329 substantially, with relatively many more digits in the test set, and a more uniform distribution
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
330 of letters in the test set (whereas in the training set they are distributed
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
331 more like in natural text).
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
332 %\vspace*{-1mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
333
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
334 %\item
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
335 {\bf Fonts.}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
336 In order to have a good variety of sources we downloaded an important number of free fonts from:
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
337 {\tt http://cg.scs.carleton.ca/\textasciitilde luc/freefonts.html}.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
338 % TODO: pointless to anonymize, it's not pointing to our work
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
339 Including an operating system's (Windows 7) fonts, there is a total of $9817$ different fonts that we can choose uniformly from.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
340 The chosen {\tt ttf} file is either used as input of the Captcha generator (see next item) or, by producing a corresponding image,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
341 directly as input to our models.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
342 %\vspace*{-1mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
343
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
344 %\item
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
345 {\bf Captchas.}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
346 The Captcha data source is an adaptation of the \emph{pycaptcha} library (a Python-based captcha generator library) for
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
347 generating characters of the same format as the NIST dataset. This software is based on
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
348 a random character class generator and various kinds of transformations similar to those described in the previous sections.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
349 In order to increase the variability of the data generated, many different fonts are used for generating the characters.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
350 Transformations (slant, distortions, rotation, translation) are applied to each randomly generated character with a complexity
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
351 depending on the value of the complexity parameter provided by the user of the data source.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
352 %Two levels of complexity are allowed and can be controlled via an easy to use facade class. %TODO: what's a facade class?
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
353 %\vspace*{-1mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
354
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
355 %\item
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
356 {\bf OCR data.}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
357 A large set (2 million) of scanned, OCRed and manually verified machine-printed
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
358 characters where included as an
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
359 additional source. This set is part of a larger corpus being collected by the Image Understanding
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
360 Pattern Recognition Research group led by Thomas Breuel at University of Kaiserslautern
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
361 ({\tt http://www.iupr.com}), and which will be publicly released.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
362 %TODO: let's hope that Thomas is not a reviewer! :) Seriously though, maybe we should anonymize this
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
363 %\end{itemize}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
364
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
365 %\vspace*{-3mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
366 \subsection{Data Sets}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
367 %\vspace*{-2mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
368
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
369 All data sets contain 32$\times$32 grey-level images (values in $[0,1]$) associated with a label
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
370 from one of the 62 character classes.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
371 %\begin{itemize}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
372 %\vspace*{-1mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
373
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
374 %\item
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
375 {\bf NIST.} This is the raw NIST special database 19~\citep{Grother-1995}. It has
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
376 \{651,668 / 80,000 / 82,587\} \{training / validation / test\} examples.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
377 %\vspace*{-1mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
378
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
379 %\item
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
380 {\bf P07.} This dataset is obtained by taking raw characters from all four of the above sources
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
381 and sending them through the transformation pipeline described in section \ref{s:perturbations}.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
382 For each new example to generate, a data source is selected with probability $10\%$ from the fonts,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
383 $25\%$ from the captchas, $25\%$ from the OCR data and $40\%$ from NIST. We apply all the transformations in the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
384 order given above, and for each of them we sample uniformly a \emph{complexity} in the range $[0,0.7]$.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
385 It has \{81,920,000 / 80,000 / 20,000\} \{training / validation / test\} examples
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
386 obtained from the corresponding NIST sets plus other sources.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
387 %\vspace*{-1mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
388
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
389 %\item
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
390 {\bf NISTP.} This one is equivalent to P07 (complexity parameter of $0.7$ with the same proportions of data sources)
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
391 except that we only apply
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
392 transformations from slant to pinch (see Fig.\ref{fig:transform}(b-f)).
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
393 Therefore, the character is
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
394 transformed but no additional noise is added to the image, giving images
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
395 closer to the NIST dataset.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
396 It has \{81,920,000 / 80,000 / 20,000\} \{training / validation / test\} examples
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
397 obtained from the corresponding NIST sets plus other sources.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
398 %\end{itemize}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
399
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
400 \begin{figure*}[ht]
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
401 %\vspace*{-2mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
402 \centerline{\resizebox{0.8\textwidth}{!}{\includegraphics{images/denoising_autoencoder_small.pdf}}}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
403 %\vspace*{-2mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
404 \caption{Illustration of the computations and training criterion for the denoising
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
405 auto-encoder used to pre-train each layer of the deep architecture. Input $x$ of
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
406 the layer (i.e. raw input or output of previous layer)
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
407 s corrupted into $\tilde{x}$ and encoded into code $y$ by the encoder $f_\theta(\cdot)$.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
408 The decoder $g_{\theta'}(\cdot)$ maps $y$ to reconstruction $z$, which
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
409 is compared to the uncorrupted input $x$ through the loss function
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
410 $L_H(x,z)$, whose expected value is approximately minimized during training
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
411 by tuning $\theta$ and $\theta'$.}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
412 \label{fig:da}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
413 %\vspace*{-2mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
414 \end{figure*}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
415
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
416 %\vspace*{-3mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
417 \subsection{Models and their Hyper-parameters}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
418 %\vspace*{-2mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
419
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
420 The experiments are performed using MLPs (with a single
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
421 hidden layer) and deep SDAs.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
422 \emph{Hyper-parameters are selected based on the {\bf NISTP} validation set error.}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
423
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
424 {\bf Multi-Layer Perceptrons (MLP).} Whereas previous work had compared
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
425 deep architectures to both shallow MLPs and SVMs, we only compared to MLPs
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
426 here because of the very large datasets used (making the use of SVMs
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
427 computationally challenging because of their quadratic scaling
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
428 behavior). Preliminary experiments on training SVMs (libSVM) with subsets
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
429 of the training set allowing the program to fit in memory yielded
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
430 substantially worse results than those obtained with MLPs\footnote{RBF SVMs
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
431 trained with a subset of NISTP or NIST, 100k examples, to fit in memory,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
432 yielded 64\% test error or worse; online linear SVMs trained on the whole
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
433 of NIST or 800k from NISTP yielded no better than 42\% error; slightly
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
434 better results were obtained by sparsifying the pixel intensities and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
435 projecting to a second-order polynomial (a very sparse vector), still
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
436 41\% error. We expect that better results could be obtained with a
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
437 better implementation allowing for training with more examples and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
438 a higher-order non-linear projection.} For training on nearly a hundred million examples (with the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
439 perturbed data), the MLPs and SDA are much more convenient than classifiers
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
440 based on kernel methods. The MLP has a single hidden layer with $\tanh$
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
441 activation functions, and softmax (normalized exponentials) on the output
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
442 layer for estimating $P(class | image)$. The number of hidden units is
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
443 taken in $\{300,500,800,1000,1500\}$. Training examples are presented in
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
444 minibatches of size 20. A constant learning rate was chosen among $\{0.001,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
445 0.01, 0.025, 0.075, 0.1, 0.5\}$.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
446 %through preliminary experiments (measuring performance on a validation set),
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
447 %and $0.1$ (which was found to work best) was then selected for optimizing on
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
448 %the whole training sets.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
449 %\vspace*{-1mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
450
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
451
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
452 {\bf Stacked Denoising Auto-encoders (SDA).}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
453 Various auto-encoder variants and Restricted Boltzmann Machines (RBMs)
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
454 can be used to initialize the weights of each layer of a deep MLP (with many hidden
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
455 layers)~\citep{Hinton06,ranzato-07-small,Bengio-nips-2006},
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
456 apparently setting parameters in the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
457 basin of attraction of supervised gradient descent yielding better
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
458 generalization~\citep{Erhan+al-2010}. This initial {\em unsupervised
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
459 pre-training phase} uses all of the training images but not the training labels.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
460 Each layer is trained in turn to produce a new representation of its input
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
461 (starting from the raw pixels).
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
462 It is hypothesized that the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
463 advantage brought by this procedure stems from a better prior,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
464 on the one hand taking advantage of the link between the input
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
465 distribution $P(x)$ and the conditional distribution of interest
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
466 $P(y|x)$ (like in semi-supervised learning), and on the other hand
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
467 taking advantage of the expressive power and bias implicit in the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
468 deep architecture (whereby complex concepts are expressed as
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
469 compositions of simpler ones through a deep hierarchy).
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
470
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
471 Here we chose to use the Denoising
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
472 Auto-encoder~\citep{VincentPLarochelleH2008-very-small} as the building block for
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
473 these deep hierarchies of features, as it is simple to train and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
474 explain (see Figure~\ref{fig:da}, as well as
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
475 tutorial and code there: {\tt http://deeplearning.net/tutorial}),
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
476 provides efficient inference, and yielded results
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
477 comparable or better than RBMs in series of experiments
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
478 \citep{VincentPLarochelleH2008-very-small}. It really corresponds to a Gaussian
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
479 RBM trained by a Score Matching criterion~\cite{Vincent-SM-2010}.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
480 During training, a Denoising
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
481 Auto-encoder is presented with a stochastically corrupted version
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
482 of the input and trained to reconstruct the uncorrupted input,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
483 forcing the hidden units to represent the leading regularities in
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
484 the data. Here we use the random binary masking corruption
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
485 (which sets to 0 a random subset of the inputs).
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
486 Once it is trained, in a purely unsupervised way,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
487 its hidden units' activations can
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
488 be used as inputs for training a second one, etc.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
489 After this unsupervised pre-training stage, the parameters
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
490 are used to initialize a deep MLP, which is fine-tuned by
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
491 the same standard procedure used to train them (see above).
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
492 The SDA hyper-parameters are the same as for the MLP, with the addition of the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
493 amount of corruption noise (we used the masking noise process, whereby a
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
494 fixed proportion of the input values, randomly selected, are zeroed), and a
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
495 separate learning rate for the unsupervised pre-training stage (selected
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
496 from the same above set). The fraction of inputs corrupted was selected
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
497 among $\{10\%, 20\%, 50\%\}$. Another hyper-parameter is the number
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
498 of hidden layers but it was fixed to 3 for most experiments,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
499 based on previous work with
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
500 SDAs on MNIST~\citep{VincentPLarochelleH2008-very-small}.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
501 We also compared against 1 and against 2 hidden layers, in order
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
502 to disantangle the effect of depth from the effect of unsupervised
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
503 pre-training.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
504 The size of the hidden
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
505 layers was kept constant across hidden layers, and the best results
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
506 were obtained with the largest values that we could experiment
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
507 with given our patience, with 1000 hidden units.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
508
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
509 %\vspace*{-1mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
510
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
511 \begin{figure*}[ht]
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
512 %\vspace*{-2mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
513 \centerline{\resizebox{.99\textwidth}{!}{\includegraphics{images/error_rates_charts.pdf}}}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
514 %\vspace*{-3mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
515 \caption{SDAx are the {\bf deep} models. Error bars indicate a 95\% confidence interval. 0 indicates that the model was trained
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
516 on NIST, 1 on NISTP, and 2 on P07. Left: overall results
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
517 of all models, on NIST and NISTP test sets.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
518 Right: error rates on NIST test digits only, along with the previous results from
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
519 literature~\citep{Granger+al-2007,Cortes+al-2000,Oliveira+al-2002-short,Milgram+al-2005}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
520 respectively based on ART, nearest neighbors, MLPs, and SVMs.}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
521 \label{fig:error-rates-charts}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
522 %\vspace*{-2mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
523 \end{figure*}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
524
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
525
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
526 \begin{figure*}[ht]
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
527 \vspace*{-3mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
528 \centerline{\resizebox{.99\textwidth}{!}{\includegraphics{images/improvements_charts.pdf}}}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
529 \vspace*{-3mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
530 \caption{Relative improvement in error rate due to out-of-distribution examples.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
531 Left: Improvement (or loss, when negative)
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
532 induced by out-of-distribution examples (perturbed data).
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
533 Right: Improvement (or loss, when negative) induced by multi-task
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
534 learning (training on all classes and testing only on either digits,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
535 upper case, or lower-case). The deep learner (SDA) benefits more from
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
536 out-of-distribution examples, compared to the shallow MLP.}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
537 \label{fig:improvements-charts}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
538 \vspace*{-2mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
539 \end{figure*}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
540
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
541 \vspace*{-2mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
542 \section{Experimental Results}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
543 \vspace*{-2mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
544
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
545 %%\vspace*{-1mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
546 %\subsection{SDA vs MLP vs Humans}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
547 %%\vspace*{-1mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
548 The models are either trained on NIST (MLP0 and SDA0),
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
549 NISTP (MLP1 and SDA1), or P07 (MLP2 and SDA2), and tested
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
550 on either NIST, NISTP or P07 (regardless of the data set used for training),
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
551 either on the 62-class task
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
552 or on the 10-digits task. Training time (including about half
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
553 for unsupervised pre-training, for DAs) on the larger
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
554 datasets is around one day on a GPU (GTX 285).
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
555 Figure~\ref{fig:error-rates-charts} summarizes the results obtained,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
556 comparing humans, the three MLPs (MLP0, MLP1, MLP2) and the three SDAs (SDA0, SDA1,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
557 SDA2), along with the previous results on the digits NIST special database
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
558 19 test set from the literature, respectively based on ARTMAP neural
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
559 networks ~\citep{Granger+al-2007}, fast nearest-neighbor search
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
560 ~\citep{Cortes+al-2000}, MLPs ~\citep{Oliveira+al-2002-short}, and SVMs
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
561 ~\citep{Milgram+al-2005}.% More detailed and complete numerical results
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
562 %(figures and tables, including standard errors on the error rates) can be
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
563 %found in Appendix.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
564 The deep learner not only outperformed the shallow ones and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
565 previously published performance (in a statistically and qualitatively
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
566 significant way) but when trained with perturbed data
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
567 reaches human performance on both the 62-class task
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
568 and the 10-class (digits) task.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
569 17\% error (SDA1) or 18\% error (humans) may seem large but a large
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
570 majority of the errors from humans and from SDA1 are from out-of-context
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
571 confusions (e.g. a vertical bar can be a ``1'', an ``l'' or an ``L'', and a
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
572 ``c'' and a ``C'' are often indistinguishible).
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
573 Regarding shallower networks pre-trained with unsupervised denoising
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
574 auto-encders, we find that the NIST test error is 21\% with one hidden
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
575 layer and 20\% with two hidden layers (vs 17\% in the same conditions
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
576 with 3 hidden layers). Compare this with the 23\% error achieved
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
577 by the MLP, i.e. a single hidden layer and no unsupervised pre-training.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
578 As found in previous work~\cite{Erhan+al-2010,Larochelle-jmlr-2009},
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
579 these results show that both depth and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
580 unsupervised pre-training need to be combined in order to achieve
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
581 the best results.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
582
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
583
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
584 In addition, as shown in the left of
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
585 Figure~\ref{fig:improvements-charts}, the relative improvement in error
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
586 rate brought by out-of-distribution examples is greater for the deep
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
587 SDA, and these
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
588 differences with the shallow MLP are statistically and qualitatively
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
589 significant.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
590 The left side of the figure shows the improvement to the clean
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
591 NIST test set error brought by the use of out-of-distribution examples
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
592 (i.e. the perturbed examples examples from NISTP or P07),
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
593 over the models trained exclusively on NIST (respectively SDA0 and MLP0).
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
594 Relative percent change is measured by taking
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
595 $100 \% \times$ (original model's error / perturbed-data model's error - 1).
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
596 The right side of
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
597 Figure~\ref{fig:improvements-charts} shows the relative improvement
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
598 brought by the use of a multi-task setting, in which the same model is
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
599 trained for more classes than the target classes of interest (i.e. training
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
600 with all 62 classes when the target classes are respectively the digits,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
601 lower-case, or upper-case characters). Again, whereas the gain from the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
602 multi-task setting is marginal or negative for the MLP, it is substantial
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
603 for the SDA. Note that to simplify these multi-task experiments, only the original
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
604 NIST dataset is used. For example, the MLP-digits bar shows the relative
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
605 percent improvement in MLP error rate on the NIST digits test set
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
606 as $100\% \times$ (single-task
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
607 model's error / multi-task model's error - 1). The single-task model is
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
608 trained with only 10 outputs (one per digit), seeing only digit examples,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
609 whereas the multi-task model is trained with 62 outputs, with all 62
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
610 character classes as examples. Hence the hidden units are shared across
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
611 all tasks. For the multi-task model, the digit error rate is measured by
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
612 comparing the correct digit class with the output class associated with the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
613 maximum conditional probability among only the digit classes outputs. The
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
614 setting is similar for the other two target classes (lower case characters
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
615 and upper case characters). Note however that some types of perturbations
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
616 (NISTP) help more than others (P07) when testing on the clean images.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
617 %%\vspace*{-1mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
618 %\subsection{Perturbed Training Data More Helpful for SDA}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
619 %%\vspace*{-1mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
620
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
621 %%\vspace*{-1mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
622 %\subsection{Multi-Task Learning Effects}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
623 %%\vspace*{-1mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
624
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
625 \iffalse
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
626 As previously seen, the SDA is better able to benefit from the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
627 transformations applied to the data than the MLP. In this experiment we
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
628 define three tasks: recognizing digits (knowing that the input is a digit),
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
629 recognizing upper case characters (knowing that the input is one), and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
630 recognizing lower case characters (knowing that the input is one). We
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
631 consider the digit classification task as the target task and we want to
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
632 evaluate whether training with the other tasks can help or hurt, and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
633 whether the effect is different for MLPs versus SDAs. The goal is to find
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
634 out if deep learning can benefit more (or less) from multiple related tasks
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
635 (i.e. the multi-task setting) compared to a corresponding purely supervised
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
636 shallow learner.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
637
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
638 We use a single hidden layer MLP with 1000 hidden units, and a SDA
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
639 with 3 hidden layers (1000 hidden units per layer), pre-trained and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
640 fine-tuned on NIST.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
641
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
642 Our results show that the MLP benefits marginally from the multi-task setting
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
643 in the case of digits (5\% relative improvement) but is actually hurt in the case
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
644 of characters (respectively 3\% and 4\% worse for lower and upper class characters).
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
645 On the other hand the SDA benefited from the multi-task setting, with relative
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
646 error rate improvements of 27\%, 15\% and 13\% respectively for digits,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
647 lower and upper case characters, as shown in Table~\ref{tab:multi-task}.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
648 \fi
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
649
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
650
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
651 \vspace*{-2mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
652 \section{Conclusions and Discussion}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
653 \vspace*{-2mm}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
654
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
655 We have found that out-of-distribution examples (multi-task learning
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
656 and perturbed examples) are more beneficial
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
657 to a deep learner than to a traditional shallow and purely
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
658 supervised learner. More precisely,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
659 the answers are positive for all the questions asked in the introduction.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
660 %\begin{itemize}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
661
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
662 $\bullet$ %\item
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
663 {\bf Do the good results previously obtained with deep architectures on the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
664 MNIST digits generalize to a much larger and richer (but similar)
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
665 dataset, the NIST special database 19, with 62 classes and around 800k examples}?
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
666 Yes, the SDA {\em systematically outperformed the MLP and all the previously
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
667 published results on this dataset} (the ones that we are aware of), {\em in fact reaching human-level
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
668 performance} at around 17\% error on the 62-class task and 1.4\% on the digits,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
669 and beating previously published results on the same data.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
670
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
671 $\bullet$ %\item
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
672 {\bf To what extent do out-of-distribution examples help deep learners,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
673 and do they help them more than shallow supervised ones}?
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
674 We found that distorted training examples not only made the resulting
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
675 classifier better on similarly perturbed images but also on
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
676 the {\em original clean examples}, and more importantly and more novel,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
677 that deep architectures benefit more from such {\em out-of-distribution}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
678 examples. Shallow MLPs were helped by perturbed training examples when tested on perturbed input
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
679 images (65\% relative improvement on NISTP)
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
680 but only marginally helped (5\% relative improvement on all classes)
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
681 or even hurt (10\% relative loss on digits)
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
682 with respect to clean examples. On the other hand, the deep SDAs
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
683 were significantly boosted by these out-of-distribution examples.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
684 Similarly, whereas the improvement due to the multi-task setting was marginal or
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
685 negative for the MLP (from +5.6\% to -3.6\% relative change),
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
686 it was quite significant for the SDA (from +13\% to +27\% relative change),
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
687 which may be explained by the arguments below.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
688 Since out-of-distribution data
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
689 (perturbed or from other related classes) is very common, this conclusion
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
690 is of practical importance.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
691 %\end{itemize}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
692
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
693 In the original self-taught learning framework~\citep{RainaR2007}, the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
694 out-of-sample examples were used as a source of unsupervised data, and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
695 experiments showed its positive effects in a \emph{limited labeled data}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
696 scenario. However, many of the results by \citet{RainaR2007} (who used a
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
697 shallow, sparse coding approach) suggest that the {\em relative gain of self-taught
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
698 learning vs ordinary supervised learning} diminishes as the number of labeled examples increases.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
699 We note instead that, for deep
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
700 architectures, our experiments show that such a positive effect is accomplished
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
701 even in a scenario with a \emph{large number of labeled examples},
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
702 i.e., here, the relative gain of self-taught learning and
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
703 out-of-distribution examples is probably preserved
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
704 in the asymptotic regime. However, note that in our perturbation experiments
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
705 (but not in our multi-task experiments),
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
706 even the out-of-distribution examples are labeled, unlike in the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
707 earlier self-taught learning experiments~\citep{RainaR2007}.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
708
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
709 {\bf Why would deep learners benefit more from the self-taught learning
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
710 framework and out-of-distribution examples}?
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
711 The key idea is that the lower layers of the predictor compute a hierarchy
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
712 of features that can be shared across tasks or across variants of the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
713 input distribution. A theoretical analysis of generalization improvements
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
714 due to sharing of intermediate features across tasks already points
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
715 towards that explanation~\cite{baxter95a}.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
716 Intermediate features that can be used in different
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
717 contexts can be estimated in a way that allows to share statistical
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
718 strength. Features extracted through many levels are more likely to
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
719 be more abstract and more invariant to some of the factors of variation
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
720 in the underlying distribution (as the experiments in~\citet{Goodfellow2009} suggest),
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
721 increasing the likelihood that they would be useful for a larger array
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
722 of tasks and input conditions.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
723 Therefore, we hypothesize that both depth and unsupervised
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
724 pre-training play a part in explaining the advantages observed here, and future
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
725 experiments could attempt at teasing apart these factors.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
726 And why would deep learners benefit from the self-taught learning
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
727 scenarios even when the number of labeled examples is very large?
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
728 We hypothesize that this is related to the hypotheses studied
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
729 in~\citet{Erhan+al-2010}. In~\citet{Erhan+al-2010}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
730 it was found that online learning on a huge dataset did not make the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
731 advantage of the deep learning bias vanish, and a similar phenomenon
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
732 may be happening here. We hypothesize that unsupervised pre-training
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
733 of a deep hierarchy with out-of-distribution examples initializes the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
734 model in the basin of attraction of supervised gradient descent
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
735 that corresponds to better generalization. Furthermore, such good
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
736 basins of attraction are not discovered by pure supervised learning
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
737 (with or without out-of-distribution examples) from random initialization, and more labeled examples
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
738 does not allow the shallow or purely supervised models to discover
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
739 the kind of better basins associated
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
740 with deep learning and out-of-distribution examples.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
741
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
742 A Flash demo of the recognizer (where both the MLP and the SDA can be compared)
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
743 can be executed on-line at the anonymous site {\tt http://deep.host22.com}.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
744
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
745 \iffalse
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
746 \section*{Appendix I: Detailed Numerical Results}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
747
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
748 These tables correspond to Figures 2 and 3 and contain the raw error rates for each model and dataset considered.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
749 They also contain additional data such as test errors on P07 and standard errors.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
750
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
751 \begin{table}[ht]
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
752 \caption{Overall comparison of error rates ($\pm$ std.err.) on 62 character classes (10 digits +
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
753 26 lower + 26 upper), except for last columns -- digits only, between deep architecture with pre-training
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
754 (SDA=Stacked Denoising Autoencoder) and ordinary shallow architecture
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
755 (MLP=Multi-Layer Perceptron). The models shown are all trained using perturbed data (NISTP or P07)
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
756 and using a validation set to select hyper-parameters and other training choices.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
757 \{SDA,MLP\}0 are trained on NIST,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
758 \{SDA,MLP\}1 are trained on NISTP, and \{SDA,MLP\}2 are trained on P07.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
759 The human error rate on digits is a lower bound because it does not count digits that were
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
760 recognized as letters. For comparison, the results found in the literature
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
761 on NIST digits classification using the same test set are included.}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
762 \label{tab:sda-vs-mlp-vs-humans}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
763 \begin{center}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
764 \begin{tabular}{|l|r|r|r|r|} \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
765 & NIST test & NISTP test & P07 test & NIST test digits \\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
766 Humans& 18.2\% $\pm$.1\% & 39.4\%$\pm$.1\% & 46.9\%$\pm$.1\% & $1.4\%$ \\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
767 SDA0 & 23.7\% $\pm$.14\% & 65.2\%$\pm$.34\% & 97.45\%$\pm$.06\% & 2.7\% $\pm$.14\%\\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
768 SDA1 & 17.1\% $\pm$.13\% & 29.7\%$\pm$.3\% & 29.7\%$\pm$.3\% & 1.4\% $\pm$.1\%\\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
769 SDA2 & 18.7\% $\pm$.13\% & 33.6\%$\pm$.3\% & 39.9\%$\pm$.17\% & 1.7\% $\pm$.1\%\\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
770 MLP0 & 24.2\% $\pm$.15\% & 68.8\%$\pm$.33\% & 78.70\%$\pm$.14\% & 3.45\% $\pm$.15\% \\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
771 MLP1 & 23.0\% $\pm$.15\% & 41.8\%$\pm$.35\% & 90.4\%$\pm$.1\% & 3.85\% $\pm$.16\% \\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
772 MLP2 & 24.3\% $\pm$.15\% & 46.0\%$\pm$.35\% & 54.7\%$\pm$.17\% & 4.85\% $\pm$.18\% \\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
773 \citep{Granger+al-2007} & & & & 4.95\% $\pm$.18\% \\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
774 \citep{Cortes+al-2000} & & & & 3.71\% $\pm$.16\% \\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
775 \citep{Oliveira+al-2002} & & & & 2.4\% $\pm$.13\% \\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
776 \citep{Milgram+al-2005} & & & & 2.1\% $\pm$.12\% \\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
777 \end{tabular}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
778 \end{center}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
779 \end{table}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
780
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
781 \begin{table}[ht]
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
782 \caption{Relative change in error rates due to the use of perturbed training data,
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
783 either using NISTP, for the MLP1/SDA1 models, or using P07, for the MLP2/SDA2 models.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
784 A positive value indicates that training on the perturbed data helped for the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
785 given test set (the first 3 columns on the 62-class tasks and the last one is
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
786 on the clean 10-class digits). Clearly, the deep learning models did benefit more
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
787 from perturbed training data, even when testing on clean data, whereas the MLP
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
788 trained on perturbed data performed worse on the clean digits and about the same
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
789 on the clean characters. }
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
790 \label{tab:perturbation-effect}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
791 \begin{center}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
792 \begin{tabular}{|l|r|r|r|r|} \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
793 & NIST test & NISTP test & P07 test & NIST test digits \\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
794 SDA0/SDA1-1 & 38\% & 84\% & 228\% & 93\% \\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
795 SDA0/SDA2-1 & 27\% & 94\% & 144\% & 59\% \\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
796 MLP0/MLP1-1 & 5.2\% & 65\% & -13\% & -10\% \\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
797 MLP0/MLP2-1 & -0.4\% & 49\% & 44\% & -29\% \\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
798 \end{tabular}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
799 \end{center}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
800 \end{table}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
801
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
802 \begin{table}[ht]
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
803 \caption{Test error rates and relative change in error rates due to the use of
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
804 a multi-task setting, i.e., training on each task in isolation vs training
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
805 for all three tasks together, for MLPs vs SDAs. The SDA benefits much
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
806 more from the multi-task setting. All experiments on only on the
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
807 unperturbed NIST data, using validation error for model selection.
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
808 Relative improvement is 1 - single-task error / multi-task error.}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
809 \label{tab:multi-task}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
810 \begin{center}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
811 \begin{tabular}{|l|r|r|r|} \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
812 & single-task & multi-task & relative \\
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
813 & setting & setting & improvement \\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
814 MLP-digits & 3.77\% & 3.99\% & 5.6\% \\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
815 MLP-lower & 17.4\% & 16.8\% & -4.1\% \\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
816 MLP-upper & 7.84\% & 7.54\% & -3.6\% \\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
817 SDA-digits & 2.6\% & 3.56\% & 27\% \\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
818 SDA-lower & 12.3\% & 14.4\% & 15\% \\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
819 SDA-upper & 5.93\% & 6.78\% & 13\% \\ \hline
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
820 \end{tabular}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
821 \end{center}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
822 \end{table}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
823
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
824 \fi
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
825
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
826 %\afterpage{\clearpage}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
827 %\clearpage
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
828 {
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
829 %\bibliographystyle{spbasic} % basic style, author-year citations
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
830 \bibliographystyle{plainnat}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
831 \bibliography{strings,strings-short,strings-shorter,ift6266_ml,specials,aigaion-shorter}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
832 %\bibliographystyle{unsrtnat}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
833 %\bibliographystyle{apalike}
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
834 }
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
835
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
836
249a180795e3 camera ready version
Yoshua Bengio <bengioy@iro.umontreal.ca>
parents:
diff changeset
837 \end{document}