Dr Houda Bouamor

Dr Asma Gharsellaoui

Dr Mehdi Ammi

Dr Yacine Bellik

Chahnez Zakaria

Laurent Pointal

Gahbiche Souhir

Nada Braham

Mehdi Labidi

Ignace Boukhris

Dr Math- Ieu Kuevakioe

Gaëtan Dubois

Sylvain Pruvost

Adrien Chevallier

Mohamed Yacine Girard

Fadi Tsalamlal

Dr Julien Abdin

Abdelhak Nauroy

Mohamed Bourdim

Ahmed Sakhraoui

Islam Kiswani I Mohamed

Convolutional Restricted Boltzmann Machines CT Census Transform

Keywords: Semantic Places Recognition, Energy-based models, Restricted Boltzmann Machines, Deep Belief Networks, Bag-of-Words, Softmax Regression Artificial Intelligence ANNs Artificial Neural Networks BMs

First and foremost, God, surely, helped me: otherwise it would not be possible to complete this research. Also, I would like to express my deep gratitude to my supervisors, Prof. Philippe Tarroux and Dr. Emmanuelle Frenoux, for their kind support, guidance, and inspirational ideas throughout this research. I mostly thank them for introducing me to the science of "machine learning, image processing, and robot place recognition". They have been an amazing mentors and supervisors, not only in research

Introduction

Un robot autonome doit être en mesure de reconnaître l'environnement dans lequel il évolue. Cette caractéristique lui permet d'apprendre l'organisation de son environnement pour un fonctionnement et une interaction optimaux. Pour atteindre cet objectif, différentes solutions ont été proposées. Certaines approches sont basées sur la localisation métrique (c.à.d. la capacité d'un robot mobile à déterminer sa position dans un repère commun), d'autres exploitent la localisation topologique (c.à.d. la capacité de produire une carte de son environnement). Toutefois, dans ces approches, l'information concernant l'emplacement est différente de l'information utilisée pour déterminer la catégorie sémantique du lieu. Ainsi, au-delà d'une localisation métrique précise utilisée dans les méthodes de localisation et de cartographie simultanées (Simultaneous Localization and Mapping: SLAM), la capacité pour un robot mobile de déterminer la nature de son environnement (cuisine, pièce, couloir, etc.) reste une tâche difficile.

La connaissance des coordonnées métriques ou même l'information de voisinage qui peut être encodée dans des cartes topologiques n'est, en effet, pas suffisante. L'approche par reconnaissance de lieux sémantiques (Semantic Place Recognition: SPR) est cependant nécessaire pour un grand nombre de tâches. Elle peut par exemple être utilisée comme une information contextuelle qui favorise la détection et la reconnaissance d'objets (donnant a priori l'identité, l'emplacement et l'échelle de l'objet). Ceci peut être utile lorsque la sémantique est obtenue sans aucune référence à des objets présents dans la scène. De plus, la catégorisation sémantique offre une référence absolue pour l'emplacement du robot, fournissant une solution simple pour des problèmes où la localisation ne peut pas être déduite à partir des emplacements voisins. C'est le cas, par exemple, pour résoudre des problémes tels que celui du robot kidnappé ou de la fermeture de boucle.

Etat de l'art

Les recherches récentes ont proposé d'exploiter les descripteurs visuels pour la reconnaissance sémantique. Les approches les plus fréquentes utilisent les descripteurs basés sur des caractéristiques utilisant des détecteurs globaux, tels que les descripteurs GiST et CENTRIST [START_REF] Pronobis | A discriminative approach to robust visual place recognition[END_REF]Torralba et al., 2003a;[START_REF] Wu | Visual place categorization: Problem, dataset, and algorithm[END_REF], ou les signatures locales calculées autour des points d'intérêt en utilisant des détecteurs locaux, comme par exemple les signaux SIFT et SURF [START_REF] Filliat | Interactive learning of visual topological navigation[END_REF][START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. Cependant, ces représentations ont recours à des méthodes de type sac-de-mots (Bag-of-Words : BoWs), afin de réduire la taille des représentations. Une quantification vectorielle est ensuite appliquée de telle sorte que afin de représenter l'image par un histogramme. Les approches discriminantes peuvent être utilisées pour calculer la probabilité d'être dans un lieu donné en fonction de l'observation courante. Les approches génératives peuvent également être utilisées pour calculer la probabilité d'une observation donnée dans un certain lieu en utilisant le filtrage bayésien. Parmi ces approches, certains travaux [START_REF] Torralba | Small codes and large image databases for recognition[END_REF] omettent l'utilisation de l'étape de quantification et modélisent la densité de probabilité à l'aide d'un mélange de gaussiennes (Gaussian Mixture Model : GMM). Les approches récentes proposent également d'utiliser des classificateurs bayésiens naïfs et l'intégration temporelle qui permettent de combiner les observations successives [START_REF] Dubois | Visual place recognition using bayesian filtering with markov chains[END_REF].

La SPR nécessite donc l'utilisation d'un espace de caractéristiques approprié qui permet une classification précise et rapide. Contrairement à ces méthodes empiriques, de nouvelles méthodes d'apprentissage automatique ont récemment émergé. La structure auto-similaire des images naturelles a permis la création de codes optimaux. Ces codes sont basés sur des caractéristiques statistiquement indépendantes. A cet effet, différentes méthodes ont été proposées pour construire ces codes à partir de bases de données des images. Imposer des contraintes de localité et de faible densité à ces caractéristiques est très important. Ceci est probablement dû au fait que les algorithmes simples basés sur ces contraintes peuvent obtenir des signatures linéaires analogues à la notion de champ récepteur dans les systèmes naturels. Ces dernières années, différent travaux se sont intéressé aux algorithmes de vision par ordinateur reposant sur des représentations locales clairsemé, en particulier pour les problèmes de classification d'images et de reconnaissance d'objets [START_REF] Boureau | Learning mid-level features for recognition[END_REF][START_REF] Ranzato | Unsupervised learning of invariant feature hierarchies with applications to object recognition[END_REF][START_REF] Wright | Sparse representation for computer vision and pattern recognition[END_REF][START_REF] Yang | Linear spatial pyramid matching using sparse coding for image classification[END_REF]. En outre, d'un point de vue génératif, l'efficacité de codage local clairsemé dense, par exemple pour la reconstruction d'image [Labusch and Martinetz], est justifiée par le fait qu'une image naturelle peut être reconstruite par un plus petit nombre de caractéristiques. Il a été démontré que l'analyse par composantes indépendantes (Independent Component Analysis: ICA) génère des caractéristiques localisées. De plus, cette analyse est efficace pour les distributions présentant un niveau de kurtosis élevé qui représentent des statistiques d'images naturelles dominées par des composants rares comme les contours. Cependant, cette méthode est linéaire et non récursive.

Ces deux limitations n'existent pas dans le cas des approches DBN [Hinton et al., 2006] qui introduisent des non-linéarités dans le système de codage et qui présentent de multiples couches. Chaque couche est constituée d'une RBM, une version simplifiée d'une machine de Boltzmann proposé par Smolensky [START_REF] Smolensky | Information processing in dynamical systems: foundations of harmony theory[END_REF] et Hinton [START_REF] Hinton | Training products of experts by minimizing contrastive divergence[END_REF]. Chaque RBM est capable de construire un modèle génératif statistique pour ses entrées à l'aide d'un algorithme d'apprentissage relativement rapide (Contrastive Divergence: CD), qui a été introduit la première fois par Hinton [START_REF] Hinton | Training products of experts by minimizing contrastive divergence[END_REF]. Une autre caractéristique importante des codes utilisés dans les systèmes naturels, la densité de représentation [START_REF] Olshausen | Sparse coding of sensory inputs[END_REF], est également réalisée avec l'approche DBN. En outre, il a été montré que ces approches sont robustes pour extraire des caractéristiques locales clairsemé dans de mini-images [START_REF] Torralba | Small codes and large image databases for recognition[END_REF].

Cependant, dans ces recherches, nous supposons que les représentations clairsemé conduisent à des problèmes linéairement séparables. Ce type de représentations devrait simplifier le problème de classification. Par ailleurs, nous avons étudié l'extraction de caractéristiques à partir de données blanchies et normalisées. Nous avons également étudié l'effet de cette normalisation sur le problème SPR.

Description du modèle

Notre nouvelle approche SPR comporte trois principales étapes: le prétraitement des images, l'élaboration non-supervisée des caractéristiques de l'em-placement, et l'apprentissage supervisé de l'emplacement. Plus précisément, la première étape consiste à convertir la couleur en niveaux de gris, en les réduisant à de petits patches d'images, puis en normaliser le résultat.

La deuxième étape consiste à coder les images d'entrée en utilisant les caractéristiques extraites. Elle consiste à extraire à travers plusieurs couches RBM formant un DBN un alphabet de caractéristiques. La méthode DBN est capable de coder de fac ¸on optimale les images d'une manière adaptée à leur classification. La phase finale est la classification qui consiste à discriminer entre les différents localisations possibles pour le robot.

Traitement des images

Utilisation des mini-images

La dimension d'entrée typique pour un DBN est d'environ 1000 unités (par exemple 30×30 pixels). L'utilisation de plus petits patches pourraient rendre le modèle incapable d'extraire des caractéristiques intéressantes.

L'utilisation de plus grands patches peut conduire à des temps d'exécution importants durant l'apprentissage des caractéristiques. En outre, la multiplication des poids de connexion agit négativement sur la convergence de l'algorithme CD. La question est donc de savoir comment redimensionner la taille des images réalistes (par exemple 300 × 300 pixels) pour les rendre appropriées pour l'DBN.

Trois solutions peuvent être envisagées. La première consiste à sélectionner les patches aléatoirement à partir de chaque image comme réalisé dans les travaux de [START_REF] Ranzato | Factored 3-way restricted boltzmann machines for modeling natural images[END_REF]. La seconde approche consiste à utiliser une architecture convolutive, telle que proposée dans [START_REF] Lee | Convolutional deep belief networks for scalable unsupervised learning of hierarchical representations[END_REF]. Enfin, la dernière approche consiste à redimensionner la taille de chaque image pour obtenir une image de plus petite taille comme proposé dans [START_REF] Torralba | Small codes and large image databases for recognition[END_REF]. La première solution revient à extraire les caractéristiques locales. La caractérisation d'une image à l'aide de ces caractéristiques peut être réalisée à l'aide de l'approche BoW que nous souhaitons éviter. La deuxième solution présente les mêmes limites et augmente le nombre de calculs qui doivent être traités par le processeur graphique. L'extraction de caractéristiques utilisant les patches aléatoires est indépendante des structures spatiales de chaque image [START_REF] Norouzi | Stacks of convolutional restricted boltzmann machines for shift-invariant feature learning[END_REF]. Dans le cas de scènes structurées comme celles utilisées avec les SPR, ces structures portent une information intéressante.

En outre, des mini-images ont été utilisées avec succès dans [START_REF] Torralba | Small codes and large image databases for recognition[END_REF] pour classer et extraire des images à partir de la base de données de 80 millions d'images développée au MIT. Torralba et al. ont montré que l'utilisation des mini-images combinées avec une approche DBN conduit à coder chaque image par un petit vecteur binaire. Ce vecteur définit les éléments d'un alphabet caractéristique qui peut être utilisé pour définir de fac ¸on optimale l'image originale. Le vecteur binaire agit comme un code-barres tandis que l'alphabet de caractéristiques est calculé une seule fois à partir d'un ensemble représentatif de l'image. L'intérêt de cette approche est démontré par le fait que le petit vecteur binaire (comme ceux que nous utilisons comme sortie de notre structure de DBN) dépasse largement le nombre d'images qui doivent être codées même dans le cas d'une énorme base de données (2 256 ∼ 10 75 ). Pour toutes ces raisons nous avons choisi l'approche de réduction de l'image.

Blanchiment des données et normalisation locale

Généralement, les images naturelles sont très structurés et contiennent d'importantes redondances statistiques, c'est à-dire que leurs pixels présentent de fortes corrélations [START_REF] Attneave | Some informational aspects of visual perception[END_REF][START_REF] Barlow | Redundancy reduction revisited[END_REF]. Par exemple, il est bien connu que les images naturelles incluent des régularités importantes dans leurs statistiques de premier et second ordre (corrélations spatiales). Ces statistiques peuvent être mesurées à l'aide d'une fonction d'autocorrélation ou de la densité spectrale de Fourier [START_REF] Field | Relations between the statistics of natural images and the response properties of cortical cells[END_REF].

Ces corrélations sont dues à la nature redondante des images naturelles (les pixels adjacents ont généralement de fortes corrélations, sauf autour des bords). La présence de ces corrélations permet, la reconstruction de l'image, par exemple, en utilisant les champs de Markov. Il a ainsi été montré par [START_REF] Bell | The 'independent components' of natural scenes are edge filters[END_REF][START_REF] Field | Relations between the statistics of natural images and the response properties of cortical cells[END_REF][START_REF] Olshausen | Emergence of simple-cell receptive field properties by learning a sparse code for natural images[END_REF] que les arêtes sont les principales caractéristiques des images naturelles et qu'elles sont plutt codées par des dépendances statistiques d'ordre supérieur. On peut déduire de cette observation que les statistiques des images naturelles ne sont pas gaussiennes comme démontré précédemment (puisque les moments supérieurs à l'ordre deux sont nuls pour les distributions gaussiennes). Ces statistiques sont dominées par des événements rares comme les contours, conduisant à des kurtosis élevés.

Les prétraitements visant à éliminer ces corrélations d'ordre deux sont connus sous le nom de blanchiment. Il a été montré que le blanchiment est une stratégie de prétraitement utile pour l'ICA [START_REF] Hyvärinen | Independent component analysis: Algorithms and applications[END_REF][START_REF] Soman | machine learning with SVM and other kernel methods[END_REF]. Il est également une étape obligatoire pour l'utilisation de méthodes de classification dans la reconnaissance d'objets [START_REF] Coates | An analysis of single-layer networks in unsupervised feature learning[END_REF]. Le blanchiment est un processus linéaire. Par ailleurs, il ne supprime pas les statistiques d'ordre supérieur ou encore les régularités présentes dans les données. Théoriquement, le blanchiment est une tâche simple. Après centrage, les vecteurs de données sont projetés sur les axes principaux (calculés comme des vecteurs propres de la matrice de variance-covariance) et ensuite divisés par la variance le long de ces axes. De cette fac ¸on, le nuage de données présente une forme sphérique, laissant apparaître uniquement les axes correspondant généralement à ses ordres supérieurs de dépendances statistiques.

Une autre approche pour le prétraitement des données consiste à effectuer une normalisation locale. Dans ce cas, chaque correctif x (i) est normalisé en soustrayant la moyenne et en divisant le résultat par l'écart-type de ses éléments. Pour les données visuelles, cela correspond à la normalisation locale de la luminosité et du contraste. On peut trouver dans [START_REF] Coates | An analysis of single-layer networks in unsupervised feature learning[END_REF] une étude sur la normalisation locale et ses effets sur une tâche de classification. Cependant, on peut noter que cette étude a été effectuée en utilisant deux bases de données, NORB et CIFAR, qui ont été spécialement conc ¸ues pour la reconnaissance d'objets.

Nous pouvons également noter que dans [START_REF] Ranzato | Factored 3-way restricted boltzmann machines for modeling natural images[END_REF], les auteurs affirment que le blanchiment accélère le convergence de l'algorithme. Cependant, ce résultat n'a pas été justifié.

Élaboration de caractéristiques spatiales non supervisée

Machine de Boltzmann Restreinte (RBM avec Gaussienne-Bernoulli)

À la différence de la machine de Boltzmann, une RBM est un modèle graphique non orienté bipartite θ = {w i j , b i , c j }, qui apprend un modèle généré à partir de données observées. Elle consiste en deux couches.

La couche cachée, contenant des variables latentes h, est utilisée pour générer la couche visible, contenant les variables observées v. Dès que la génération P(v|h) a appris, les connexions non orientées peuvent déterminer P(h|v). Les deux couches sont entièrement connectées par le biais d'un ensemble de poids w i j et les biais {b i , c j } et il n'y a pas de connexion entre les unités d'une même couche. Dans un RBM classique, la configuration des connexions entre les unités binaires visibles et les unités binaires cachées a une fonction d'énergie E(v, h; θ) donnée par :

E(v, h; θ) = -∑ i ∑ j v i h j w i j -∑ i∈v b i v i -∑ j∈h c j h j (1)
où Z(θ) est une constante de normalisation. Ainsi, après la marginalisation, la probabilité d'une configuration cachée de l'état h peut être dérivée comme suit :

P(h; θ) = ∑ v P(v, h; θ) = ∑ v e -E(v,h;θ) ∑ v ∑ h e -E(v,h;θ) (3)
Cependant, selon [START_REF] Krizhevsky | Learning multiple layers of features from tiny images[END_REF], la probabilité conditionnelle ci-dessus peut être calculée en utilisant la fonction logistique sigmoïde comme suit :

P(h j = 1 | v; θ) = σ(c j + ∑ i w i j v i ) (4)
où σ(x) = 1/(1 + e -x ) est la fonction logistique. Une fois que les états binaires cachés sont échantillonnés, nous produisons une "reconstruction" de la mini-image d'origine en mettant l'état de chaque unité visible à la valeur 1 avec une probabilité :

P(v i = 1 | h; θ) = σ(b i + ∑ j w i j h j ). (5)
Cependant, des unités visibles logistiques ou binaires ne sont pas appropriées pour coder des valeurs multiples en entrées comme les niveaux de gris des pixels, parce que les unités logistiques représentent mal des données telles que les sous-images d'images naturelles. Pour surmonter ce problème, comme l'a suggéré [START_REF] Hinton | A practical guide to training restricted boltzmann machines -version 1[END_REF], dans le présent travail, nous remplac ¸ons les unités binaires visibles par un système d'activation gaussienne avec moyenne nulle comme suit :

P(v i = 1 | h; θ) ← N(b i + ∑ j w i j h j , σ 2 ) ( 6
)
où σ 2 désigne la variance du bruit. Dans ce cas, la fonction d'énergie de RBM avec Gaussienne-Bernoulli est donnée par:

E(v, h; θ) = ∑ i∈v (v i -b i ) 2 2σ 2 i -∑ j∈h c j h j -∑ i ∑ j v i σ i h j w i j (7)
Apprentissage RBM avec une contrainte de parcimonie

Pour connaître les paramètres RBM, il est possible de maximiser la logvraisemblance dans une procédure de descente de gradient. Ainsi, la dérivée du modèle du logarithme népérien de la vraisemblance sur un ensemble d'apprentissage D est donnée par:

∂ ∂θ L(θ) = ∂E(v, θ) ∂θ M - ∂E(v, θ) ∂θ D ( 8
)
où le premier terme correspond à la moyenne par rapport au modèle de distribution et le second correspond à l'espérance sur les données. Bien que le second terme soit simple à calculer, le premier est souvent insoluble. Cela est dû au fait que le calcul de la vraisemblance a besoin du calcul de la fonction de partition, Z(θ), qui est habituellement impossible à calculer. Une méthode de type Markov-Chain Monte Carlo, comme l'échantillonnage de Gibbs, peut être utilisée pour calculer l'espérance.

Ces méthodes, cependant, sont très lentes et souffrent d'une forte variance dans leurs estimations.

En 2002, Hinton a proposé une procédure d'apprentissage rapide appelé Divergence Contrastive (Contrastive Divergence : CD) [START_REF] Hinton | Training products of experts by minimizing contrastive divergence[END_REF].

Cet algorithme d'apprentissage est basé sur le fait que minimiser l'énergie du réseau revient à minimiser la distance entre les données originales et les données statistiques générées. La comparaison est faite entre les statistiques des données et des statistiques générées par un échantillonnage de Gibbs. Par conséquent, dans l'apprentissage des CD, nous essayons de minimiser la distance de Kullback-Leibler entre la distribution des données, Q 0 , et le modèle de distribution, Q ∞ , comme suit:

CD n = KL(Q 0 ||Q ∞ ) -KL(Q 1 ||Q ∞ ) (9)
Le principal avantage de cet algorithme, est que les termes irréductibles, Q ∞ , dans l'équation ci-dessus s'annulent les uns les autres, comme il est expliqué dans [START_REF] Andrzejewski | Training binary restricted boltzmann machines with contrastive divergence[END_REF][START_REF] Hinton | Training products of experts by minimizing contrastive divergence[END_REF]. Cela signifie que, dans la pratique, nous utilisons habituellement seulement quelques pas de l'échantillonnage de Gibbs (la plupart du temps ré duit à un) pour assurer la convergence. Pour une RBM, les poids du réseau peuvent donc être mis à jour à l'aide de l'équation suivante:

- ∂ ∂w i j Q 0 Q ∞ -Q 1 Q ∞ ≈ v 0 i h 0 j Q 0 -v n i h n j Q 1 (10)
Cette équation peut être réécrite comme suit :

w i j ← w i j + η( v 0 i h 0 j data -v n i h n j recon. ) (11)
où η est le taux d'apprentissage, v 0 correspond à la distribution de données initiales, h 0 est calculé en utilisant l'équation 4, v n est échantillonné à l'aide de la distribution Gaussienne de l'équation 6 et avec n pas d'échantillonnage de Gibbs. h n est de nouveau calculée à partir de l'équation 4. En outre, les règles de mise à jour des biais des neurones visibles et cachés sont similaires à la règle de mise à jour pour les poids:

b i ← b i + η[ v 0 i data -v n i recon. ] (12) et c j ← c j + η[ h 0 j data -h n j recon. ] (13)
où v i , h j , b i , et c j désignent le i-ième neurone visible, le j-ième neurone caché, le i-ième biais visible, et le j-ième biais caché respectivement.

En ce qui concerne la contrainte de parcimonie dans les RBMs, nous suivons l'approche développée dans [START_REF] Lee | Sparse deep belief net model for visual area v2[END_REF]. Cette méthode introduit un terme de régularisation qui réduit les activations moyennes des variables cachées sur l'ensemble des exemples de formation. Ainsi, l'activation des neurones du modèle devient également clairsemée. En fait, cette méthode est similaire à celle utilisée dans d'autres modèles [START_REF] Olshausen | Emergence of simple-cell receptive field properties by learning a sparse code for natural images[END_REF]. Ainsi, comme illustré dans [START_REF] Lee | Sparse deep belief net model for visual area v2[END_REF], étant donné un ensemble d'apprentissage {v (1) , . . . , v (m) } qui comprend m exemples, nous posons le problème d'optimisation suivant:

minimize {w i j ,b i ,c j } - m ∑ l=1 log ∑ h P(v (l) , h (l) ) +λ n ∑ j=1 p- 1 m m ∑ l=1 E[h (l) j |v (l) ] 2 , (14)
où E[.] est l'espérance conditionnelle en fonction des données, p est la cible contrlant de la parcimonie des unités cachées h j , et λ est le coût de parcimonie. Ainsi, après avoir employé cette régularisation dans l'algorithme d'apprentissage de CD, le gradient du terme de régularisation de parcimonie sur les paramètres (poids w i j et les biais cachés c j ) peut être écrite comme suit:

w i j ← µ * w i j + η * ( v 0 i h 0 j -v n i h n j ) -λ * (p - 1 m m ∑ l=1 p (l) j ), (15)
c j ← c j + η[ h 0 j data -h n j recon ] -λ * (p - 1 m m ∑ l=1 p (l) j ), (16)
où m dans ce cas est la taille du mini-batch et p

(l) j σ(∑ i v (l)
i w i j + c j ). Il a été montré que l'algorithme d'apprentissage clairsemé RBM peut capturer d'intéressantes caractéristiques d'ordre supérieur à partir d'images naturelles [START_REF] Lee | Sparse deep belief net model for visual area v2[END_REF]. Nous espérons qu'un tel algorithme d'apprentissage reste capable de capturer des caractéristiques d'ordre supérieur à partir de diverses bases de données, comme par exemple une base de données créée afin de localiser d'un robot.

Apprentissage par couche pour les DBNs

Les RBM peuvent être empilées pour produire une architecture DBN, où les paramètres du modèle θ i , à la couche i, sont appris en gardant les paramètres du modèle dans la partie inférieure des couches constants.

Autrement dit, l'algorithme d'apprentissage DBN forme les couches RBM d'une fac ¸on gloutonne par couche. Les paramètres du modèle à la couche i -1 sont figés et les probabilités conditionnelles des valeurs unitaires cachées sont utilisées afin de générer les données nécessaires pour entraîner les paramètres du modèle à la couche i. Ce procédé peut être répété à travers les couches pour obtenir des représentations creuses des données initiales qui seront utilisées comme des vecteurs d'entrée pour effectuer le processus de classification.

Description des bases de données

La base de données d'images naturelles de Van Hateren Afin d'étudier l'impact de la normalisation des données sur la détection de caractéristiques, nous utilisons une base de données populaire contenant des images naturelles, la base de données de Van Hateren. Il s'agit d'une base de données d'images de haute résolution, calibrées et monochromes prises dans des conditions d'éclairage définies, conc ¸ues pour différentes tâches de traitement d'images. Cette base contient environ 4000 images de résolution 1536x1024 pixels.

Pour cette tâche, nous avons extrait aleatoirement un échantillon de 100000 de parcelles d'images 16 × 16. Ces parcelles sont ensuite blanchies en utilisant un algorithme de blanchiment et normalisées à l'aide d'une normalisation locale dans deux prétraitement distincts, tel qu'indiqué dans la figure 1.

La base de données COLD

Cette base de données (base de données de localisation COSY) a été originellement développée par [START_REF] Ullah | The cold database[END_REF] pour la localisation en robotique. Cette base contient une collection d'images étiquetées de resolution 640 × 480 acquises à cinq images par seconde lors de l'exploration d'un robot de trois laboratoires differents: Freiburg, Ljubljana, et Saarbruecken. Deux ensembles de chemins (Type A et B) ont été acquis dans des conditions d'éclairage différentes (ensoleillé, nuageux et nuit), et pour chaque condition, un chemin consiste à visiter différentes pièces (couloirs, zones d'impression, etc.). Ces promenades à travers les laboratoires sont répétées plusieurs fois. Bien que les images en couleur ont été enregistrées au cours de l'exploration, seules les images en niveaux de gris sont utilisées puisque des travaux antérieurs ont démontré que dans les couleurs de la base de données COLD sont faiblement informatives et rendent le système plus dépendant de l'éclairage [START_REF] Ullah | The cold database[END_REF].

Tel que proposé par [START_REF] Torralba | Small codes and large image databases for recognition[END_REF], la taille de l'image est réduite à 32 × 24 (voir, par exemple, la figure 2). La dernière série des miniimages (une nouvelle base de données appelée tiny-COLD) est centrée et blanchie/normalisée afin d'éliminer les statistiques de second ordre. Par conséquent, la variance dans l'équation 6 est définie à 1. Contrairement à Torralba, les 32 × 24 = 768 pixels des images blanchies ou normalisées sont utilisés directement en tant que vecteur d'entrée du réseau.

Zone d'impression Corridor

Chambre Terminal Lab de robotique Zone d'impression

Figure 2: Des échantillons de la base de données initiale COLD. les mini-images correspondantes sont affichées en bas á droite. On peut voir que, malgré la réduction de la taille, ces mini-images restent pleinement reconnaissables.

Les résultats expérimentaux

Effet de la normalisation sur les caractéristiques spatiales

Pour cette tâche, nous avons mené deux expériences en utilisant un ensemble de données de patchs aléatoirement échantillonnés à partir de la base de données de van Hateren. Après avoir décorrélé (algorithme de blanchiment) et normalisé des patchs en deux pré-processus séparés comme montré précédemment, une structure plus-complète (256 -512) de la première couche RBM a été utilisée.

La figure 3.20 Toutefois, les caractéristiques apprises à partir des données de normalisation sont totalement différentes de celles apprises avec les données blanchies. Ces caractéristiques restent clairsemées, mais couvrent un large spectre de fréquences spatiales. Il est intéressant de noter que ces caractéristiques ont l'air plus proches de celles obtenues avec les réseaux à convolution [START_REF] Lee | Convolutional deep belief networks for scalable unsupervised learning of hierarchical representations[END_REF] pour lesquels aucun blanchiment n'est appliqué aux données initiales. Nous pouvons remarquer que ces différences entre les données normalisées et blanchies ont déjà été observées dans [START_REF] Krizhevsky | Learning multiple layers of features from tiny images[END_REF]. Il a obtenu de meilleures performances en utilisant des caractéristiques tirées des données normalisée sur CIFAR-10 dans une tâche de reconnaissance d'objets.

Pour essayer de comprendre plus profondément pourquoi les caractéristiques obtenues à partir de patchs blanchis ou normalisés sont différentes, nous avons calculé la densité spectrale moyenne de Fourier des patchs dans les deux conditions, et nous l'avons comparée à la même fonction pour les patchs originaux. Nous avons tracé la moyenne du logarithme de la densité de puissance spectrale de la transformée de Fourier de tous les patchs Toutefois, le résultat dépend de la base de données utilisée et par conséquent des fréquences spatiales contenues dans les patchs initiaux. Le fait que la normalisation locale conserve (à une constante près) la même composition de fréquence que dans données initiales. Cela prouve que la normalisation ne supprime pas entièrement les corrélations du second or-dre. Olshausen [START_REF] Olshausen | Sparse coding with an overcomplete basis set: a strategy employed by v1?[END_REF] Les parties de pièces sont beaucoup plus représentés que dans la base de données blanchie. Nous remarquons que la gamme de fréquences spatiales couverte par les caractéristiques est beaucoup plus large. Dans les deux cas, les combinaisons de ces caractéristiques initiales dans les couches supérieures correspondent aux structures les plus caractéristiques des différentes pièces.

Figure 5: A gauche: Les 256 filtres obtenus par l'apprentissage d'une première couche de RBM 32 × 24 avec des patchs blanchis échantillonnés à partir de la base de données COLD. A droite: les 256 filtres obtenus par l'apprentissage d'une première couche de RBM 32x24 avec des patchs normalisée échantillonnés à partir de la base de données COLD. Le protocole de l'apprentissage est similaire à celles proposée dans [START_REF] Krizhevsky | Convolutional deep belief networks on cifar-10[END_REF]; [START_REF] Lee | Sparse deep belief net model for visual area v2[END_REF] (300 époques, taille de mini-batch 100, taux d'apprentissage 0, 002, décroissance des poids 0, 0002, moment initial 0, 5, moment final de 0, 9, paramètre de parcimonie 0, 02, coût de parcimonie 0, 02).

Apprentissage supervisé des lieux

Après la réalisation de la représentation appropriée en fonction des DBNs, une classification a été effectuée dans l'espace des caractéristiques comme le montre le tableau 1 (la deuxième ligne [START_REF] Lee | Sparse deep belief net model for visual area v2[END_REF]. Les résultats restent robustes aux variations d'illumination comme dans [START_REF] Lee | Sparse deep belief net model for visual area v2[END_REF]. Ces résultats ont été obtenus en utilisant les caractéristiques extraites à partir des données blanchies. Dans ce cas, le taux d'acceptation moyen (le pourcentage d'exemples pris en compte) varie de 75% à 85%, selon le laboratoire. Les résultats obtenus ici sont meilleurs que ceux publiés dans [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. Lorsque l'on considère l'ensemble des résultats obtenus par apprentissage et par tests avec des conditions de luminosité semblables, nous avons obtenu un taux de classification moyen de 90, 68% pour COLD-Saarbrucken laboratoire, 89, 88% pour COLD-Freiburg laboratoire et 90, 66% pour COLD-Ljubljana laboratoire.

Laboratory name Saarbruecken Freiburg Ljubljana ❵ ❵ ❵ ❵ ❵ ❵ ❵ ❵ ❵ ❵ ❵ ❵
Comme les résultats présentés dans [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF] la performance a diminué pour les expériences menées dans des conditions de luminosité différentes. Dans ce cas, nous avons obtenu des taux de classification de 83, 683% pour COLD-Saarbrucken laboratoire, 83, 14% pour COLD-Freiburg laboratoire et 84, 62% pour COLD-Ljubljana laboratoire.

Nous avons également appliqué la méthode du seuil sur les résultats obtenus avec les données normalisées localement. Le tableau 2 (deuxième ligne) montre les résultats de la classification moyenne en utilisant un seuil similaire (0, 55). On remarque que le taux moyen des images acceptées a augmenté pour se situer entre 86% à 90%, selon le laboratoire. ces résultat démontrent qu'un nombre plus élevé d'images a été utilisé dans la classification que dans l'expérience précédente. En outre, les résultats moyens sont largement meilleurs que ceux publiés dans [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. Ceci indique que la séparabilité linéaire des données a été significativement améliorée dans le cas de l'utilisation des données normalisées pour l'extraction de caractéristiques.

En ce qui concerne la sensibilité à la luminosité. Dans les deux cas, nos résultats semblent être moins sensibles aux conditions d'illumination par rapport aux résultats obtenus dans [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. Comme dans les expériences précédentes, nous avons constaté une faible performance sur les données COLD-Freiburg données, ce qui confirme que cette collection est la plus difficile de toute la base COLD comme indiqué dans [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. Toutefois, dans le cas de l'utilisation des fonctions apprises à partir des données non blanchies, avec et sans seuillage, nos résultats de classification pour le laboratoire Freiburg dépassent les meilleurs obtenus par [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF].

En règle générale, les tableaux 1 et 2 montrent une comparaison globale de nos résultats avec ceux de [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF] [START_REF] Krizhevsky | Convolutional deep belief networks on cifar-10[END_REF] (ε = 100, γ = 100, η = 0.002, λ = 0.0002, µ i = 0.5, and µ f = 0.9). . . tained by [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. They are grouped according to the illumination conditions under which the training sequences were acquired. Thus, the training conditions are on top of each set of bar-charts while the bottom axes indicate the illumination conditions used for testing.

The uncertainty bars represent the standard deviation. Results corresponding to the two different portions of the laboratories which are indicated by A and B. We can see from these results that the system is quite robust to the changes of illumination conditions and the overall performance is almost identical. These graphs have been taken from [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF] Today, mobile robotic systems are widely used in the industry to perform different tasks such as packaging, painting, welding, etc. However, robotics research develops more sophisticated applications that need the robot to be autonomous. Autonomy means that the robot will be able to decide by itself what behavior to adopt in unknown and uncertain environments. One type of tasks that require autonomy are the one involving people since people behavior is often unpredictable. Situations in which robots work in interaction with people are numerous. However, they often require the knowledge of the human environments. Personal assistance for example needs that the robots has a knowledge of the organization of the environment. In order to achieve that, the robot needs to locate itself. The answer of questions like "Where am I?", "How do I get there?", and "Where am I going to?" will allow the robot to behave and interact successfully and freely. Localization, mapping, and semantic place recognition seem to be required to solve these questions. Most of works have focused on the first two tracks. On the contrary, the last point has been addressed only recently and is currently always under investigations.

Whenever and wherever the robots are designed to behave and interact with the users, semantic information concerning places can be interesting and important. If the robot location is correctly recognized, its behavior will be improved for a lot of different applications and tasks. This is one of the main reasons why, in this research, we address the problem of robot localization based on semantic cues.

In this introduction, we start by identifying the research problem statement and the substantial motivations to propose a new approach to this problem. We then describe the main objectives and advantages to develop this work. We end this chapter by presenting an outline of the remaining chapters of this thesis.

Problem definition and overview

Robot localization is one of the major problems for the future of autonomous systems.

If the robot does not know where it is, it will be very difficult to do further processes or tasks. The robot will indeed need to have at least some information about where it is to be able to operate and interact successfully [Kor, 1998;[START_REF] Borenstein | Mobile robot positioning: Sensors and techniques[END_REF].

The question of semantic place recognition poses immediately one important problem

: what are the categories a robot should be able to recognize and what are the mechanisms by which human and animals recognize the categories of their environments. It seems obvious that the categories that divide the world of a fly, a dog or a human are deeply different. This seems to be due to the fact that at least some of these categories involve specific functionalities that each of these animals must use for recognition. The fly is attracted by soft meals, the dog recognizes its kennel to specific smells, the human forms categories with chairs since it can use them to sit. This ecological way to consider categories is surely the most adapted to future autonomous robotics. It would involve reinforcement and unsupervised learning but it seems for the moment largely out of reach. This is why the large majority of researches on place recognition have focused on recognition categories that humans make in their environment. Note that if the problem is less ecological than the recognition of genuine categories, it is helpful for interaction with humans. Besides, the problem is simpler than the previous one and can be solved using supervised learning methods.

Probabilistic approaches [START_REF] Thrun | Probabilistic Robotics (Intelligent Robotics and Autonomous Agents)[END_REF] have given rise to Simultaneous Location and Mapping (SLAM) techniques. However, the place information in this case is different from the information used for the determination of the semantic categories of places. Beyond the precise metric localization given by SLAM, the ability for a mobile robot to determine the nature of its environment (kitchen, room, corridor, etc.)

remains a challenging task. The knowledge of its metric coordinates or even the neighborhood information that can be encoded into topological maps is indeed not sufficient.

The semantic place recognition (SPR) is however required for a large set of tasks. It can for example be used as contextual information which fosters object detection and recognition (giving priors on object identity, location and scale) when it is achieved without any reference to the objects present in the scene. Moreover, it is able to build an absolute reference to the robot location, providing a simple solution for problems where the localization cannot be deduced from neighboring locations, such as in the kidnapped robot or the loop closure problems.

Most of the proposed approaches for place recognition or place categorization have used vision alone or combined with several types of telemeters such as laser or sonar see [START_REF] Pronobis | Multi-modal semantic place classification[END_REF] . Only few approaches have addressed this problem by integrating semantic information see [START_REF] Guillaume | Temporal bag-of-wordsa generative model for visual place recognition using temporal integration[END_REF] . It is well known that vision provides richer information than telemeters which is an important advantage for fine discrimination. Vision also offers more portable and cost effective solutions. It also can provide information unavailable for other sensors, for instance, it can provide semantic information on a scene through the understanding of its visual appearance, not just the geometric aspect of it. This is why we are interested in visual semantic place recognition. This would improve the performance in terms of flexibility and complexity for the classification process.

In spite of recent works, current approaches to vision-based semantic place recognition are still facing several challenges. The complexity and adaptability are probably the most important ones. In this thesis, we focus on developing a system that should overcome some of these challenges. We tried an alternative approach than the ones proposed recently in the literature. All of the approaches require a description of the scene in terms of a signature. Two different approaches are possible, the one more traditional based on hand-crafted methods based on empirical descriptors (like SURF (Speeded Up Robust Features) or SIFT (Scale Invariant Feature transform) detectors), the second based on the use of an alphabet of features designed from theoretical considerations and able to create an appropriate representation of the initial images. Recently the use of Restricted Boltzmann Machines (RBMs) has been shown able to derive such an alphabet. The method we propose in this work is based on such approaches.

Research objectives

This thesis thus presents a novel approach for SPR based on RBMs and a direct use of tiny images. We will see that the major advantage of this model is that it provides a simple alternative to the existing approaches of SPR like [START_REF] Pronobis | Confidence-base cue integration for visual place recognition[END_REF][START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. In particular, the objectives of this thesis are itemized in the following points:

• The model must provide mobile robotic systems an ability to determine the current location based on semantic information.

• Ideally, the performance of the system should be directly proportional to the recognition accuracy, i.e. this system must be able to provide an accurate classification process.

• Since most of the current approaches are very complex, the designed system should simplify the overall classification process.

• The system should also demonstrate that Deep Belief Networks (DBNs) coupled with tiny images followed by a simple classifier, can be used as an alternative approach to achieve vision-based place recognition for autonomous agents.

The main objective of this work is thus to define a feasible simple algorithm for scalable semantic place recognition. The first two goals have already been achieved in most of the current approaches such as [START_REF] Pronobis | Confidence-base cue integration for visual place recognition[END_REF][START_REF] Ullah | Towards robust place recognition for robot localization[END_REF][START_REF] Wu | Centrist: A visual descriptor for scene categorization[END_REF] but irrespective to the complexity of the whole process. We want to show here that these goals can be achieved using DBNs coupled with tiny images, that would facilitate the classification process.

Thesis organization

The rest of the thesis is organized as follows. In chapter 2, we first introduce the problem of SPR in detail and then present background information about the existing SPR approaches. Energy-based models, such as Boltzmann Machines (BMs), RBMs, and DBNs, are also described in this chapter. The chapter also presents the Contrastive Divergence (CD) learning algorithm for training RBM models. Then, it presents a theoretical background for SVM and softmax classifiers. Finally, it concludes towards the choices of the proposed model for a SPR task.

In chapter 3, using two standard databases of natural images, we experimentally investigate several parameters and factors that play important roles in having an optimal generative model. We also study the role of normalization on the selection of spatial ferquencies in the initial image set. The chapter concludes that DBNs can capture a set of high-level interesting features, and thus their use in image coding could simplify the problem of SPR.

In chapter 4, we describe the different phases of the model including, image preprocessing, image coding, and image classification, are explained. Then, we study what kind of features are extracted from datasets that are directly used as the input of the network. To do that we reduce the images to very small images ("tiny" images).

We show that the loss of information is limited and that such tiny images can be used for SPR. We also study the effect of the normalization of the images on the extracted features to conclude that normalization extracts higher semantic level features than whitening.

In chapter 5, we use the COLD database of robot localization to present the final performances of the proposed model. Features extracted by training two RBM layers are then used to create a new representation of the initial data that is used as input to the classification. Several classification results using a linear and a nonlinear classifiers are presented.

In chapter 6, we present our conclusions and suggestions for future research. A number of directions for future development of a SPR using DBNs are given. Finally, several proofs are presented in the appendices.

Chapter 2

Background and related work

Introduction to semantic place recognition

The first part of the present chapter introduces the problem of semantic place recognition (SPR) for autonomous robotic systems in more details and the tracks followed to solve it. The SPR problem refers to distinguishing differences between different environmental locations (e.g. distinguishing a kitchen from an office). Usually, coding is the first step before recognizing the robot place. Thus, this chapter provides a detailed discussion of coding and learning methods that have been used to achieve SPR. The coding methods can be classified into object-based and view-based methods [Torralba et al., 2003a]. Object-based recognition methods are used to identify a large number of objects as an information to recognize the robot place, while view-based recognition approaches are used to compute directly a set of signatures or features, that exploit visual context, without having to identify specific regions or objects. These features can be used to generate a new representation of the initial data and then allow performing classification in the feature space. According to [START_REF] Hsu | Effects of generative and discriminative learning on use of category variability[END_REF], learning methods can also be categorized into generative and discriminative approaches. Generative approaches are used within the framework of naive Bayes classifier (NBC) and

Bayesian filtering [START_REF] Torralba | Context-based vision system for place and object recognition[END_REF][START_REF] Wu | Centrist: A visual descriptor for scene categorization[END_REF] to learn a model fitting the original data. While discriminative approaches are used to directly discriminate data within the framework of Neural Networks (NNs) and support vector machines (SVMs) [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. A detailed description of these methods will be presented later in this chapter. In general, knowing "where am I?" is a challenging question for mobile robotic platforms. Different researches have answered this question either by the use of metric localization or by the use of topological localization (mapping). Metric localization is the ability of a mobile robot to determine its position in a common coordinate frame, while topological localization is the ability for a mobile robot to produce a map of its environment.

For simple environments, it is possible to provide a map to the robot, for instance from building plans. However, these plans are not always accurate and do not consider the various objects inside each building which can impede the progress of the robot. Moreover, these plans are not always available (consider for example robots that must operate after a natural disaster). It is therefore necessary for the robot to map its environment while it explores. This problem is known as Simultaneous Localization and Mapping (SLAM). In fact, this problem is difficult because the construction of a map requires locating the different objects. However, the authors in [START_REF] Thrun | Is robotics going statistics? the field of probabilistic robotics[END_REF][START_REF] Thrun | Probabilistic Robotics (Intelligent Robotics and Autonomous Agents)[END_REF] have proposed several probabilistic approaches for this problem. They are based on statistical models of sensors. Thus, in a navigation task, instead of giving a single estimation of the robot location, they proposed to use probabilistic algorithms which are based on the probability distribution of all locations. However, the ability for a mobile robot to determine the nature of its environment (the ability to distinguish different rooms using semantic cues) remains a challenging task in these approaches. This task is known as semantic place recognition.

The semantic category of a place gives priors on objects and defines what to do;

for instance, the probability to find a television is higher in the living room than in the bathroom. So, if we first predict the robot place, then it will be easier to use this place to recognize local objects. Besides, SPR build an absolute reference to the robot location, providing a simple solution for problems in which the localization cannot be deduced from neighboring locations, such as in the kidnapped robot or the loop closure problems. Furthermore, semantic place recognition will facilitate the humanrobot interaction (with a topological map), e.g. the human can give the following command to the robot "go to the bedroom". However, as mentioned earlier, performing semantic place recognition seems to be a challenging task for the following reasons:

• Firstly, the appearance of a room is not always stable due to the dynamical vari- • Finally, the image annotation is usually based on the position of the robot during acquisition rather than the contents of the images. As a result, the labels might not be consistent with the visual information when the robot was positioned in a transition region between two rooms. This difficulty is illustrated in figure 2.3, which shows sample images of the interior of each room, captured with both perspective and omni-directional cameras1 [START_REF] Ullah | The cold database[END_REF],. The corresponding images are acquired using the omni-directional camera [START_REF] Ullah | The cold database[END_REF].

In this work, we need to design an approach to perform the classification process taking into account illumination variations. We want to design a supervised machine learning approach by letting the closed-world assumption hold true, that is, the robot does not have to decide what are the places or even the extent of these different places.

The robot indeed needs to recognize its current location based on semantic categories which are defined by the human. A detailed description of this novel approach will be drawn in Chapter 4 after having a thorough review of the relevant literature. Several recent methods have been used to address the problem of robot localization based on semantic information (for instance see [START_REF] Dubois | Visual place recognition using bayesian filtering with markov chains[END_REF][START_REF] Guillaume | Temporal bag-of-wordsa generative model for visual place recognition using temporal integration[END_REF]Torralba et al., 2003a;[START_REF] Ullah | Towards robust place recognition for robot localization[END_REF][START_REF] Wu | Visual place categorization: Problem, dataset, and algorithm[END_REF]). These approaches and others are illustrated in the next sections.

Current approaches for semantic place recognition

Although most of the proposed approaches to the problem of robot localization have given rise to SLAM techniques, some other approaches have addressed this problem as a SPR task. This task usually requires first to produce an appropriate code for the initial data and then use this code to learn the robot places. In the following sections we make a survey of the different coding and learning approaches that can be used in the context of SPR.

Coding methods

Most of the researchers have shown that before preforming a SPR task, it is necessary to create an appropriate code of the initial data [START_REF] Oliva | Building the gist of a scene: the role of global image features in recognition[END_REF][START_REF] Torralba | Context-based vision system for place and object recognition[END_REF][START_REF] Ullah | Towards robust place recognition for robot localization[END_REF][START_REF] Wu | Visual place categorization: Problem, dataset, and algorithm[END_REF]. To achieve that, different coding methods have already been proposed within the framework of object-based and viewbased methods. We introduce both approaches in order to understand the differences between them and we also describe the state-of-the-art of these approaches in the context of place recognition.

Object-based semantic place recognition methods

Object-based place recognition can be used for mobile robotics, to determine the robot place. Traditionally, this kind of approach is first based on learning and detecting a set of interesting objects in the images and then use them to determine the robot location.

In other words, object-based methods seek to learn the objects in the scene to perceive and understand the environment of the robot [START_REF] Chang | Object-based place recognition and loop closing with jigsaw puzzle image segmentation algorithm[END_REF][START_REF] Chang | Object-based place recognition and scene change detection for perimeter patrol[END_REF].

Recently, visual object recognition has been widely investigated, with the development of different methods. Most of these approaches have first focused on extracting the local image features at a variety of positions and scales, and then comparing the extracted features of an object with a set of well-known objects. This allows classifying each image patch independently from the others (see [START_REF] Murase | Visual learning and recognition of 3-d objects from appearance[END_REF][START_REF] Papageorgiou | A trainable system for object detection[END_REF][START_REF] Schneiderman | A statistical model for 3d object detection applied to faces and cars[END_REF][START_REF] Viola | Robust real-time object detection[END_REF]).

Several other approaches based on image segmentation have investigated both problems of object and place recognition. In these approaches, the authors first segment the image into objects, using a segmentation algorithm, and then use them to recognize the robot location. Among of these approaches, some authors [START_REF] Chang | Object-based place recognition and loop closing with jigsaw puzzle image segmentation algorithm[END_REF] propose to use an image segmentation algorithm, called "jigsaw puzzle", to segment the input scene image into regions that may correspond to objects or parts of objects. Based on these image regions, they detect a set of salient objects to represent a place and the SIFT descriptors contained in these salient objects are kept in the database. A similar approach, in [START_REF] Chang | Object-based place recognition and scene change detection for perimeter patrol[END_REF], proposes to use a more sophisticated segmentation algorithm. This algorithm first segments the salient objects appearing in the scene using "Gestalt laws" to detect the boundaries of the major object classes like vehicles, buildings, pedestrians, etc.1 . They then represent each prominent object with a list of SIFT descriptors. Both approaches recognize the place by recalling if they have seen some of the salient objects appearing in the scene before. However, although it is possible to use object-based place recognition approaches, Fergus stated that successful approaches to object recognition must address a variety of problems [START_REF] Fergus | Visual object category recognition[END_REF]:

• Changes of aspect. Different views of an object can be very different, as shown in figure 2.4 (a).

• Changes of viewpoint. Objects can also be subject to in-plane transformations (translation, rotation, scaling, skews) and out-of-plane transformations (foreshortenings) that change their appearance. However, some viewpoints may be more likely than others (i.e. motorbikes are rarely vertically oriented) and this prior knowledge may be exploited. • Background clutter. In the majority of images it is rare for the object to be cleanly segmented from the background. More typically, the background of the image contains many other objects (other than the one of interest), which distract from the object itself. The images in figures 2.4 (a and b) have cluttered backgrounds.

• Occlusion. Some parts of the object may be obscured by another object, as illustrated by the monkeys in figure 2.4 (c). Additionally, as the aspect changes, one part of the object may hide another. This is known as self-occlusion.

• Intra-class variation. As in the car example of figure 2.5, the category itself can have a large degree of visual variability. The variability can take various forms: in the geometry, appearance, texture and so on. Also, one instance of an object may have features which are missing on another (e.g. the radiator grille on the cars of figure 2.5).

Globally, the methods based on objects require complex models and heavy learning procedures. Furthermore, the use of object recognition in classification is not trivial.

Therefore, recognizing the objects before recognizing the place itself seems to be a difficult task. In contrast, recognizing the room would provide strong priors, simplifying the process of object recognition, which is not possible in object-based methods but possible in view-based methods. [START_REF] Fergus | Visual object category recognition[END_REF].

View-based semantic place recognition methods

View-based methods are used to predict the robot place from images of the scene. They seem to be a more powerful technique than object-based methods for both place and object recognition problems [START_REF] Torralba | Context-based vision system for place and object recognition[END_REF]. Vision-based place recognition have two major advantages:

• Firstly, vision can guide the action selection by the system. It can determine what are the most significant actions (features) in the place so that have to be extracted.

Generally, the best methods reach a high level classification rate, sometimes exceeding 90%. However, most of these methods do not test the classifica- [START_REF] Fergus | Visual object category recognition[END_REF].

tion robustness with respect to the illumination conditions. Some others do so, for instance, the authors in [START_REF] Pronobis | Confidence-base cue integration for visual place recognition[END_REF] proposed to use the IDOL (Image Database for rObot Localization) database which allows this kind of tests. More information about this database can be found in [Luo et al., 2006]. The recognition rate reaches 95% when the illumination conditions are the same for learning and recognition, but drop to about 75% when it is not the case. The authors in [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]] also proposed to use the COLD database to test more precisely the robustness to dynamic changes and environmental variabilities. They proposed to use the following protocol: training and testing were always done on different sequences acquired in the same laboratory. They trained on one illumination condition, and tested on sequences acquired under various illumination conditions, and after some time. With these experiments they were able to address at the same time the robustness with respect to dynamic and geographical changes.

• Secondly, several works (like [START_REF] Torralba | Contextual priming for object detection[END_REF][START_REF] Torralba | Context-based vision system for place and object recognition[END_REF]) have shown that recognizing a place would facilitate the recognition of its local objects. For instance, the recognition of an object like a coffee machine would be easier if we first know that the robot is located in the cafeteria and own the detailed local properties of this room, like its materials components, its typical shape, ect. This is called contextual priming: being in a place (e.g. a kitchen), you can expect to find specific objects like pan, but not others like television.

Besides, semantic cues (color, shape, and texture) in the retinal image produced by an object provide enough information to unambiguously determine the object category [Torralba et al., 2003a].

The place usually appears as a two-dimensional image, and each image is represented by a raster-scan of pixels, i.e. a vector of intensity values. More formally, view-based systems exploit visual context (contextual information) to have a lowdimensional representation of the image (for instance the Generalized Search Tree "GiST" of the scene) [START_REF] Oliva | Modeling the shape of the scene: A holistic representation of the spatial envelope[END_REF]. Such a representation can be simply computed without the necessity to identify specific regions or objects within the scene. Having identified the overall type of the scene, one can then proceed to identify specific objects within the scene.

Recently, significant works have been developed for place recognition based on visual descriptors. These descriptors are used to extract signatures, by extracting the regions of interest (ROI), from the images. These signatures are used recognize the robot place. They consist in a constellation of descriptors, computed over different kinds of local or global covariant regions [START_REF] Ramisa | Robust vision-based robot localization using combinations of local feature region detectors[END_REF]. In other words, these signatures are a vocabulary computed either using global descriptors Generalized Search Tree (GiST) [START_REF] Oliva | Modeling the shape of the scene: A holistic representation of the spatial envelope[END_REF] and CENsus TRansform hISTogram (CENTRIST) [START_REF] Wu | Visual place categorization: Problem, dataset, and algorithm[END_REF] or using local descriptors Speeded Up Robust Features (SURF) [START_REF] Bay | Surf: Speeded up robust features[END_REF], and Scale Invariant Feature Transform (SIFT) [START_REF] Lowe | Object recognition from local scale-invariant features[END_REF][START_REF] Lowe | Distinctive image features from scale-invariant keypoints[END_REF] .

Local descriptors are used to extract the most interesting pixels in the image in order to compute its signature. In particular, SIFT descriptors are used to detect and describe local features in images, like elements of scenery, objects, people, etc. [START_REF] Lowe | Object recognition from local scale-invariant features[END_REF][START_REF] Lowe | Distinctive image features from scale-invariant keypoints[END_REF]. They are digital information derived from local analysis of an image and they characterize the visual content of the image as independently as possible from the rotation, translation, and scale invariance. SURF is another robust image local detector and descriptor, first introduced by [START_REF] Bay | Surf: Speeded up robust features[END_REF]. It is partly inspired by the SIFT descriptors, where the extracted features based on the sum of two-dimensional Haar wavelet responses with the aid of integral images to reduce the computation load.

Global descriptors have also been used to detect the features (for instance see [Torralba et al., 2003a;[START_REF] Wu | Visual place categorization: Problem, dataset, and algorithm[END_REF]). These descriptors use the whole image pixels to compute the signature regardless of "interesting points". Similarly to local descriptors, global descriptors capture the visual context of the image. In particular, GiST descriptor was introduced in the context of scene recognition by [START_REF] Oliva | Modeling the shape of the scene: A holistic representation of the spatial envelope[END_REF]. It is a vector of principal components of outputs of a Gabor-like filter bank applied to the image. This descriptor describes the spatial layout by capturing features such as naturalness, openness, expansion, depth, roughness, complexity, ruggedness and symmetry [START_REF] Coelho | Evaluation of global descriptors for multimedia retrieval in medical applications[END_REF]. CENTRIST is another global descriptor presented by [START_REF] Wu | Visual place categorization: Problem, dataset, and algorithm[END_REF]. It aims at capturing the local intensity pattern in the image, based on the Census Transform (CT) of the edges [START_REF] Zabih | Non-parametric local transforms for computing visual correspondence[END_REF] 1 . Note that the CT is equivalent to the local binary pattern code (LBP 8,1 ) [START_REF] Ojala | Multiresolution gray-scale and rotation invariant texture classification with local binary patterns[END_REF]. It has been shown that this descriptor is robust to illumination changes and other minor variations (e.g. moving persons, moved objects in an image, etc.) because the transformation in the CT is robust to these changes [START_REF] Wu | Centrist: A visual descriptor for scene categorization[END_REF]. This point is interesting, because the robot can recognize its current location under different illumination conditions, i.e. the place recognition can be achieved insensitive to the lighting conditions. Several vision-based place recognition approaches have already been proposed based on these coding methods. For instance, the authors in [START_REF] Oliva | Building the gist of a scene: the role of global image features in recognition[END_REF][START_REF] Torralba | Context-based vision system for place and object recognition[END_REF] used the GiST descriptor, while the authors in [START_REF] Andreasson | Localization for mobile robots using panoramic vision, local features and particle filter[END_REF][START_REF] Se | Vision-based mobile robot localization and mapping using scale-invariant features[END_REF][START_REF] Ullah | Towards robust place recognition for robot localization[END_REF] used the SIFT descriptor, and finally the authors in [START_REF] Wu | Centrist: A visual descriptor for scene categorization[END_REF]] used the CENTRIST one. These representations usually give signatures that are continuous vectors which are not suitable to compute probabilities and they are not constant in size (i.e. the number of interest points varies from one image to another). To reduce the size of these representations, most of the authors use Bag-of-Words (BoWs) approaches, which consider only a small set of interest points in the image [START_REF] Filliat | Interactive learning of visual topological navigation[END_REF][START_REF] Gokalp | Scene classification using bag-of-regions representations[END_REF][START_REF] Lazebnik | Beyond bags of features: Spatial pyramid matching for recognizing natural scene categories[END_REF][START_REF] Wu | Visual place categorization: Problem, dataset, and algorithm[END_REF]. This step is usually followed by a vector quantization process, such that the image can be represented as an histogram.

Several other approaches have been suggested to extract color histograms using panoramic images [START_REF] Blaer | Topological mobile robot localization using fast vision techniques[END_REF][START_REF] Ulrich | Appearance-based place recognition for topological localization[END_REF], or extract the Fourier coefficients of low frequency image components [START_REF] Menegatti | Image-based monte-carlo localisation with omnidirectional images[END_REF],

or use eigen-space representation of images [START_REF] Gaspar | Vision-based navigation and environmental representations with an omni-directional camera[END_REF] to recognize the different places. Some other works [START_REF] Pronobis | Indoor place recognition using support vector machines[END_REF][START_REF] Pronobis | A discriminative approach to robust visual place recognition[END_REF]] use composed receptive field histograms which were introduced by [START_REF] Linde | Object recognition using composed receptive field histograms of higher dimensionality[END_REF].

These histograms have shown to be able to cope with small illumination and pose variations.

Generally, it is difficult to conclude whether global or local descriptors are more beneficial. However, global encodings seem to have good performance in terms of classification.

After image coding, the next step is to perform the recognition process itself (learning the robot places) using classification methods. In the next section we will introduce the existing classification methods that can be used to recognize the robot place.

Classification methods

Before introducing the main concepts of the existing classification methods and their use in the context of SPR, it is important to note that we are interested in the recognition of instances, as presented in [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF], and not in the recognition of concepts "categorization" which has also been investigated in [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. In categorization, observers make decisions about whether distinct objects belong to the same class or not (i.e. they measure the similarity between objects or between groups of objects) (e.g. discriminate the offices in different buildings). On the contrary in recognition or classification, observers judge whether each test object exactly matches a study object or not [START_REF] Nosofsky | Activation in the neural network responsible for categorization and recognition reects parameter changes[END_REF]] (e.g. distinguish between office and corridor). Many terms related to the word "recognition" are used in a somewhat loose manner in the literature. So, to avoid confusion between these terms, here are some definitions for them:

• Category (class): set of entities grouped together under one or more common characteristics. For example, the books are categorized into beginner and advanced.

• Instance recognition (identification): the process by which an entity is identified in an image, with respect to the objects, the viewing angle, brightness, etc.

Concerning the scene, the task is to recognize the same scene from a different angle.

• Categorization (category recognition): the process of deciding what class the entity belongs to, out of many possible classes. In the literature, this term is sometimes used in the sense of classification. However, in this work we assume that the classification process which associates each object to a category is different from the categorization process which creates a category in order to associate an object to it.

• Classification: the process by which an object is recognized as belonging to a class or category. For instance, the books in the library are classified according to the subject.

• Localization (detection): the process of specifying the location within the image of all instances of an object.

• Recognition: this term is used generically to refer to the problem as a whole (i.e. any of the set of classification, identification or localization.

Therefore, in this work we use the terms "recognition" and "classification" to speak about the process of "instance recognition" or "identification". Instance recognition usually involves linking each new instance to a particular class. Of course, it could be possible to use rules characterizing a room. However, they are difficult to find for the human. This is why it seems to be more appropriate to use numerical methods to solve this machine learning (ML) problem.

The goals of machine learning are first to develop algorithms that could learn (i.e. re-cognize patterns) from an initial set of known data and then make accurate predictions for previously unseen data. Methods derived from machine learning approaches have been applied to various questions like autonomous car driving, optical character recognition, face detection, and speech recognition, etc. [START_REF] Abdel-Rahman | Deep belief networks using discriminative features for phone recognition[END_REF]Hinton et al., 2006;[START_REF] Sarikaya | Deep belief nets for natural language call-routing[END_REF].

ML is a branch of Artificial Intelligence (AI) and it focuses on the statistical nature of learning. Arthur Samuel has defined ML as a field of study that gives computers the ability to learn without being explicitly programmed [START_REF] Samuel | Some studies in machine learning using the game of checkers[END_REF]. Thomas Mitchell has also defined ML saying: "A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E" [START_REF] Mitchell | Machine Learning[END_REF]. The main goal of ML is to develop algorithms which learn directly from the empirical data by exploiting the statistical relationships present in the image. These algorithms can be organized into supervised, unsupervised, semi-supervised, or reinforcement learning based on the desired outcome of the algorithm. We provide here some definitions for these algorithms, in order to understand the differences between them.

• Supervised learning algorithms generate a function that labels the inputs to desired output, where the labeling "right answers" are provided by human experts.

The learning in this case is thus performed with the presence of an "expert", teacher, or knowledge of output. Some examples of supervised learning algorithms are: Neural Network [START_REF] Rumelhart | Parallel Distributed Processing: Explorations in the Microstructure of Cognition[END_REF], Support Vector Machines [START_REF] Vapnik | Statistical Learning Theory[END_REF], Decision Trees [START_REF] Quinlan | Induction of decision trees[END_REF], Bayesian Classifiers [START_REF] Pazzani | On the optimality of the simple bayesian classifier under zero-one loss[END_REF], etc.

• Unsupervised learning algorithms model a set of inputs by themselves, so that the learning procedure does not include any knowledge about output class or value (data is unlabeled or value is unknown). Some self-guided learning algorithms are: k-Nearest Neighbor algorithm (k-NN) [START_REF] Beyer | When is "nearest neighbor" meaningful?[END_REF], genetic algorithms [Deb et al., 1999], clustering approaches [START_REF] Steinbach | A comparison of document clustering techniques[END_REF], etc.

• Semi-supervised learning algorithms combine both labeled and unlabeled examples for training to generate an appropriate function. Typically, semi-supervised learning techniques learn from a combination of a limited set of labeled data with a large amount of unlabeled data which can be inexpensive to generate. For instance, semi-supervised and transductive SVM [START_REF] Bennett | Semi-supervised support vector machines[END_REF][START_REF] Joachims | Transductive inference for text classification using support vector machines[END_REF] and co-training [START_REF] Blum | Combining labeled and unlabeled data with cotraining[END_REF] are two examples of semi-supervised learning algorithms.

• Reinforcement learning algorithms study how artificial systems and animals can learn to improve and optimize their actions in a complex environment. The most reinforcement learning algorithms are: Monte Carlo Methods (MCMs) [START_REF] Doucet | On sequential simulation-based methods for bayesian filtering[END_REF], Temporal Difference Methods (TDMs) like Q-learning [START_REF] Christopher | Learning from delayed rewards[END_REF], and Direct Policy Search (DPS) [START_REF] Peters | Reinforcement learning for humanoid robotics[END_REF].

The problem of semantic place recognition can therefore be solved using machine learning methods (for instance see the discriminative approaches based on SVMs in [START_REF] Pronobis | Confidence-base cue integration for visual place recognition[END_REF][START_REF] Ullah | Towards robust place recognition for robot localization[END_REF] or see the generative approaches based on Bayesian filtering techniques in [START_REF] Torralba | Context-based vision system for place and object recognition[END_REF][START_REF] Wu | Centrist: A visual descriptor for scene categorization[END_REF]). In addition to that, contrarily to the classical localization and mapping works, this work addresses the problem of robot localization as a supervised machine learning problem.

To introduce the notations of supervised discriminative approaches, let us consider an example of supervised learning which is represented by a pair (y, c), where y ∈ Y is the representation of the place in a space Y of dimension t and c ∈ C is the class membership of y from a finite set of C classes. A training set S = {(y 1 , c 1 ), . . . , (y N , c N )} consisting in N examples can then be generated. The idea is to discriminate between N different classes in the representation data space Y , i.e. find and learn the "decision frontier" that will assign each class to each point of the data space. To achieve that, generative or discriminative machine learning methods can be used. Discriminative approaches aim at directly finding the best way to separate the classes (they directly search for the decision frontier), while the generative ones aim at first finding the optimal model that explains and fits the original data and then, using the generated model, find the frontier between the data. In the next sections, we will explain in more detail how to use both approaches in the context of semantic place recognition.

Generative approaches

Generative approaches can be used to compute the likelihood of an observation given a certain place within the framework of Bayesian filtering. These approaches are used in machine learning for data modeling using the probability density function (PDF) as shown in figure 2.7 (left) and through the use of Bayes' rule. They describe the data using structured probabilistic models.

The problem of semantic place recognition can then be expressed as a conditional probability problem using Bayes theorem as follows: P(x t = c|y t ). More precisely, we have a set of observations, y t : y 1 , . . . , y t , from which we need to deduce the place or class "c" the robot is in.

Naive Bayes classifiers

Naive Bayes Classifiers (NBCs) are probabilistic methods based on Bayes theorem, under the assumption of the independency between the model features. NBCs assume that the features of one class are statistically independent from the features of other classes. This can be explained mathematically using Bayes theorem as follows:

P(x t = c|y t ) = P(x t = c)P(y t |x t = c) P(y t ) (2.1)
where

• P(x t ) represents the prior probabilities assigned to each class independently from the observations.

• P(y t |x t ) is the probability density of an observation y t given a certain place x t . It represents the probability of observing different data y t for each class belongs to x t . Note that y t is the observation sequence: y 1:t .

• P(y t ) is the marginal density (or the probability density) of the data y t , i.e. it represents the probability of observing the different examples. However, this denominator has no influence on the classification process. Because it does not depend on c and the values of the features y t are given, so that it is effectively constant and it plays a normalization role so that ∑ i P(c i |y t ) = 1.

• P(x t = c|y t ) is the posterior probability, i.e. the conditional probability of x t given y t . In other words, the probability to be in a given place x t according to a given observation y t .

Bayes rule can therefore express the posterior probability P(x t = c|y t ) in terms of prior probability P(x t ) and conditional probability density P(y t |x t ). Once the model is learned, the distribution P(X|Y ) models the phenomena of the original training data and allows generating new samples. That's why learning in this model is called generative.

The most important characteristic of NBC is that the data attributes are assumed to be independent, i.e. P(y t ) = ∏ k i=1 P(y i ) , and thus this term has no influence on equation 2.1 as earlier said. However, the question is how to compute the likelihood of an observation the probability density term P(y t |x t ) using Bayes theorem. There are a couple of solutions to this problem: one is to use the Maximum Likelihood (ML) technique; another one is to use Maximum A Posterior (MAP) technique, which learns the data maximizing the likelihood as follows:

x MAP = arg max t∈T P(x t = c|y t ) = arg max t∈T P(x t )P(y t |x t = c) P(y t ) = arg max t∈T P(x t )P(y t |x t = c) (2.2)
where T is a set of observations. Once again, we dropped the factor p(y t ) because the probability of the data is constant, based on the fact that independent features are assumed in NBC. Besides, this gives the rule of NBC and equation 2.2 can be re-written as follows:

x MAP = arg max

t∈T P(x t ) ∏ i P(y i |x t = c) (2.3)
Hence, this equation computes the individual measurements which are independent given the robot position. Finally, if we assume that all the classes are equally probable, the previous equation can be re-written as follows:

x MAP = arg max t∈T P(y|x t = c) (2.4)
NBC therefore provides a decision theory for data classification. Among those approaches, recent researches have been published in [START_REF] Dubois | Visual place recognition using bayesian filtering with markov chains[END_REF]. In this work, the authors propose to use NBCs and temporal integration that combines successive observations. This model obtained interesting classification results on the COLD database. The overall performance is very close to the state-of-theart results [START_REF] Guillaume | Temporal bag-of-wordsa generative model for visual place recognition using temporal integration[END_REF][START_REF] Ullah | Towards robust place recognition for robot localization[END_REF].

Bayesian filtering techniques

Another probabilistic generative approach based on Bayesian filtering techniques has been developed to achieve visual place recognition [START_REF] Torralba | Context-based vision system for place and object recognition[END_REF][START_REF] Wu | Visual place categorization: Problem, dataset, and algorithm[END_REF]. These techniques provide a powerful statistical tool to filter the classification results. More formally, Bayes filters address the problem of recognizing the place, c, the robot is in, using sensory information. Given a stream of observations y t and controls u t , which describe the dynamics of the system, Bayes filter recursively computes the posterior distribution according to the following equation:

Bel(x t ) = P(x t = c|u 1 , y 2 , . . . , u t-1 , y t ) (2.5)
However, Bayes filters make the assumption that the dynamic system is modeled as Markov Chain, i.e. as shown in figure 2.6, the observation y t and the control measurement u t are conditionally independent from the previous measurements given the state x t . More precisely, this probabilistic approach is based on two assumptions:

1. The Markov assumption of the state evolution says that the knowledge of the state at time t depends only on the previous state at time t -1

P(x t |x 0:t-1 , y 1:t-1 , u 1:t ) = P(x t |x t-1 , u t ) (2.6)
This probability distribution is called the transition model and represents the changing state of the world based on the actions of the robot. It also depends on the dynamics of the system.

2.

The assumption of completeness says that the current state completely explains the current observation: P(y t |x 0:t , y 1:t-1 , u 1:t ) = P(y t |x t ). Moreover, this probability distribution is often independent of t: P(y t |x t ) = P(y|x). This is known as sensors model although the model response depends on the state of the world.

Based on these assumptions, the posterior distribution of equation 2.5 can be recomputed efficiently using the following update rule:

Bel(x t ) = P(x t = c|u 1 , y 2 , . . . , u t-1 , y t ) ∼ P(y t |x t = c) ∑ have been proposed to solve this problem: the first one, proposed in [START_REF] Torralba | Context-based vision system for place and object recognition[END_REF], omits the quantization step and models the likelihood as a Gaussian Mixture Model (GMM); another possible solution is proposed in [START_REF] Wu | Centrist: A visual descriptor for scene categorization[END_REF], where the authors discretized the likelihood using BoW methods.

The second problem is how to compute the place transition distribution, P(x t |x t-1 ).

As illustrated in [START_REF] Wu | Visual place categorization: Problem, dataset, and algorithm[END_REF], this distribution can be defined using a transition matrix as: P(x t |x t-1 ) = p e if x t equals x t-1 , where the value of p e can be in the interval from 0.9 to 0.99. The rest of the probability mass is shared uniformly among all other transitions. A frame t is then classified as the category which index is arg max P(x t |y t ) in the Bayesian filtering framework. Markov-Chain Monte Carlo (MCMC) approaches can also be used to determine the robot location given a map of its environment and using Markov localization. Although these methods have been discovered since 1960's by [START_REF] Handschin | Monte carlo techniques for prediction and filtering of non-linear stochastic processes[END_REF][START_REF] Handschin | Monte carlo techniques to estimate the conditional expectation in multi-stage non-linear filtering[END_REF], they became increasingly popular in robotics over the last few years. This is due to the fact that they need powerful computer machines. A detailed discussion around Monte Carlo methods can be found in [START_REF] Doucet | On sequential simulation-based methods for bayesian filtering[END_REF].

MCMC methods were therefore used in the field of mobile robot localization. For example, in [START_REF] Dellaert | Monte carlo localization for mobile robots[END_REF], the authors proposed a Monte Carlo Localization (MCL) method to determine the robot location. This method uses uncertainty representation, i.e. it represents the PDF by maintaining a set of samples that are randomly drawn from it. This step is followed by the use of Monte Carlo methods to update this density representation over time. Another probabilistic localization algorithm is proposed in [START_REF] Thrun | Robust monte carlo localization for mobile robots[END_REF], where the authors develop an algorithm called Mixture-MCL, which integrates two complementary ways to generate samples in the estimation. To apply this algorithm for mobile robots localization, a kernel density tree is learned that permits fast sampling. Another work has been developed in [Torralba et al., 2003a], where the authors use Hidden Markov Model (HMM) to represent each robot place as a hidden state of the HMM and the feature vector stands for the observation. The recognition is therefore achieved using standard Bayesian techniques. Furthermore, another approach proposed in [START_REF] Torralba | Context-based vision system for place and object recognition[END_REF] which is the first works that addressed the problem of semantic place recognition and categorization. This approach uses the global descriptor GIST together with a temporal integration. The temporal integration is based on a HMM to mix the information over time and space. This system was tested in recognition and categorization of instances, on indoor and outdoor places. However, the estimation of the transition between places is not straightforward. Besides, the overall algorithm needs high computational cost to perform the whole classification process. The authors in [START_REF] Wu | Visual place categorization: Problem, dataset, and algorithm[END_REF]] also proposed to use another global descriptor "CENTRIST" for feature extraction. This step is followed by the use of K-means clustering algorithm, NBC and BoW methods to perform the classification process. The authors also used the same Bayesian filtering to improve the results. Besides, the overall algorithm is very complex.

Generative Model Discriminative Model If the observed data are truly sampled from the generative model, then fitting the generative model parameters to maximize the data likelihood is a common method.

However, since most statistical models are only approximations to the true distribution, then it can be argued that the approximation makes more assumptions than are necessary to solve the problem by hand. In such cases, it can be more accurate to model the conditional density functions directly using a discriminative model, although each application-specific details will ultimately dictate which approach is most suitable.

Discriminative approaches

Although it was possible to use generative approaches using Bayes rules to compute the posterior probability P(x t = c|y t ), there is a direct way to estimate this probability using discriminative approaches. Discriminative approaches can be used to compute the probability to be in a given place, c, according to the current observation, y t , as P(x t = c|y t ). More precisely, these approaches directly learn the decision frontier in Most of the discriminative approaches have focused on NNs [Rumelhart and Mc-Clelland, 1986] and SVMs models [START_REF] Vapnik | Statistical Learning Theory[END_REF]. These two approaches are based on a scalar product. More formally, NNs are based on the scalar product in the data representation space, x i , i.e. a measure of the projection of one vector onto another. To illustrate that, let's consider the example shown in figure 2.8: The unit v i has an activation function, a i , given by the following equation:

a i = n ∑ j=1 w i j x j =< w, x > (2.8)
where this activation function can be represented as a scalar product of the input vector, x j , and the weights, w i j . Besides, this function defines the decision frontier to separate the data into different classes. Similarly, SVMs provide an efficient way to map the data into a high-dimensional feature space, i.e. x → ϕ(x), using the following kernel function:

K(w, x) =< ϕ(w)ϕ(x) > (2.9)
NNs and SVMs approaches can therefore be used to predict the current robot place. In order to illustrate these models in a more precise way, let's explain each of them separately.

Neural networks classifiers

Conventional feed-forward networks are non-recurrent neural networks in which the connections between the layers are not directed cycles. As shown in figure 2.9, the data are feed-forward from the input layer, through the hidden layer(s) and then to the output layer. This kind of network is called Multi-Layer Perceptrons (MLPs). Usually, the training process of MLPs for pattern classification problems includes two different tasks, the first one is to choose an appropriate network for the problem, and the second is the adjustment of the network connection weights. If the problem is linearly separable, then it is easy to find the appropriate decision frontier. Otherwise, this task seems to be a big challenge since we don't know how many hidden units or even the number of hidden layers are required to compute the optimal decision frontier.

Finding the appropriate network indeed varies from one problem to another and can be achieved by preliminary trials specific of the problem at hand. For the learning of weights, Rumelhart et al. [Rumelhart et al., 1986] introduced back-propagation as an alternative learning algorithm to Boltzmann Machine for multi-layer neural networks training. Back-propagation, or propagation of error, is a supervised learning mech-anism to teach neural networks to perform a given task for networks which have no feedback.

Figure 2.9: Partly connected feed-forward neural network with one hidden layer and one output layer. Energies can be contributed by output variables in both hidden and output layers, where the number of output variables need not correspond to the number of input variables.

The outputs of MLPs, which are based on the weights w, are usually used to perform the classification process, i.e. we use the extracted weights features to separate the different classes within the framework of Bayesian theorem, P(x t = c|y t ; w). However, these output units do not sum to 1, i.e. ∑ i P(c i |y t ; w) = 1, and thus cannot be used directly to perform the classification process. To overcome this problem, one way is to use a softmax regression to transform these units into real probability values so that the summation of these values will be equal to 1 for a given observation y t . This transformation can then be achieved using the following softmax formula:

P(x t = c i |y t ; w) = e w T i y t ∑ k l=1 e w T l y t (2.10)
Note that a detailed description to softmax regression can be found in section 2.3.2.3.

NNs models can therefore be used to find the decision frontier which separates the data into different classes. However, Vapnik [START_REF] Vapnik | The nature of statistical learning theory[END_REF] has demonstrated that the decision frontier in NNs cannot be assumed to be the optimal one. This result has lead to the development of a new classification method, the Support Vector Machines.

Support vector machines approaches

Support Vector Machine (SVM) is a discriminative model able to construct a hyperplane or a set of hyperplanes in a high-dimensional space and can be used for further tasks such as classification. SVMs methods were first proposed by [START_REF] Vapnik | Statistical Learning Theory[END_REF] to find the decision rules based on the feature space to discriminate the different classes.

Contrarily to NNs, SVMs do not need to choose the number of hidden units or layers, but their feature space depends on the use of the different kernels (polynomial, linear, sigmoid, etc.).

SVM is a supervised statistical learning algorithm1 . It can be used to train the data and predict the patterns of the data to create a "decision-maker". Figure 2.10 illustrates the high-level view of how we perform these tasks using an SVM approach, where the input corresponds to the dataset and the output results correspond to the classification of the data which is used for testing. More precisely, using this algorithm we perform two different tasks:

• Learning: by training the input examples (data) using SVM-train function.

• Prediction: new examples are used for testing. Usually, if the problem task is to classify the observations in a set of finite labels, the task is said to be a classification task.

It has been shown that this approach has a good performance on character recognition, text classification (see for instance [START_REF] Joachims | Transductive inference for text classification using support vector machines[END_REF][START_REF] Leopold | Text categorization with support vector machines. how to represent texts in input space[END_REF]). Promising results are also reported for place recognition in [Pronobis et al.] using this approach. Moreover, SVMs approach has a major advantage over many other techniques, like Artificial Neural Networks (ANNs): it's solution is global and unique, and thus avoids local minima, (for further details, see for instance [START_REF] Bishop | Neural Networks for Pattern Recognition[END_REF]).

Another important characteristic in this approach is the ability to use different kernels, of different degrees, such as linear, polynomial, radial, and sigmoid. It means that it is possible to identify the appropriate kernel for a particular classification problem.

Data classification is a common task in machine learning. If the data is linearly separable, then a linear SVM would be sufficient to perform the classification process.

Otherwise, a nonlinear SVM is required. The only difference between the nonlinear SVM and their linear counterparts is the use of kernel function instead of the inner product. In the next sections, we introduce both linear and nonlinear SVMs.

Linear support vector machines

Linear SVM classifier is used to learn linear separators in a high dimensional space with a maximum margin as shown in figure 2.11. In particular, in the case of a linear classification, a data can be viewed as a n-dimensional vector, and the idea behind is to know whether we can separate such points with a (n -1)-dimensional hyperplane.

Usually, there are many hyperplanes that could separate the data. However, it is possible to find the optimal hyperplane which represents the largest separation, or margin, between the two classes. So we choose the hyperplane so that the distance from it to the nearest data point on each side is maximized. This is called maximum-margin hyperplane (MMH).

To better understand how linear SVMs classify the data, let us consider the following example shown in figure 2.12 (a). In this example there are two different classes of positive and negative nodes. So, the question is how could we separate (i.e. classify)

these data examples into two different regions. The results obtained using a linear SVM classifier, the black line perfectly separates positive and negative nodes.

It is obvious that the two different nodes shown in this figure are linearly separable. It is possible therefore to use a linear SVM to separate the two different categories, as shown in figure 2.12 (b). However, finding the optimal separation between these data examples is a challenging task. Therefore, we need to find the separator margin which

f ( x) ← ( ∑ s i w i s i • x + b) (2.11)
Non-Linear Support Vector Machines

In the former section, we described how to find the optimal separating hyperplane in the linearly separable case using a linear SVM. However, if the data is not linearly separable as shown in figures 2.13 (a) and 2.14 (left), then linear SVMs are not sufficient to classify the data into different regions. To illustrate that, let us consider the Exclusive OR (XOR) classification problem, it has 4 different samples, {(0, 0), (0, 1), (1, 0), (1, 1)}, located on the corners of a rectangle. Finding a decision frontier that separates these samples in a two-dimensional space seems to be impossible since the data is not linearly separable. However, if we add a new dimension, the problem becomes linearly separable and the samples can thus be separated by a hyperplane in the three dimensions space. This indicates that it is possible to transform non-linearly separable problems into linearly separable ones by projecting the data into a higher dimensional space, as illustrated in figure 2.14.

SVMs provide an easy and efficient way of doing this mapping to a higher dimensional space, which is referred to the use of the kernel function, and then they construct the decision frontier in that space. The linear SVM relies on a dot product between data point vectors, as illustrated in equation 2.11. However, the nonlinear SVM classifier relies on a dot product between feature vectors which will be illustrated mathematically later. It means that it is possible to increase the separability of the data R N by mapping it to a high-dimensional space H using a non-linear kernel basis function ϕ which can be defined as follows:

ϕ : R N → H (2.12)
This kernel function can be used to define discriminant function of the SVM classifier in the feature space H as follows:

f (x) = m ∑ i=1 w i y i ϕ(x i ) T ϕ(x) + b (2.13)
where x 1 , x 2 , . . . , x m are the support vectors, w i are Lagrange multipliers 1 , y i are the 1 Lagrange multipliers provide a strategy for finding the local maxima and minima of a function subject to equality constraints. For instance, consider the following optimization problem: f (x 1 , . . . , x n ) : R n → R subject to g(x 1 , . . . , x n ) = 0. In other words, you need to find the minimum and maximum corresponding labels of the input samples x i , and b is a bias. It can be seen that the computations in equation 2.13 depend on the inner product of the vectors in the feature space. Unfortunately, performing these computations in a high dimensional space can be extremely costly. However, this problem can be solved exploiting the idea of kernel function. In other words, the training depends only on the inner products of the form ϕ(x i ) T ϕ(x). Consequently, we can overcome determining the feature space representation of the vectors by introducing the kernel function, which is defined as follows:

K(x, y) = ϕ(x) T ϕ(y) (2.14)
Thus after the substitution, equation 2.13 becomes:

f (x) = m ∑ i=1 w i y i K(x, y) + b (2.15)
Note that the kernel function K(x, y) is a similarity measure between the two vectors x and y which is sometimes mentioned as Mercer kernels theorem. In other words, the kernel function must satisfy the Mercer's theorem, that is, the kernel matrix K given by:

K =     K(x 1 , x 1 ) . . . K(x 1 , x n ) . . . . . . . . . K(x n , x 1 ) . . . K(x n , x n )     (2.16)
must have only non-negative eigenvalues. A thorough explanation of this theorem can be found in [START_REF] Cristianini | An Introduction to Support Vector Machines and Other Kernel-based Learning Methods[END_REF].

This similarity measure is obtained using different kernels in order to classify various kinds of data (see for instance [Chapelle et al.;[START_REF] Wallraven | Recognition with local features: the kernel recipe[END_REF]). The more important kernel functions are:

• Linear kernel:

K(x, y) = x T y
(2.17)

• Polynomial kernel: 2.18) extremes with respect to the constraint g.

K(x, y) = (x T y + θ) d (
where θ denotes the first coefficient of this kernel function (default is 0) and d denotes the degree of the kernel function.

• Gaussian kernel:

K(x, y) = e - ||x-y|| 2 2σ 2 = e -γ||x-y|| 2 (2.19)
where γ is a coefficient in the kernel function (default is 1/ f eatures number).

• Sigmoid kernel:

K(x, y) = tanh(γx T y + θ) (2.20)
• Exponential kernel:

K(x, y) = e - ||x-y|| 2σ 2 = e -γ||x-y|| (2.21)
The parameters of these kernel functions are specified by the user, usually experimentally. For instance, in the sigmoid kernel we keep changing in γ and θ until the Mercer's theorem is satisfied. In chapter 5, we will employ some of these kernels and study their impact on the final classification results.

SVM approaches have been widely used in the literature. For instance, [START_REF] Pronobis | Confidence-base cue integration for visual place recognition[END_REF] proposed to use cue integration followed by a SVM classification technique. Also, in [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF] the authors used SIFT descriptor combined with

Harries Laplace Detectors (HLDs) for feature extraction, followed by the use of SVM to perform the classification process. These algorithms lead to a highly accurate result in recognition and is robust to the noise. However, they are based on sophisticated classifiers.

Softmax regression

In statistics, this model is a probabilistic, linear classifier (for example see figure 2.15).

It is a supervised learning algorithm which can be used to predict of the probability of occurrence of an event based on the input data. More precisely, this technique can also be used in recognition for robotic systems to compute the probability to be in a given place according to the input image.

Binary or binomial classification is the task of classifying the members of a given set of objects into two groups on the basis of whether they have some property or Given a training set: (x (1) , y (1) ), (x (2) , y (2) ), . . . , (x (m) , y (m) ) where y (i) denotes the labeled samples of the input features x (i) ∈ R n+1 . If the labels are taking the following form: y (i) ∈ {0, 1}, a logistic regression is then enough to classify the data.

While if y (i) ∈ {1, 2, 3, . . . , k}, a softmax regression is required to distinguish between k classes. For a logistic regression, the hypothesis is given by the following formula:

h θ (x) = σ(θ T x) = P(y (i) = 1|x (i) ; θ) P(y (i) = 2|x (i) ; θ) = 1 1 + e -βθ T x = 1 ∑ 2 j=1 e βθ T j x (i) e βθ T 1 x (i) e βθ T 2 x (i) (2.22) where σ(z) = 1 1 + e -βz (2.23)
is called the logistic function. β represents the inverse temperature which determines the slope of the sigmoid function. Figure 2.16 shows this function, where, in this case, the inverse temperature is assumed to be 1. Note that this function tends towards 1 as z → ∞, and it tends towards 0 as z → -∞. Therefore, the logistic function and hence h(x), are always bounded between 0 and 1. The model parameters θ 1 and θ 2 , which are also known as "regression coefficients", can be learned minimizing the following cost function: Softmax and logistic regressions are discriminative approaches since they try to approximate decision frontiers between the data. If the classes are mutually exclusive, so a softmax regression classifier would be appropriate 1 . However, if they are not mutually exclusive it would be more appropriate to build a set of separate logistic regression classifiers. It means that the non-exclusive case for multiple classes is just an extension of the binary case. A data belongs or not (with a given probability) to each of the considered classes but these probabilities do not have to sum to 1. On contrary, all the probabilities of the classes in the exclusive case have to sum to 1 and thus we need to use a softmax regression instead of the logistic one for our classification problem. It results that in our classification problem using a non-exclusive approach leads to a scene classification (a scene can belong to several classes because it can include parts of different rooms or locations). While using an exclusive approach leads to a real place recognition since the robot cannot be in two different places at the same time. So, logically, a softmax regression classifier would be appropriate for our classification problem because it ensures that probabilities of the different classes are mutually exclusive.

J(θ) = - 1 m m ∑ i=1 y (i) logh θ (x (i) ) + (1 -y (i) )log 1 -h θ (x (i) ) (2.24)
The hypothesis of a softmax regression for a multinomial distribution takes the following form:

h θ (x) =       P(y (i) = 1|x (i) ; θ) P(y (i) = 2|x (i) ; θ)
. . .

P(y (i) = k|x (i) ; θ)       = 1 Z       e βθ T 1 x (i) e βθ T 2 x (i)
. . .

e βθ T k x (i)       = 1 ∑ k j=1 e βθ T j x (i)       e βθ T 1 x (i) e βθ T 2 x (i)
. . .

e βθ T k x (i)       (2.25)
where Z represents the "partition function" which normalizes the data distribution, so that it sums to one. Also, it is important to note that the model parameters, θ 1 , θ 2 , . . . , θ k ∈ R n+1 , are stacking up in rows and they are given by the following matrix:

θ =       -θ T 1 - -θ T 2 - . . . -θ T k -       (2.26)
If these regression coefficients are positive, the probability of the softmax function outcome will be increased, while negative regression coefficients mean that the probability of that outcome will be decreased. Large coefficients of the regression will strongly influence the probability, while very small regression coefficients will have a small influence on the probability of that outcome. To overcome these challenges, we need to regularize the model coefficients during the learning phase. This can be achieved using a regularized term or a weight decay, which penalizes the large parameters during the learning process.

Like in the logistic regression, the parameters of a softmax regression can be learned minimizing the following cost function:

J(θ) = - 1 m m ∑ i=1 k ∑ j=1 1{y (i) = j}log e βθ T j x (i) ∑ k l=1 e βθ T l x (i) + λ 2 k ∑ i=1 n ∑ j=0 θ 2 i j (2.27)
where the first term on the left-hand-side of the previous equation represents the regular cost function of a softmax regression and the second term on the right-hand-side of the same equation represents the weight decay term. Also, in the first term there is an indicator function, {•}, which takes a value of 1 if its argument is true and 0 otherwise. So, the idea behind this model is to minimize this cost function, J(θ), by changing the model parameters, θ. This can be achieved using a gradient descent procedure as follows:

θ j := θ j -α ∂ ∂θ j J(θ), f or all j (2.28)
where α is the learning rate of the model. The partial derivative of the cost function, ∂ ∂θ j J(θ), can be derived as follows:

∂ ∂θ j J(θ) = ∇ θ j J(θ) = - 1 m m ∑ i=1
x (i) 1{y (i) = j} -P(y (i) = j|x (i) ; θ) + λθ j (2.29) where P(y (i) = j|x (i) ; θ) represents the conditional probability of a given class with respect to the model parameters. This probability can be rewritten as follows:

P(y (i) = j|x (i) ; θ) = e βθ T j x (i) ∑ k l=1 e βθ T l x (i)
(2.30)

The demonstration of this equation can be found in Appendix B and in [START_REF] Ng | Cs229 lecture notes on machine learning[END_REF],

and a pseudo code of the update rule for a softmax regression is proposed in Algorithm 1.

It was stated that the use of a softmax regression depends on the assumption of obtaining the linear separation of the data using DBNs. However, if this assumption is false, a nonlinear classifier, like SVM, is required to perform the classification process.

The question of whether discriminative or generative approaches are more efficient to solve robot localization problem seems to be interesting to explore in this context. input : the model parameters, θ, which are the weights matrix, W , and the biases, b. y represents the top hidden layer, the matrix z represents the pre-defined labels of the classes (1{y (i) = j}), λ = 0.008 is a regularization rate used to avoid over-parameterization problem, α = 0.1 is a learning rate of the gradient descent, and finally, the number of required epochs to ensure the convergence of the model parameters, set to 10000. output: recognize the robot places such as corridor, toilet, office, . . . etc. for e = 1 to epochs do 1 compute the conditional probability using:

2 P(y (i) = j|x (i) ; θ) = e θ T j x (i) ∑ k l=1 e θ T l x (i) 3
compute the partial derivative of the cost function using:

4 ∂ ∂θ j J(θ) = ∇ θ j J(θ) = -1 m ∑ m i=1
x (i) z -P(y (i) = j|x (i) ; θ) + λθ j 5 use the gradient descent method which is given in equation 2.28 to 6 update the model parameters as follows:

θ j := θ j -α ∂ ∂θ j J(θ), f or all j 7 end 8
Algorithm 1: This algorithm shows the learning update procedure of a softmax regression.

This question has been investigated in the literature, for example, in [START_REF] Ng | On discriminative vs. generative classifiers: A comparison of logistic regression and naive bayes[END_REF] the authors have introduced an interesting comparison between the two different approaches considering two particular classification algorithms. The first one is the logistic regression, which is a discriminative approach, and the second one is NBC, which is a generative one. Together they form "discriminative-generative approach" pair. It means that while naive Bayes aims at maximizing the joint likelihood, P(x, y), of the inputs x and the labels y, the logistic regression aims at maximizing the conditional likelihood on the training set, P(y|x). In this case, the authors have empirically

shown that the performance of naive Bayes is better than the logistic regression for less data, but the asymptotic error is higher for the former. They have also shown that the error in the generative model may converge asymptotically much faster than the discriminative approach, where the number of training examples is only logarithmic in the generative model and linear in the discriminative one. However, these hypotheses are not true for all pairs of discriminative and generative models, i.e. we can not generalize them. Hence, the conclusion of Ng and Jordan is that discriminative learning can sometimes be more efficient than generative learning algorithms for some problems. On the other hand, generative learning models might be advantageous for other problems at least when the model considered fits well the data. Another interesting work is presented in [START_REF] Ulusoy | Generative versus discriminative methods for object recognition[END_REF] where the authors have introduced and compared the two approaches for object recognition based on local invariant features. They have shown that a discriminative model is capable of very fast inference, and is able to focus on highly informative features. By contrast, the generative model gives high classification accuracy, and also has some ability to localize the objects within the image. As a conclusion, after presenting the different existing approaches that have been used to achieve SPR, we have noted that these approaches generally include two main phases of coding and classification. We have also seen that most of the coding methods are based on hand-crafted feature extractors like SIFT, SURF, CENTRIST, and GIST detectors. These detectors are empirical and they often use BoWs approaches [START_REF] Chum | Geometric min-hashing: Finding a (thick) needle in a haystack[END_REF][START_REF] Philbin | Object retrieval with large vocabularies and fast spatial matching[END_REF]. Some of them use the local feature matching [START_REF] Lowe | Distinctive image features from scale-invariant keypoints[END_REF] and they often need to reduce the size of their representations [START_REF] Torralba | Small codes and large image databases for recognition[END_REF]. They are often followed by vector quantization such that the image can be represented as a histogram.

SPR thus requires the use of an appropriate feature space. In the next section we will see that DNNs offer an interesting alternative to these empirical methods.

Deep architecture methods

Semantic place recognition therefore requires projecting images onto an appropriate feature space that allows an accurate and rapid classification. Although in the previous approaches, the feature space was build in an empirical way, we are going to see that a set of recent methods based on deep architectures of neural networks give the ability to build it from theoretical considerations. Concerning features extraction, the last two decades have seen the emergence of new approaches strongly related to the way natural systems code images [START_REF] Olshausen | Sparse coding of sensory inputs[END_REF]. One of the roots of these methods is the analogy with the visual system, the first layers of which seem to correspond to a coding step and to the extraction by more and more specialized cells of universal elements of the images, i.e. elements that are present in almost all natural images. It has been shown that these elements are parts of contours and their combinations [START_REF] Field | What is the goal of sensory coding?[END_REF][START_REF] Olshausen | Sparse coding of sensory inputs[END_REF].

These approaches are based on the consideration that natural image statistics are not Gaussian as it would be if they had a completely random structure [START_REF] Field | What is the goal of sensory coding?[END_REF]. The auto-similar structure of natural images allows the evolution to build "optimal codes".

These codes are made of statistically independent features and many different methods have been proposed to construct them from image datasets. One characteristic of these features is their locality, that can be related to the notion of receptive field in natural systems.

It has been shown that Independent Component Analysis (ICA) [START_REF] Bell | The 'independent components' of natural scenes are edge filters[END_REF]] produces localized features. Besides, it is efficient for distributions with high kurtosis well representative of natural image statistics, dominated by rare events like contours; however the method is linear and not recursive. These two constraints are released by Deep Belief Networks (DBNs) [Hinton et al., 2006] that introduce non-linearities in the coding scheme and exhibit multiple layers.

Each layer in DBNs is made of a Restricted Boltzmann Machine (RBM), a simplified version of a Boltzmann Machine proposed by Smolensky [START_REF] Smolensky | Information processing in dynamical systems: foundations of harmony theory[END_REF] and Hinton [START_REF] Hinton | Training products of experts by minimizing contrastive divergence[END_REF]. Each RBM is able to build a generative statistical model of its inputs using a relatively fast learning algorithm, Contrastive Divergence (CD), first introduced by Hinton [START_REF] Hinton | Training products of experts by minimizing contrastive divergence[END_REF]. Another important characteristic of the codes used in natural systems, the sparsity of the representation [START_REF] Olshausen | Sparse coding of sensory inputs[END_REF] is also achieved in DBNs.

Deep architecture learning has indeed recently become popular as a powerful way to code data using a set of independent features [START_REF] Bengio | Learning deep architectures for ai[END_REF]. In particular, deep neural networks (DNNs) like DBNs and deep Boltzmann machines (DBMs) have been applied to different machine learning tasks with impressive improvements over conventional approaches ( [START_REF] Hinton | Reducing the dimensionality of data with neural networks[END_REF][START_REF] Salakhutdinov | Deep boltzmann machines[END_REF]). They have recently been used in different applications such as phone recognition in [START_REF] Abdel-Rahman | Deep belief networks using discriminative features for phone recognition[END_REF], natural language processing in [START_REF] Sarikaya | Deep belief nets for natural language call-routing[END_REF], and audio processing in [START_REF] Abdel-Rahman | Acoustic modeling using deep belief networks[END_REF]. They have also been used for hand-written character recognition [START_REF] Hinton | Training products of experts by minimizing contrastive divergence[END_REF]Hinton et al., 2006], object recognition [START_REF] Nair | 3-d object recognition with deep belief nets[END_REF], collaborative filtering [Salakhutdinov et al., 2007] and document retrieval. Based on previous observations, RBMs can be used to model high-dimensional, sequential data and they have proved to be very successful for motion capture data modeling [START_REF] Taylor | Modeling human motion using binary latent variables[END_REF]. They have shown to be efficient and powerful for image coding. [Hinton et al., 2006;[START_REF] Torralba | Small codes and large image databases for recognition[END_REF].

In [START_REF] Torralba | Small codes and large image databases for recognition[END_REF] the authors have shown that DBNs can be successfully used to code huge amounts of images in an efficient way. Each image in a very large database is first reduced to a small size patch (e.g. 32x32) to be used as an input vector for a DBN network. A set of predefined features (the alphabet) is computed, only once, from a set of representative images and each image is represented by a unique weighted combination of features taken from the alphabet. With the appropriate parameters the CD algorithm converges towards a sparse representation of the images, which means that an image is coded by the smallest possible number of features. A simple distance measurement between the image codes allows comparing them. To better understand how DBNs approaches can be used for image coding, we give a detailed description of them in the next sections.

DNNs are characterized by a large number of layers of neurons and by the use of layer-wise unsupervised pre-training to learn a probabilistic model for the data. A DBN is typically constructed by multiple layers of RBMs stacking so that the hidden layer of one RBM becomes the visible layer of another higher RBM layer. Layerwise pre-training of RBMs then facilitates finding a more accurate model for the data. Many researchers have empirically shown that such multi-stage learning works better than conventional learning methods, such as the back-propagation with random initialization [START_REF] Hinton | Reducing the dimensionality of data with neural networks[END_REF][START_REF] Ranzato | Factored 3-way restricted boltzmann machines for modeling natural images[END_REF][START_REF] Salakhutdinov | Deep boltzmann machines[END_REF]. It is thus important to have an efficient method for RBM training.

More precisely, deep architectures are used to find a high-level representation of the initial data (extract the most interesting features of the input image and use them to create a new representation of the initial data) for instance, see figure 2.17.

Figure 2.17: An explanation of how to transform the input image into higher levels of representation, which includes the most interesting information (characteristics) such as: edges, corners, object parts, etc.

Because DBNs are based on RBMs, which are particular type of Energy-Based Models (EBMs), we first introduce the main mathematical concepts of EBMs (A more detailed description can be found in [START_REF] Lecun | A tutorial on energy-based learning[END_REF]), a detailed discussion on Boltzmann Machines (BMs) and its simpler variant, RBMs, that could be helpful to understand the main concepts of DBNs models. Then, we focus on describing the mathematical concepts of Contrastive Divergence (CD) as a powerful learning algorithm that can be used to train DBNs models.

Energy-based models

Several methods have been proposed to achieve image coding [START_REF] Bell | The 'independent components' of natural scenes are edge filters[END_REF]Hinton et al., 2006;Olshausen andField, 1996, 1997]. Some of them are Non-Energy-Based Models (NEBMs) such as Independent Component Analysis (ICA). It has been shown that ICA produces localized features and is efficient for distributions with high kurtosis well representative of natural image distributions; however this method is linear and non-recursive as previously said [START_REF] Bell | The 'independent components' of natural scenes are edge filters[END_REF]]. These restrictions are released by DBNs [Hinton et al., 2006] which are a particular type of EBMs based on RBMs. The energy-based approach is interesting because it suggests an ICA extension to overcomplete [START_REF] Olshausen | Sparse coding with an overcomplete basis set: a strategy employed by v1?[END_REF]] and multi-layer models [START_REF] Teh | Energy-based models for sparse overcomplete representations[END_REF].

It has also been shown that the features of an EBM exhibit marginal dependencies [START_REF] Teh | Energy-based models for sparse overcomplete representations[END_REF]. Allowing these dependencies can strongly contribute in speeding up the inference process for the model. While in causal generative models, like ICA, the assumption of marginal independence often leads to intractable inference which needs to be approximated using some iterative, data dependent scheme. The role of these iterations can be understood as suppressing the "activity" of less relevant feature, thus producing a sparse code. However, EBMs can be enriched with inhibitory lateral connections to suppress less relevant features in order to produce a sparser representation.

Another powerful generalization of EBMs is a hierarchical non-linear architecture in which the output activities are computed with a feed-forward neural network (see figure 2.9), where each layer may contribute to the total energy (for related work see [START_REF] Hyvärinen | Independent Component Analysis[END_REF]). To fit this model to data, back-propagation or CD techniques can be used to compute the energy gradients with respect to both data vector and weights. Finally, the authors in [START_REF] Teh | Energy-based models for sparse overcomplete representations[END_REF] have concluded that the EBMs provide a flexible modeling tool which can be trained efficiently to uncover useful structures in the data.

Usually, the main purpose of statistical modeling and machine learning is to encode dependencies between variables [START_REF] Lecun | A tutorial on energy-based learning[END_REF]. By capturing those dependen-cies, a model can be used to answer questions about the values of unknown variables given the values of known variables. Recognition systems capture the dependencies between a set of observed variables x, for example the pixels of an image, and a set of answer variables y to be predicted (e.g. the robot places of natural images). An EBM takes all the variables (observed and unobserved) as inputs, and produces a scalar energy (y, x) which measures the "compatibility" between the values of the variables. More precisely, in an EBM the inference process is done by choosing a value y * , from the set of all possible values of the unobserved variables y, for which the energy function E(y, x) is the smallest:

y * = argmin y∈Y E(y, x) (2.31)
where Y is a suitably defined domain for y 1 . Therefore, EBMs associate to each configuration a global energy, E, that is the sum of a number of local contributions which define the probability for an image to be proportional to exp(-E) [START_REF] Welling | Exponential family harmoniums with an application to information retrieval[END_REF], i.e. EBM is one of the exponential family forms. In particular, one can transform an EBM into a probabilistic model through the Gibbs distribution:

P(y|x) = e -βE(y,x) Z (2.32)
where Z is a normalization factor or a "partition function". It represents the sum of the numerator over all possible observation vectors of the input space and it is given by:

Z = ∑ y∈Y e -βE(y,x) (2.33)
where the parameter β is an arbitrary positive constant, the "inverse temperature 1/T ", which determines the slope of the energy function.

The EBM inference through the energy minimization can therefore be seen as a Maximum A Posteriori (MAP) estimation of y. In general, we would like to learn 1 inference process is the task of finding the best answer for a given input. For example, y could take six possible values: animal, human figure, airplane, truck, car, and "none of the above". Given a fixed input x, which is observed from the world, the process of inference involves, asking the model to produce a value of the unobserved variable y that is most compatible with the observed variable x [ [START_REF] Lecun | A tutorial on energy-based learning[END_REF]. a set of features based on the principle of having low energy between the different configurations of a model. In the following sections, we describe how it is possible to compute the conditional probability of one layer given the other one for BM and RBM models, which are particular examples of EBMs, using the exponential family distributions.

Classical Boltzmann machines

The general Boltzmann Machine (BM) learning algorithm is a kind of probabilistic generative models which was originally introduced by Hinton and Sejnowski [START_REF] Hinton | Boltzmann machines: Constraint satisfaction networks that learn[END_REF]. As shown in figure 2.18 (left), the classical BMs can be viewed as a network of binary probabilistic units, which interact through weighted undirected connections. In this model, the network is fully connected, i.e. a BM consists in one layer of visible units, v, and one layer of hidden units, h. The units in each layer are fully connected and are also connected to all other units in other layers. The visible units are usually clamped by the observed data and the hidden units can be computed using equation 2.32 by letting the network run freely and sampling the activities of all units. Given the units of BM, x = {x 1 , x 2 , . . . , x n }, the energy function of BM is postulated by the following equation:

E(x; θ) = -∑ i ∑ j w i j x i x j -∑ i b i x i , f or i < j (2.34)
where θ = {W, b} denotes the model parameters consisting of a weight matrix W = [w i j ] and a bias vector b = [b i ]. w i j is the weight of the synaptic connections (symmetric connections) between neurons i and j. As in equation 2.32, the probability of a particular state x is then given through the Gibbs distribution as follows:

P(x; θ) = e -βE(x;θ) Z(θ) = e -βE(x;θ) ∑ u e -E(u;θ) (2.35)
For the binary case, the above conditional probability equation of a single unit x i ,

given the states of all other units can be driven as follows:

P(x i = 1|x; θ) = σ(b i + ∑ i = j w i j x j ) (2.36)
where the sigmoid function is given by: σ(x) = 1/(1 + e -βx ). The derivation of equation 2.36 is explained in Appendix A. This derivation is universal for RBM and general BM [START_REF] Krizhevsky | Learning multiple layers of features from tiny images[END_REF].

The neurons of BM are usually divided into visible and hidden units

x = [v, h],
where the states v of the visible neurons are clamped to observed data, and the states h of the hidden neurons can change freely as previously said. In this case, the probability of a specific configuration of the visible neurons can be computed by marginalizing out the hidden neurons.

Although general BMs are theoretically easy to understand, they have not proven to be useful for practical problems in machine learning or inference [START_REF] Hinton | Training products of experts by minimizing contrastive divergence[END_REF]. This is due to the fact that the learning is impractical in general BMs, i.e. the convergence process needs long time to be achieved since we have to learn P(x) as it was illustrated in equation 2.36. In fact, the unconstrained connectivity between the units (see figure 2.18 (left)) is the main problem in those approaches. However, this connectivity problem has been restricted by introducing RBM models, which can be useful in practical problems.

Gaussian-Bernoulli restricted Boltzmann machines

In 1986, Smolensky introduced Restricted Boltzmann Machines (RBMs) [START_REF] Smolensky | Information processing in dynamical systems: foundations of harmony theory[END_REF] as a powerful learning algorithm which trains deep networks in a greedy layerwise fashion. In other words, RBMs train one hidden layer of DBNs at a time by minimizing the energy function which is given in equation 2.37. Contrarily to feedforward architectures, which support only bottom-up inference, RBMs are generative approaches for image coding, which support both bottom-up and top-down inference processes1 .

Unlike a classical Boltzmann machine, a RBM is a bipartite undirected graphical model θ = {w i j , b i , c j }, that learns a generative model of the observed data. It consists in two layers. The hidden layer, containing latent variables h, is used to generate the visual layer, containing observed variables v. While generation P(v|h) is learned, the undirected connections also allow recognition P(h|v). The two layers are fully connected through a set of weights w i j and biases {b i , c j }, and there are no connections between units of the same layer, as shown in figure 2.18 (right). As illustrated in [START_REF] Hopfield | Neural networks and physical systems with emergent collective computational abilities[END_REF], a joint configuration, (v,h) of the visible and hidden units has an energy function, E(v, h; θ), given by: (2.37) This energy function corresponds to the binary states of visible units v and hidden units h. The probabilities of the state for a unit in one layer conditional to the state of the other layer can therefore be easily computed. According to Gibbs equation:

E(v, h; θ) = -∑ i ∑ j v i h j w i j -∑ i∈v b i v i -∑ j∈h c j h j
P(v, h; θ) = - 1 Z(θ) exp -βE(v,h;θ) (2.38)
where θ = {w, b, c} represents the model parameters, and Z(θ) is again the "partition function". Intuitively, configurations with low energy are assigned high probability, while configurations with high energy are assigned low probability.

Thus after marginalization, the probability of a particular hidden state configuration h can be derived as follows:

P(h; θ) = ∑ v P(v, h; θ) = ∑ v e -βE(v,h;θ) ∑ v ∑ h e -βE(v,h;θ) (2.39)
The sum in the denominator is over all possible visible and hidden configurations, and is thus extremely hard to compute when the number of units is large. However, as previously said, in RBMs there are no direct connections between the visible neurons or the hidden neurons. It can thus be easy to write down the conditional probability of a single unit being either 0 or 1 given the states of the other units as follows:

P(h j = 1 | v; θ) = P(h j = 1, v; θ) P(v; θ) (2.40)
Given the energy function, E(v, h), of the visible and hidden units, we can rewrite the above conditional probability equation as follows:

P(h j = 1 | v; θ) = e -βE(v,h) ∑ h e -βE(v,h) (2.41)
where β represents the inverse temperature, 1/T , which determines the slope of the sigmoid function. However, for the binary case where h j ∈ {0, 1}, the above probability equation of turning on can be derived using the logistic sigmoid function as demonstrated in [START_REF] Krizhevsky | Learning multiple layers of features from tiny images[END_REF] and Appendix A, according to its energy function, as follows:

P(h j = 1 | v; θ) = σ(c j + ∑ i w i j v i ) (2.42)
Once the hidden binary states are computed, we produce a "reconstruction" of the original patch by setting the state of each visible unit to be 1 with probability:

P(v i = 1 | h; θ) = σ(b i + ∑ j w i j h j ) (2.43)
However, logistic or binary units are not appropriate for multi-valued inputs like pixel levels, because logistic units are a very poor representation for data such as patches of natural images [START_REF] Hinton | A practical guide to training restricted boltzmann machines -version 1[END_REF]. To overcome this problem, as suggested by Hinton [START_REF] Hinton | A practical guide to training restricted boltzmann machines -version 1[END_REF], in the present work we replace the binary visible units by a zero-mean Gaussian activation scheme as follows:

P(v i = 1 | h; θ) ← N(b i + ∑ j w i j h j , σ 2 ) (2.44)
Concerning the variance of the noise, σ 2 , it is possible to learn it for each visible unit, but this is difficult using CD as it is time-consuming. It is more appropriate to first normalize the data components to have zero-mean and unit variance and then use a unit variance and zero-mean for the Gaussian noise. After this modification, Gaussian visible units and binary hidden units correspond to the following energy function model:

E(v, h; θ) = ∑ i∈v (v i -b i ) 2 2σ 2 i -∑ j∈h c j h j -∑ i ∑ j v i σ i h j w i j (2.45)
As a conclusion, contrarily to auto-encoder models that are non-statistical but "deterministic models" and aim at finding the best reconstruction of the data or reproduce the images. RBMs are generative models used to learn the optimal statistical model which explains the original data or images. Moreover, there are other good reasons to use RBMs:

First, these approaches are able to produce sparse efficient features extracted from a larger alphabet. A sparse representation means that the linear separability of the initial data should be gained in the feature space. Secondly, RBM can handle multi-modal stimuli. Units are independent of each other, since there are no connections between units of the same layer. This allows the units to encode different modalities without problems. Moreover, RBMs are just basic building blocks. They can be stacked on top of each other to create Deep Belief Networks. They can be extended to model timeseries [START_REF] Sutskever | The recurrent temporal restricted boltzmann machine[END_REF] or to feature three-way interactions ( [START_REF] Taylor | Factored conditional restricted boltzmann machines for modeling motion style[END_REF]. Finally, RBMs fall under Bayesian models, which have been used extensively to model the brain [START_REF] Vilares | Bayesian models: the structure of the world, uncertainty, behavior, and the brain[END_REF]. However, full Bayesian models are computationally intractable and therefore biologically implausible. By using only an approximation, we have not only fast inference and learning, but also a more plausible algorithm.

The parameters of RBM can be learned from the data using different training techniques. Some of them are: maximizing the log-likelihood, Markov-Chain Monte-Carlo (MCMC) sampling techniques like Gibbs sampling, and Contrastive Divergence (CD) learning algorithm. We will see in the next section how we could use these mechanisms for Product of Experts (PoEs) models training and we will concentrate on the use of CD as a faster and powerful learning algorithm to maximize the log-likelihood gradient.

Learning products of experts by minimizing contrastive divergence

It has been mentioned that Back-Propagation (BP) learning technique works well in a network where just a single layer is sufficient. However, it does not work well in networks with many hidden layers, like DBNs, because it requires to train the whole layers of the model [START_REF] Bengio | Scaling learning algorithms towards ai[END_REF][START_REF] Hecht-Nielsen | Replicator neural netowrks for universal optimal source coding[END_REF][START_REF] Larochelle | Exploring strategies for training deep neural networks[END_REF][START_REF] Tesauro | Practical issues in temporal difference learning[END_REF]. In other words, minimizing the error for each layer requires backpropagating the error on all model layers, updating the weights and biases. Therefore, the convergence of BP algorithm becomes more difficult in networks with multiple hidden layers, i.e. it is time-consuming to assure the convergence. Furthermore, BP algorithm is not very accurate in the case of DBNs because the gradient of error becomes flat for the different layers and weights. However, several alternative learning techniques have been proposed to train DBNs models. But before introducing them we need to understand the term "Products of Experts" (PoEs).

General BMs or RBMs are particular examples of PoEs model. PoE combines n individual models by taking the product of their conditional probabilities and normalizing the result using the partition function Z(θ) as follows [START_REF] Hinton | Training products of experts by minimizing contrastive divergence[END_REF]:

P(d | θ 1 , . . . , θ n ) = ∏ m P m (d | θ m ) Z(θ m ) = ∏ m P m (d | θ m ) ∑ c ∏ m P m (c | θ m ) (2.46)
where d is a discrete input vector, c represents the indexes for all possible vectors in the input space, θ m represents the parameters of a particular model m, and P m (d | θ m ) is the probability of d under the model m. A common way to learn the PoE parameters is to maximize the data log-likelihood. Given a training dataset {d i } N i=1 , the log-likelihood of PoE is given by:

log P(d | θ 1 , . . . , θ n ) = N ∑ i=1 M ∑ j=1 log P(d i | {θ j }) (2.47)
By taking the first derivative of the log-likelihood function, log P

(d | θ 1 , . . . , θ n ),
with respect to the model parameters, θ j , we can then drive the gradient descent as follows:

∂log P(d | θ 1 , . . . , θ n ) ∂θ m = ∂log P m (d | θ m ) ∂θ m -∑ c P(c | θ 1 , . . . , θ n ) ∂log P m (c | θ m ) ∂θ m
(2.48) A thorough demonstration for this derivative can be found in Appendix C and in [START_REF] Wood | Training products of experts by minimizing contrastive divergence[END_REF]. In equation 2.48, the first part represents the data distribution, while the second one represents the expected derivative of the log-likelihood of an expert on fantasy data, c, generated from the PoE1 . The average over the data and model distributions in equation 2.48 can thus be written as follows:

∂log P(d | θ 1 , . . . , θ n ) ∂θ m Q 0 ∝ ∂log P m (d | θ m ) ∂θ m Q 0 - ∂log P m (c | θ m ) ∂θ m Q ∞ (2.49)
However, the computation of Q ∞ seems to be difficult to obtain, especially in an inner gradient ascent loop. In other words, computing the partition function, Z(θ), requires to compute the summation over all possible configurations of BM, and it is simply impossible for large BMs. Fortunately, this problem can be tackled in various ways. One obvious approach is to use Markov-Chain Monte-Carlo (MCMC) sampling techniques to compute the stochastic gradient to maximize the log-likelihood. Due to the simplicity of the activation rule for a single neuron given the states of other neurons, a simple Gibbs sampling is enough to get stochastic gradients. A detailed description of how to use Gibbs sampling method for traditional BMs training can be found in [START_REF] Geman | Stochastic relaxation, gibbs distributions, and the bayesian restoration of images[END_REF].

However, there are also other kinds of limitations in Gibbs sampling use for BM training. The biggest problem is due to the full-connectivity of BM: since each neuron is connected to and influenced by all the other neurons, it takes as many steps as the number of neurons to get one sample of the BM state. Even when the visible neurons are clamped to the training data, the number of required steps for a single fresh sample is still at least the number of hidden neurons. This makes the successive samples in the chain highly correlated with each other, and this poor mixing affects the performance of learning. Another limitation of this approach is that multi-modal distributions are problematic for Gibbs sampling due to the nature of component-wise sampling, the samples might miss some modes of the distribution [START_REF] Salakhutdinov | Learning in markov random fields using tempered transitions[END_REF].

MCMC learning techniques are therefore not useful for classical BMs training where the network is fully-connected. They also remain slow in training RBMs even if we restrict the connectivity of the visible and hidden units and thus cannot be used to train RBMs.

Another way based on Kullback-Leibler Divergence (KLD), first introduced by [START_REF] Kullback | On information and sufficiency[END_REF], can be used to maximize the log-likelihood. It has been formally demonstrated that maximizing the log-likelihood of the data (averaged over the data distribution) is equivalent to minimizing the KLD between the data distribution, Q 0 , and the equilibrium distribution over the visible variables, Q ∞ , that is produced by prolonged Gibbs sampling from the generative model [START_REF] Hinton | Training products of experts by minimizing contrastive divergence[END_REF] 1 . The KLD between the data and model distributions can then be written as follows:

D KL Q 0 Q ∞ = ∑ d Q 0 d ln Q 0 d Q ∞ d = ∑ d Q 0 d logQ 0 d -∑ d Q 0 d logQ ∞ d = -H Q 0 -logQ ∞ d Q 0 (2.50)
where represents the KLD operator, • denotes the cross entropy of Q 0 and Q ∞ d (expectations over the distribution), H Q 0 represents the entropy of the data distribution which can be ignored during learning because Q 0 does not depend on the model parameters, and

Q ∞ d = P(d | θ 1 , . . . , θ n ).
However, as illustrated in [START_REF] Hinton | Training products of experts by minimizing contrastive divergence[END_REF], instead of minimizing the KLD between Q 0 (initial derivative) and Q ∞ (final derivative), it is possible to minimize the diver-

gence between (Q 0 Q ∞ ) and (Q 1 Q ∞ )
where Q 1 can be computed by performing one step of reconstruction of the data generated by one full step of Gibbs sampling. In fact, this minimization represents the definition of "Contrastive Divergence" (CD) which was proposed by Hinton [START_REF] Hinton | Training products of experts by minimizing contrastive divergence[END_REF] as an approximate learning method for PoE models training. Instead of running the chain to equilibrium and comparing the initial and final derivatives, we can simply run the chain for one full step and then update the parameters to reduce the tendency of the chain to wander away from the initial distribution on the first step. A comparison is thus made between the statistics of the data and the statistics of its representation generated by Gibbs sampling. Therefore, in contrastive divergence learning, we try to minimize the following related objective:

CD n = KL(Q 0 ||Q ∞ ) -KL(Q 1 ||Q ∞ ) (2.51)
The key benefit for the contrastive divergence is that the intractable expectation over Q ∞ on the right-hand-side of equation 2.50 cancels out as cited in [START_REF] Hinton | Training products of experts by minimizing contrastive divergence[END_REF], i.e. the Q ∞ term of equation 2.51 cancels each other out, as explained in [START_REF] Andrzejewski | Training binary restricted boltzmann machines with contrastive divergence[END_REF][START_REF] Hinton | Training products of experts by minimizing contrastive divergence[END_REF]. Consequently, equation 2.49 can be re-written as follows:

- ∂ ∂θ m Q 0 Q ∞ -Q 1 Q ∞ = ∂log P m (d | θ m ) ∂θ m Q 0 - ∂log P m ( d | θ m ) ∂θ m Q 1 + ∂Q 1 ∂θ m ∂(Q 1 Q ∞ ) ∂Q 1 (2.52)
The first two terms of equation 2.52 are tractable, because we can compute the derivative of the initial data, d, and the derivative of the reconstruction data, d. In other words, it is straightforward to sample from Q 0 and Q 1 , while the third term is problematic to compute. However, extensive simulations have shown that this term can safely be neglected because it has a small effect on the final result compared with the other two terms [START_REF] Hinton | Training products of experts by minimizing contrastive divergence[END_REF]. These extensive simulations were performed using RBMs with small numbers of visible and hidden units. By performing computations that are exponential in the number of hidden units and exponential in the number of visible units, it is possible to compute the exact values of

v 0 i h 0 j Q 0 and v n i h n j Q 1 . It is also possible to measure what happens to Q 0 Q ∞ -Q 1 Q ∞ when
the approximation in equation 2.54 is used to update the weights by an amount that is large compared with the numerical precision of the machine but small compared with the curvature of the CD. After performing that, two histograms of the improvements in the CD and in data log likelihood have been presented in [START_REF] Hinton | Training products of experts by minimizing contrastive divergence[END_REF]. The main conclusion is that the learning procedure does not always improve the log likelihood of training data, though it has a strong tendency to do so. However, when we ignore the third term in equation 2.52, the learning procedure in the case of CD becomes better. Consequently, by ignoring the third term in equation 2.52, the model parameters can be adjusted using the following update rule:

∆θ m ∝ ∂log p m (d | θ m ) ∂θ m Q 0 - ∂log p m ( d | θ m ) ∂θ m Q 1 (2.53)
As shown in figure 2.19, CD learning starts by setting the states of the visible units to a training vector. Then the binary states of the hidden units are all computed in parallel using equation 2.42. Once binary states have been sampled for the hidden units, a "reconstruction" is produced by setting each v i to 1 with a probability given by the equation 2.44. The overall update formula in the weights w i j is therefore given by:

- ∂ ∂w i j Q 0 Q ∞ -Q 1 Q ∞ ≈ v 0 i h 0 j Q 0 -v n i h n j Q 1 (2.54)
This equation can be rewritten as:

w i j ← w i j + η[ v 0 i h 0 j data -v n i h n j recon ] (2.55)
where η denotes the learning rate and v 0 i h 0 j and v n i h n j are the cross product of the visible and hidden units with respect to the data and the model (reconstruction) distributions. v 0 corresponds to the initial data distributions, h 0 is computed using equation 2.42, v n is sampled using the Gaussian distribution in equation 2.44 and with n full steps of Gibbs sampling, and h n is again computed from equation 2.42. Then, for separate biases of visible and hidden neurons, the update rules are, in analogy to the update rule for the weights:

b i ← b i + η[ v 0 i data -v n i recon ] (2.56) and c j ← c j + η[ h 0 j data -h n j recon ] (2.57)
where v i , h j , b i , and c j denote the i-th visible neuron, the j-th hidden neuron, the i-th visible bias, and the j-th hidden bias respectively. As it can be anticipated from the fact that the direction of the gradient is not identical to the exact gradient, CD learning is known to be biased [START_REF] Bengio | Learning deep architectures for ai[END_REF][START_REF] Carreira-Perpinan | On contrastive divergence learning[END_REF]. Nevertheless, CD learning has been shown to work well in practice. A good property of CD is that if the data distribution is multi-modal, running the chains starting from each data sample guarantees that the samples approximating the negative phase are representative from different modes. Therefore, it has been formally demonstrated that the minimization of the CD is an approximation of the maximization of the data log-likelihood [START_REF] Carreira-Perpinan | On contrastive divergence learning[END_REF][START_REF] Hinton | Training products of experts by minimizing contrastive divergence[END_REF].

A clear pseudo-code of the Contrastive Divergence learning algorithm is proposed in Algorithm 2. This pseudo-code is valid to train Gaussian-Bernoulli-RBM model, i.e. to train a RBM with Gaussian visible units and binary hidden units.

Deep belief networks

DBNs are probabilistic generative models composed of multiple RBMs layers of latent stochastic variables. The latent variables typically have binary values. They corre-input : random patch, v 0 , selected from the database, learning rate, η the weights matrix, w i j , of dimension (number of visible units, number of hidden units) and it is initialized with Gaussian distribution. b i represents the visible biases, c j represents the hidden biases, λ is the weight decay, µ is the momentum, σ is a unit variance set to 1, the training set is divided into small "minibatch-size (γ)" of 100, the weights increments, w inc i j , are set to zero, num h represents the number of hidden units, num v represents the number of visible units, and epochs represents the number of epochs need to ensure the convergence. output: a set of features which are stored in (wi j, b i , c j ).

for e = 1 to epochs do for j = 1 to num h do compute the binary hidden units, using: h 0 = σ c j + ∑ i w i j v i0 ; sample the hidden states, using: ph 0 ≈ Bernoulli(h 0 ); end for i = 1 to num v do compute the visible activation units, using: v 1 = σ b i + ∑ i w i j ph 0 j ; sample the visible states using Gaussian distribution as:

pv 1 ≈ v 1 + N(0, σ 2 )
; end for j = 1 to num h do compute the binary hidden units, using: h 1 = σ c j + ∑ i w i j pv i1 ; end for i = 1 to num v do for j = 1 to num h do

w inc i j ← µ * w inc i j + η * (v 0 * h 0 ) -(pv 1 * h 1 ) /γ -λ * w i j w i j ← w i j + w inc i j end b i ← b i + η * (v 0 -pv 1 ) end for j = 1 to num h do c j ← c j + η * (h 0 -h 1 ) end end Algorithm 2:
Training update procedure for a RBM over Gaussian visible units and binomial hidden units using Contrastive Divergence. spond to hidden units or feature detectors. The input variables are zero-mean Gaussian activation units and are often used to reconstruct the visible units. As shown in figure 2.20, the top two layers have undirected, symmetric connections between them and they form the weights or the features. These features are extracted using the principle of energy function minimization according to the quality of the image reconstruction.

DBNs are powerful unsupervised machine learning models for several reasons, including:

• There is an efficient, layer-by-layer procedure for learning the top-down, generative weights that determine how the variables in one layer depend on the variables in the layer above [START_REF] Hinton | Deep belief networks[END_REF].

• After learning, the values of the latent variables in every layer can be inferred by a single, bottom-up pass that starts with an observed data vector in the bottom layer and uses the generative weights in the reverse direction [START_REF] Hinton | Deep belief networks[END_REF].

• DBNs are able to extract sparse efficient features from a larger alphabet. These features can be successfully used to code huge amounts of images in an efficient way [START_REF] Torralba | Small codes and large image databases for recognition[END_REF].

Since DBNs are composed of RBMs layers (Figure 2.20), they can be trained in a greedy layer-wise way. We describe this training methodology in more detail in the next section.

Deep belief networks layer-wise training

Extensive works have empirically shown that DNNs training is a challenging task [Bengio et al., 2007;[START_REF] Erhan | The difficulty of training deep architectures and the effect of unsupervised pre-training[END_REF]. The authors of those works have suggested to use gradient-based methods for supervised DNNs training starting from a random initialization. However, this approach gets stuck in "apparent local minima" and the problem becomes much more complex with deep architectures [START_REF] Bengio | Learning deep architectures for ai[END_REF]. In 2006, Hinton [Hinton et al., 2006] has suggested that it would be more efficient if we train deep neural networks in a greedy layer-wise unsupervised learning way. By using this model we try to learn a hierarchical feature representation of which high level features are composed of simpler low level features. This efficient, greedy learning can be followed by, or combined with, other learning procedures that fine-tune all of the weights to improve the discriminative performance of the whole network. are used to generate the data to train the higher RBM layer in the network. New layers can be stacked and trained using the same scenario. The process is repeated across the layers to obtain a sparse representation of the initial data that will be used as the final output. In sparse methods, the code is forced to have only few non-zero units while most code units are zero most of the time. Eventually, sparse representations present several potential advantages, as demonstrated in a number of recent studies [START_REF] Doi | A theoretical analysis of robust coding over noisy overcomplete channels[END_REF][START_REF] Olshausen | Sparse coding with an overcomplete basis set: a strategy employed by v1?[END_REF][START_REF] Ranzato | Efficient learning of sparse representations with an energy-based model[END_REF]. They, in particular, have good robustness to noise, and provide a simple interpretation of the input data in terms of a small number of "parts" by extracting the structure hidden in the data. Furthermore, using high-dimensional representations increases the likelihood that image categories will be easily (possibly linearly) separable. Therefore, in this context, we assume that a sparse feature code increases the linear separability between the data in the feature space, which would facilitate the classification process.

Summary

In the present chapter we have discussed the problem of SPR and outlined the most significant difficulties to develop solutions for this problem. We started by introducing the differences between "metric localization", "topological localization", and "semantic place recognition". We also studied the SPR issues in terms of place recognition system designing and testing. We therefore reviewed different approaches for this problem, including in particular [START_REF] Oliva | Building the gist of a scene: the role of global image features in recognition[END_REF][START_REF] Pronobis | Confidence-base cue integration for visual place recognition[END_REF][START_REF] Torralba | Context-based vision system for place and object recognition[END_REF][START_REF] Ullah | Towards robust place recognition for robot localization[END_REF][START_REF] Wu | Centrist: A visual descriptor for scene categorization[END_REF][START_REF] Wu | Visual place categorization: Problem, dataset, and algorithm[END_REF]. These approaches have led to notable successes to achieve vision-based place recognition. However, they are based on complex or sophisticated techniques in order to achieve robust place recognition. In other words, performing the task of SPR using a simple classification method is still an open question. Therefore, SPR requires an appropriate code that allows fast and robust classification. That's why we have presented in this chapter a recent machine learning method, DBNs, as an alternative to hand-designed feature coding approaches. We hope that such approach is suitable for crating an appropriate representation for our classification problem.

Chapter 3

Feature space construction : a parameter study

Introduction

We have seen that most of the methods used for SPR solving are based on the use of hand-engineered features (GiST, CENTRIST, SURF, or SIFT descriptors). In order to cope with the continuous nature of the data representation, a discretization step using BoWs approaches and vector quantization is often applied. The used descriptors are low level and don't capture the structural organization of the scene. It has been shown that despite this lack of information, BoWs methods have given interesting results in SPR. However these methods are complex and depend on the quantization step. Their use is often followed by a complex phase of learning with sophisticated methods like SVMs.

Concerning the feature extraction, RBMs seem more appropriate since they take their root in theoretically grounded statistical methods (PCA and ICA) and they have

shown to be efficient for image coding [START_REF] Abdel-Rahman | Deep belief networks using discriminative features for phone recognition[END_REF][START_REF] Hinton | Training products of experts by minimizing contrastive divergence[END_REF]Hinton et al., 2006;[START_REF] Nair | 3-d object recognition with deep belief nets[END_REF]Salakhutdinov et al., 2007;[START_REF] Taylor | Modeling human motion using binary latent variables[END_REF][START_REF] Torralba | Small codes and large image databases for recognition[END_REF] in many applications. They also learn sparse edge filters, which are more suitable for classification and they are based on models of natural vision [START_REF] Serre | Robust object recognition with cortex-like mechanisms[END_REF] which have impressive performances in object and scene recognition. Another attractive characteristic of this approach is that RBMs can be stacked to form deep networks, the output of which could provide a high level non linear representation of the scene [Hinton et al., 2006] and thus capture spatial relationship lacking in the previous approaches.

We thus propose in the present work to code the images as a set of independent features obtained using DBNs [START_REF] Hinton | Reducing the dimensionality of data with neural networks[END_REF][START_REF] Torralba | Small codes and large image databases for recognition[END_REF].

It has been shown that features extracted by DBNs are more promising for image classification than hand-engineered features [START_REF] Hinton | Transforming auto-encoders[END_REF]. So, we hope that, due to the statistical independence of the features and their sparse nature, learning in the feature space will become linearly independent, greatly simplifying the way we will learn to classify the scenes.

One of the main question with the use of DBNs to classify an image set is to define the conditions required to build an optimal feature space. The general RBM training algorithm is governed by a lot of parameters acting on learning rate, sparsity of the final representation, locality of the obtained features and also speed of convergence.

As stated by Hinton [START_REF] Hinton | Deep belief networks[END_REF] these parameters have to be set up carefully to obtain an appropriate feature extraction. In this chapter we report our own parametric study of the RBMs and DBNs that will be further used in our model. We study the effect of all these parameters on the feature obtained for image coding. In particular, we investigated the effect of the different parameters on the sparsity of the obtained coding and the locality of the features. These properties are indeed a major requirement for achieving good classification results.

Used databases

In this preliminary study, in order to compare easily our results with the ones published in the literature, we used two popular datasets, the van Hateren and the Berkeley image databases. The first one is a database of high-resolution calibrated monochrome images taken in defined illumination conditions1 , designed for various image processing tasks.

It contains approximately 4000 images of 1536x1024 pixels. The second one, the Berkeley database, is a collection of 481x321 and 321x481 natural images 2 . This database has been created to provide an empirical basis for image segmentation and boundary detection researches [START_REF] David | Learning to detect natural image boundaries using local brightness, color, and texture cues[END_REF]. It contains 300 different color images divided into a training set of 200 images, and a test set of 100 images. A subset of samples from this database is shown in figure 3.1.

Figure 3.1: A subset of 481x321 and 321x481 natural images selected from the Berkeley database [START_REF] David | Learning to detect natural image boundaries using local brightness, color, and texture cues[END_REF].

As shown in figure 3.1, the images contain a lot of borders, corners, textures and edges because they are created for the purpose of image segmentation as earlier said. This kind of images would facilitate the process of feature extraction using a RBM. Moreover, they do not contain a lot of flat areas.

Two approaches can be considered for feature extraction. The first one consists in the extraction of small patches that can be used as inputs of a DBN. The second one consists in reducing the size of the whole images to an acceptable value in such a way that they can be used directly as the inputs of the network. This second approach will be considered in the next chapter.

For now, as proposed by [START_REF] Ranzato | Factored 3-way restricted boltzmann machines for modeling natural images[END_REF], after gray-scale conversion, we have sampled 100, 000 random patches of size 16x16 pixels from these databases. This extraction step was followed by a normalization that we are going to consider more in depth in the next section. After that, the obtained image patches were used as a training set for an RBM.

Normalization

Data whitening

Usually, natural images are highly structured and contain significant statistical redundancies, i.e. their pixels have strong correlations [START_REF] Attneave | Some informational aspects of visual perception[END_REF][START_REF] Barlow | Redundancy reduction revisited[END_REF]. For example, it is well known that natural images bear considerable regularities in their first and second order statistics (spatial correlations), which can be measured using the autocorrelation function or the Fourier power spectral density [START_REF] Field | Relations between the statistics of natural images and the response properties of cortical cells[END_REF]. These correlations are due to the redundant nature of natural images (adjacent pixels usually have strong correlations except around edges). The presence of these correlations allows, for instance, image reconstruction using Markov Random Fields. It has thus been shown [START_REF] Bell | The 'independent components' of natural scenes are edge filters[END_REF][START_REF] Field | Relations between the statistics of natural images and the response properties of cortical cells[END_REF][START_REF] Olshausen | Emergence of simple-cell receptive field properties by learning a sparse code for natural images[END_REF]] that the edges are the main characteristics of the natural images and that they are rather coded by higher order statistical dependencies. It can be deduced from this observation that the statistics of natural images is not Gaussian (since the moments greater than order-two are zero for Gaussian distributions). This statistics is dominated by rare events like contours, leading to high-kurtosis long-tailed distributions.

Pre-processing the images to remove these expected order-two correlations is known as whitening. It has been shown that whitening is a useful pre-processing strategy in Independent Component Analysis (ICA) [START_REF] Hyvärinen | Independent component analysis: Algorithms and applications[END_REF][START_REF] Soman | machine learning with SVM and other kernel methods[END_REF].

It seems also a mandatory step for the use of clustering methods in object recognition [START_REF] Coates | An analysis of single-layer networks in unsupervised feature learning[END_REF]. Whitening being a linear process, it does not remove the higher order statistics or regularities present in the data. The theoretical grounding of whitening is simple: after centering, the data vectors are projected onto their principal axes (computed as the eigenvectors of the variance-covariance matrix) and then divided by the variance along these axes. In this way, the data cloud is sphericized, letting appear only the usually non orthogonal axes corresponding to its higher-order statistical dependencies.

More formally, vectors of observations x are linearly transformed to obtain new vectors ( x), which components are uncorrelated and which variances equals unity. In other words, the covariance matrix of the whitened data is equivalent to the identity matrix as follows:

E{ x xT } = I (3.1)
There are several equivalent ways to perform this whitening transform. One popular way is the use of EigenValue Decomposition (EVD) of the covariance matrix as follows:

E{ x xT } = EDE T (3.2)
where E is the orthogonal matrix of eigenvectors of E{ x xT } and D is the diagonal matrix of its eigenvalues, D = diag(d 1 , . . . , d n ). Whitening can thus be achieved by:

x whiten = x = ED -1/2 E T x (3.3)
where D -1/2 is the inverse square root of the diagonal matrix which can be computed as follows:

D -1/2 = diag(d -1/2 1 , . . . , d -1/2 n ) (3.4)
Figure 3.2 (right) shows a subset of 16x16 random whitened patches from the Berkeley database. Figure 3.2 (left) shows the corresponding original patches. It can be seen that after whitening, a lot of noise has been removed. Besides, the first and second statistical structures have also been removed. Thus, after data whitening, we assume that the final set of tiny-images is centered and whitened. Consequently the variance, σ 2 in equation 2.43 can be set to 1.

It is easy to see on the covariance matrix of a set of original patches from the van Hateren database (Figure 3.3) (first row) that pixels are strongly correlated to nearby pixels and weakly correlated to faraway pixels. These strong correlations can prevent the algorithms learning the feature space from rather focus on higher-order correlations. Instead it can force the model to get distracted by modeling order-two correlations. Thus if these correlations need to be eliminated before attempting to extract features, data whitening is required. Figure 3.3 (second row) shows the covariance matrix of the whitened patches for the same database. It shows that the whitened data became uncorrelated. However the higher order statistics corresponding to the difference between correlation and statistical dependence remains preserved. To build a set of statistically independent detectors, it will be required to find "factorial codes" such that the statistical distribution of the transformed data is as close as possible to the product of its components [START_REF] Bell | The 'independent components' of natural scenes are edge filters[END_REF][START_REF] Olshausen | Emergence of simple-cell receptive field properties by learning a sparse code for natural images[END_REF].

Local normalization

Another way to preprocess data is to perform local normalization. In this case, each patch x (i) is normalized by subtracting the mean and dividing by the standard deviation of its elements. For visual data, this corresponds to local brightness and contrast normalization. One can find in [START_REF] Coates | An analysis of single-layer networks in unsupervised feature learning[END_REF] a study of whitening and local normalization and their effect on a further classification task. However we can note that this study has been performed using two databases, NORB1 and CIFAR 2 , that 1 NORB dataset : www.cs.nyu.edu/ ylclab/data/norb-V1.0/ 2 CIFAR dataset : www.cs.utoronto.ca/ kriz/cifar.html have been especially designed for object recognition. We can also note that in [START_REF] Ranzato | Factored 3-way restricted boltzmann machines for modeling natural images[END_REF], the authors argue that whitening speeds-up the convergence of the algorithm without any justification. It could probably due to the fact that all variables have similar variances.

Unsupervised construction of the feature space

An RBM is usually trained as shown in figure 3.5, using the contrastive divergence learning procedure proposed by [START_REF] Hinton | Training products of experts by minimizing contrastive divergence[END_REF]. In order to present the general setup of the RBM training algorithm we will refer first on figure 3.5. A first set of weights 1 linking visible and hidden layers is taken at random. Thus from one image it is possible to compute a first configuration of the hidden layer units probabilities. From configurations of the hidden layer drawn from the probabilities, the visible layer is reconstructed. We obtain a so-called "confabulation" of the input image. The contrastive divergence (CD) is then computed for this particular image for weights and biases. However, in a practical implementation, this CD is not directly used for weights and biases updating. The results for a set of images taken at random and called a mini-batch are pooled together and used to update the parameters. This process is repeated for a specific number of epochs or until convergence.

Unfortunately, training a RBM is known to be difficult. Recent researches have shown that without a careful choice of learning parameters, well suited to specific data sets and RBM structures, learning algorithms can easily fail to model the data distribution correctly [START_REF] Desjardins | Parallel tempering for training of restricted boltzmann machines[END_REF][START_REF] Fischer | Empirical analysis of the divergence of gibbs sampling based learning algorithms for restricted boltzmann machines[END_REF][START_REF] Schulz | Investigating convergence of restricted boltzmann machine learning[END_REF]. This problem is often evidenced during learning. As illustrated in [START_REF] Hinton | A practical guide to training restricted boltzmann machines -version 1[END_REF], the update procedure of an RBM requires a certain amount of practical experience to decide how to set the values of different parameters, including the learning rate η, the initial and final momentums µ i and µ f , the weight-decay λ, the penalty term, the initial values of the weights, the size of the mini-batch γ, the number of epochs ε, the number of the hidden layers and the size of each hidden layer in order to learn the optimal features. In the next sections we will describe the most significant points concerning these parameters, which have been empirically investigated during our research work, to find out the optimal values. Note that a thorough description of these parameters and other questions can be found in [START_REF] Hinton | A practical guide to training restricted boltzmann machines -version 1[END_REF].

Overall organization of the network

RBM's were originally developed using binary visible and hidden units. However, other types of units such as Gaussian, binomial, and rectified linear ones can be used, for example see [START_REF] Hinton | A practical guide to training restricted boltzmann machines -version 1[END_REF][START_REF] Krizhevsky | Learning multiple layers of features from tiny images[END_REF][START_REF] Lee | Convolutional deep belief networks for scalable unsupervised learning of hierarchical representations[END_REF][START_REF] Norouzi | Stacks of convolutional restricted boltzmann machines for shift-invariant feature learning[END_REF]. The use of one of these unit types indeed depends on the problem to be solved. For instance, binary units with Bernouilli statistics work well in the case of handwritten digits, but they are not appropriate for multi-valued inputs like pixel levels. To deal with multi-valued data such as the pixel intensities in natural images, Hinton and Salakhutdinov [START_REF] Hinton | Reducing the dimensionality of data with neural networks[END_REF] replaced the binary visible units by linear units with independent Gaussian noise as first suggested by [START_REF] Freund | Unsupervised learning of distributions on binary vectors using two layer networks[END_REF]. This model has been successfully used in several other works such as [START_REF] Lee | Convolutional deep belief networks for scalable unsupervised learning of hierarchical representations[END_REF][START_REF] Norouzi | Stacks of convolutional restricted boltzmann machines for shift-invariant feature learning[END_REF][START_REF] Torralba | Small codes and large image databases for recognition[END_REF].

Within the framework of stochastic approaches, the first question raised by the model organization concerns the type of unit to use. We have shown that Bernouilli units are not well suited for image coding. We thus used Gaussian units for the input layer. However, for the upper layers of the network, binary Bernoulli units can be used.

In this case, the outputs act as an indicator function indicating that a feature is selected or not for the construction of the internal representation of the image. The neural analogy corresponds to a neuron switched on in the presence of a specific feature in the visual field and off when the feature is absent. The feature is coded by the weights of the previous layer. It has been shown that Gaussian-Bernoulli RBMs are efficient for gray-scale images modeling, such as speech waves in [START_REF] Jaitly | Learning a better representation of speech soundwaves using restricted boltzmann machines[END_REF] and faces images in [START_REF] Hinton | Reducing the dimensionality of data with neural networks[END_REF].

After preparing and pre-processing the different databases, we used a RBM with Gaussian visible and Bernoulli hidden units. However, training a Gaussian-Bernoulli RBM can be expensive, because we need a much greater number of weight updates than for an equivalent binary RBM. This problem becomes more difficult when the dimensionality of the input image is too large. To tackle this problem, in the present work we have followed the approach of [START_REF] Nair | Implicit mixtures of restricted boltzmann machines[END_REF] by first training the first layer of the DBN as a Gaussian-Bernoulli RBM and then uses its hidden units as input to higher RBM layers. In other words, the higher layers of the DBNs use RBMs with Bernoulli visible and hidden units, as pereviously said. Note that the first model parameters are frozen and the conditional probabilities of the first hidden unit values are used to generate the data to train the higher RBM layers. This process is repeated several times across the RBM layers in order to obtain a sparse representation of the initial data which will be used as the final output.

As previously mentioned, we first tested the RBM algorithm on general purpose natural images and then apply it on images created for the purpose of robot localization. In this experiment, the structure of the first RBM layer is 256 -256. Figure 3.6 (left) shows 256 global filters of size 16x16 pixels learned by training an RBM on 100, 000 whitened patches that are randomly sampled from Berkeley database. As we expected, [START_REF] Ranzato | Factored 3-way restricted boltzmann machines for modeling natural images[END_REF] (ε = 300, γ = 100, η = 0.02, µ i = 0.5, µ f = 0.9, and λ = 0.0002). Right: 256 features obtained from the same database by [START_REF] Ranzato | Factored 3-way restricted boltzmann machines for modeling natural images[END_REF].

these features look like band-pass oriented and localized edge detectors. The extracted features are quite similar to those obtained by [START_REF] Ranzato | Factored 3-way restricted boltzmann machines for modeling natural images[END_REF] shown in the same figure (right), or to those extracted by Independent Component Analysis (ICA) models in [START_REF] Hyvärinen | Independent Component Analysis[END_REF], and to sparse coding algorithms in [START_REF] Olshausen | Sparse coding with an overcomplete basis set: a strategy employed by v1?[END_REF][START_REF] Teh | Energy-based models for sparse overcomplete representations[END_REF].

A similar experiment was applied to the van Hateren database. In this experiment, the structure and the training protocol were similar to the Berkeley experiment [START_REF] Ranzato | Factored 3-way restricted boltzmann machines for modeling natural images[END_REF]. Figure 3.7 shows 256 global filters of size 16x16 pixels learned by training an RBM on 100, 000 whitened patches that are randomly sampled from the van Hateren database. These features are very close to the ones obtained from the Berkeley database.

The learning rate

The learning rate parameter, η, determines to what extent the newly acquired information will override the old information. Therefore, this parameter plays an important role for features extraction. In the gradient descent procedure, the learning rate is im- portant because some high and low values of η may suppress some of RBM's feature maps to become always inactive, and in fact dismiss some of features [START_REF] Norouzi | Stacks of convolutional restricted boltzmann machines for shift-invariant feature learning[END_REF]. Thus, in this work we have tested a set of different values for η and selected the one giving the higher number of active features.

Practically, using large values of η (e.g. 0.05) yielded to increase the reconstruction error and thus the weights (features extracted from the Berkeley database) have completely exploded within the first few epochs, i.e. the RBM did not learn anything. Thus, using large values of η increase the oscillation problem during the adjustments of the weights1 . However, when the value of η is reduced to 0.02, for instance, the network does not converge fast within the first few epochs as shown in figure 3.8 where some features are going to be extracted and appeared with more epochs2 . On the other hand, using very small values of η will slow down the convergence process and a lot of epochs are thus required to reach the equilibrium. For example if we reduced the learning rate from 0.02 to 0.002, the extracted features for both cases was quite different, as shown in figure 3.9 after 200 epochs. This figure shows that the convergence has been almost achieved when the learning rate was 0.02, while a lot of additional epochs were still required to achieve the convergence for the other case when the learning rate was 0.002. Another important fact is that, once the convergence was almost achieved for both cases, the number of extracted features with a learning rate of 0.02 was greater than the number of extracted features when the learning rate was 0.002 (see figure 3.10), where the first case has converged after 300 epochs while the second case has converged after 1000 epochs. A good way to set the learning rate parameter is to look at a histogram of weight updates and a histogram of the weights as illustrated in [START_REF] Hinton | A practical guide to training restricted boltzmann machines -version 1[END_REF]. The updates should be about 10 -3 times the weights. This way, we can reset (increase or decrease) the value of the learning rate.

The size of the mini-batch

Although it is possible to update the weights after estimating the gradient on a single training case, Hinton [START_REF] Hinton | A practical guide to training restricted boltzmann machines -version 1[END_REF] and other researchers [START_REF] Lee | Convolutional deep belief networks for scalable unsupervised learning of hierarchical representations[END_REF][START_REF] Norouzi | Stacks of convolutional restricted boltzmann machines for shift-invariant feature learning[END_REF] have experimentally demonstrated that it is more efficient to divide the training set into small "mini-batches" of 10 to 100 images1 . In this case, we adjust the weights after estimating the total gradient of the mini-batch, which means that we need to divide the total gradient computed on a mini-batch by the size of the mini-batch (γ), and thus the weights update procedure in equation 2.54 can be re-written as follows:

w i j ← w i j + η * ( v 0 i h 0 j -v n i h n j )/γ (3.5)
Usually, the ideal mini-batch size is equal to the number of different classes. Each mini-batch should contain one example of each class to reduce the sampling error while estimating the gradient for the whole training set from a single mini-batch [START_REF] Hinton | A practical guide to training restricted boltzmann machines -version 1[END_REF]. In this work, we have tried many different values of γ to examine its final impact on the feature extraction. It is noticed that when we use a large mini-batch size, for instance 200, the extracted features are not so different from those obtained using a mini-batch of 100, as shown in both experiments, figure 3.11. The total number of features is slightly higher when γ = 100, while when we use a small mini-batch, for instance 10, the RBM algorithm does not learn interesting features after hundred of epochs as shown in figure 3.12. Moreover, the convergence was not improved by an increased number of epochs (e.g. from 200 to 400 epochs) as illustrated in the same Therefore, the size of the mini-batch also plays an important role in the extraction of features. Furthermore, it has been shown that this process speeds-up the training process [START_REF] Hinton | A practical guide to training restricted boltzmann machines -version 1[END_REF]Salakhutdinov et al., 2007].

The initial values of weights and biases

Several ways can be used to initialize the weights. A possible one is to use small random values chosen from a zero-mean Gaussian distribution with a standard deviation, σ, of 0.01. Another way is to use small random values chosen from a uniform distribution. In fact, using larger random values will force the network to converge faster, which might lead to a worse final model.

Since we have proposed to use a Gaussian-Bernoulli RBM model, we have initialized the weights matrix using a Gaussian distribution as follows:

w i j ∼ N(µ, σ 2 ) (3.6)
where µ represents the mean and σ 2 represents the variance of the Gaussian distribution.

In this work, we have tested different values of the standard deviation, σ (for instance see figure 3.13). We can see that the convergence with high values of σ is slightly faster than with smaller values of σ. If we compare the extracted features shown in figure 3.13 with each other or even with the features shown in figure 3.10 (left)(obtained using σ = 0.01, they seem quite similar. Thus, in order to be sure that the network leads to a good final model, it is more appropriate to use a small value of σ like 0.01, as recommended in [START_REF] Hinton | A practical guide to training restricted boltzmann machines -version 1[END_REF]. Concerning the initial values of visible and hidden biases, one possible way is to initialize them all to zero. However, to encourage the sparsity, Hinton [START_REF] Hinton | A practical guide to training restricted boltzmann machines -version 1[END_REF] recommended to start the hidden biases with very large negative values of about -4 as we will see later (section 3.4.9).

Momentum

Momentum (µ) is a standard parameter used in many neural network applications.

It is added to speed-up the learning process of a RBM, smoothen the gradients and avoid getting stuck in local minima. So that, this term, together with the learning rate, controls the weights update and yield a modified update rule:

w i j ← µ * w i j + η * ( v 0 i h 0 j -v n i h n j )/γ (3.7)
where the momentum term must be between 0 and 1. More precisely, Hinton and other researchers have recommended to start with a momentum of 0.5 for the first several epochs (for example, the first five epochs) and a momentum of 0.9 for the rest of epochs [START_REF] Hinton | A practical guide to training restricted boltzmann machines -version 1[END_REF][START_REF] Lee | Sparse deep belief net model for visual area v2[END_REF][START_REF] Norouzi | Stacks of convolutional restricted boltzmann machines for shift-invariant feature learning[END_REF].

In fact, we have also tested different values of this factor. For instance, if we ignore the effect of this term by using a momentum of 1, the network converges towards a wrong solution as shown in figure 3.14. Because when µ is equal to 1, the effect of the previous weights (the Left-Hand Side of equation 3.7) will be much higher than the effect of the gradient (the Right-Hand Side of equation 3.7) since we use a small learning rate. It means that using high values of momentum also lead to increase the oscillation in the weights adjustments as in the case of learning rate. Therefore, using a smaller momentum, like 0.5, for the first several epochs, decreases the effect of the initial weights and let the gradient make more influence on the network to converge to the right solution. After 5 epochs the initial weights become more compatible with the model (they fit the model) and, in this case, it is possible to increase the momentum to 0.9, for example, in order to increase the network convergence speed. This way to proceed ensures the stability of the learning process.

Weight decay

Weight-decay (or weight-cost (λ)) is another important factor added to the normal gradient as shown in equation 3.8. This regularization term penalizes large parameter values, such as weights, which sometimes happens during the learning process. This yields the following update rule:

w i j ← µ * w i j + η * ( v 0 i h 0 j -v n i h n j )/γ -λ * w i j (3.8)
In general, the values of λ should be typically ranged from 0.01 to 0.00001. Similarly to previous factors, different values of (λ) have been investigated in this work. For instance, see the extracted features shown in figure 3.15 using a weight-decay of 0.02 and 0.002 respectively. This figure obviously demonstrates two facts: firstly, when we use a large value of λ the RBM learns flat features. This is due to the fact that the impact of the weight-cost becomes much higher than the impact of the gradient descent and thus all weights reach very large negative values. Secondly, when we use a smaller value, a set of features have emerged. Therefore, a large value of λ forces the network to have less effect of the gradient descent. In other words, we need to select a value of λ, so that we must make a balance between the two expressions (i.e. ( v 0 i h 0 jv n i h n j ) and (λ * w i j )) of equation 3.8.

It is important to multiply the derivative of the weight-decay by the learning rate.

Otherwise, changes in learning rate change the function that is being optimized rather than just changing the optimization procedure [START_REF] Hinton | A practical guide to training restricted boltzmann machines -version 1[END_REF]. Weight-decay is typically not applied to the hidden and visible biases because they are less likely to cause overfitting1 . Also, the biases sometimes need to be quite large.

There are other forms of the weight-decay that can be used to achieve sparsity and locality in the features. One of them called "L2 norm " which is half of the sum of the squared weights times a coefficient which is called the weight-decay. Another form called "L1 norm " which is the use of the derivative of the sum of the absolute values of the weights. L1 norm weight-decay often leads to strongly localized receptive fields, because it causes many of the weights to become exactly zero whilst allowing few of them to increase significantly. Moreover, Hinton has mentioned four different reasons to use these weight-cost terms in an RBM [START_REF] Hinton | A practical guide to training restricted boltzmann machines -version 1[END_REF]:

1. It improves the generalization to new data by reducing overfitting to the training data.

2. It makes the receptive fields of the hidden units smoother and more interpretable by shrinking useless weights.

3. It increases the sparsity for the extracted features.

4. It improves the mixing rate of the alternating Gibbs Markov chain. So, with small weights, the Markov chain mixes more rapidly.

Penalty term

A popular way to minimize the information content in the code is to make it sparse or low-dimensional. In this context, a vector is called sparse if it contains only a minimum number of active (non-zero) units. Sparsity estimation (or sparse recovery) is playing an increasingly important role in statistics and machine learning communities, because it simplifies further tasks like the classification process and it is a useful way to reduce the dimensionality of data with neural networks [START_REF] Hinton | Reducing the dimensionality of data with neural networks[END_REF]].

Usually the model parameters are trained through the maximization of the loglikelihood of the reconstructed data. This maximization problem corresponds to learning w i j , b i , and c j to minimize the energy of states drawn from the data distribution.

In the meantime, the hidden unit activations have to be sparse. To achieve that goal, it is possible to apply "L1 norm " regularization, however, it is expensive because the Gaussian-Bernoulli RBM representation uses stochastic binary variables. Hence, several other methods have recently been developed [START_REF] Lee | Sparse deep belief net model for visual area v2[END_REF][START_REF] Lee | Convolutional deep belief networks for scalable unsupervised learning of hierarchical representations[END_REF][START_REF] Mairal | Supervised dictionary learning[END_REF]Olshausen andField, 1996, 1997] to achieve the sparsity goal for RBMs. Their methods rely on adding a penalty or regularization term to improve the sparsity of the data representation. For instance, [START_REF] Lee | Sparse deep belief net model for visual area v2[END_REF] proposed to couple the maximum likelihood of contrastive divergence (CD) with a regularization term that penalizes non-selective units. Similarly, [START_REF] Nair | 3-d object recognition with deep belief nets[END_REF] used the cross-entropy measure between the actual and desired distributions to compute the penalty. In more details, in the latter method [START_REF] Nair | 3-d object recognition with deep belief nets[END_REF], the additional update is a penalty proportional to qp, where p is the "sparsity target", which represents the desired probability that a unit is active, and q is the penalty term which encourages the actual probability of being active. As illustrated in [START_REF] Hinton | A practical guide to training restricted boltzmann machines -version 1[END_REF], the sparsity of a hidden unit is therefore computed by a process of averaging its activation across training as follows:

q t = λ * q t-1 + (1 -λ) * q current (3.9)
where λ represents the decay-rate which can be between 0.9 and 0.99, q current is the average hidden activation probability that a unit is active for the current mini-batch. The cross entropy between the desired and actual activation distributions is used as a penalty measure as follows:

cost = -plogq -(1 -p)log(1 -q) (3.10)
where the sparsity target, p, can be between 0.01 and 0.1.

This has the derivative of qp and is scaled by a meta-parameter called "sparsitycost". So, sparsity adds three meta-parameters to the model which are: the sparsity including m examples, we pose the following optimization problem:

minimize {w i j ,b i ,c j } - m ∑ l=1 log ∑ h P(v (l) , h (l) ) + λ n ∑ j=1 p - 1 m m ∑ l=1 E[h (l) j |v (l) ] 2 (3.12)
where E[.] is the conditional expectation given the data, once again p is the sparsity target controlling the sparseness of the hidden units h j , and λ is the sparsity cost. Thus, after involving this regularization in the CD learning algorithm, the gradient of the sparsity regularization term over the parameters (weights w i j and the hidden biases c j ) can be written as follows:

w i j ← µ * w i j + η * ( v 0 i h 0 j -v n i h n j )/γ -λ * (p - 1 m m ∑ l=1 p (l) j ) (3.13) c j ← c j + η[ h 0 j data -h n j recon ] -λ * (p - 1 m m ∑ l=1 p (l) j ) (3.14)
where m, in this case,represents the size of the mini-batch and p

(l) j σ(∑ i v (l)
i w i j + c j ). It has been shown that the sparse RBM learning algorithm can capture interesting high-order features from natural image statistics [START_REF] Lee | Sparse deep belief net model for visual area v2[END_REF]. The hope is that such a learning algorithm remains capable to capture higher-order features from various databases, such as a database created for the purpose of robot localization.

The previous experiments have been achieved using the conventional Gaussian-Bernoulli RBM learning algorithm, where the question of sparsity has been included in this algorithm using a penalty term as illustrated earlier. We have also implemented the sparse RBM which is developed in [START_REF] Lee | Sparse deep belief net model for visual area v2[END_REF]. However, we have not observed a big difference in features extraction using both learning algorithms (see for instance figure 3.18). This similarity of features for locality and sparsity confirms that the penalty term in the regular RBM and the sparsity target in the sparse RBM can capture sparse codes from the initial images. Therefore, using any of them leads to extract sparse features.

The number of hidden units

Usually, three different situations are distinguished in the literature for the size of the hidden layer : less than the size of the input layer (under-completeness), equal (completeness) or greater (over-completeness). These situations can be related to the feature set of ICA that is, by construction, always complete. The question of using overcomplete feature sets has been first raised in [START_REF] Olshausen | Sparse coding with an overcomplete basis set: a strategy employed by v1?[END_REF]. It seems that in the visual system, working with an over-complete feature alphabet makes the coding more adaptive to natural images variability. Thus, for a particular image, the final coding is more precise, even if the over-completeness reintroduces a kind of redundancy. In fact, the optimal size of the hidden layer depends on several things: the size of the visible layer, the target to achieve, and the redundancy of the patches in the training set. More precisely, the size of the hidden layer should be compatible with the size of the visible layer. However, if the sparsity target is very small, more hidden units could be used. Contrarily, if the training cases are highly redundant, as they typically will be for very big training sets, fewer units are necessary [START_REF] Hinton | A practical guide to training restricted boltzmann machines -version 1[END_REF] for two reasons: first, it may be quite reasonable to use less output units if in 100, 000 training images each image is repeated for instance 1, 000 times. Otherwise it's timeconsuming. Second, when you feed similar images to the network, the use of many parameters would not change the results as shown in figure 3.19. In this work, since our training set is highly redundant, the size of the first hidden layer could either be equivalent to the size of the visible layer or reduced to half (more or less) of the visible layer size. The same scenario can be used for higher hidden layers. This proposition has been investigated using different sizes of the hidden layer.

For instance, the features shown in figure 3.9 (left) were obtained using an equivalent visible and hidden layers size (256 -256 units), while figure 3.19 (top) shows features obtained using an under-complete hidden layer (256 -128 units) and (bottom) shows features obtained using an over-complete hidden layer (256 -512 units). These experiments show that when we reduce the size of the hidden layer, the network extracts similar features, but the matrix is fully used, while when we increase the size of the hidden layer, a lot of the features were flat. However, these facts cannot be generalized to other databases. Bottom: 512 features learned using the same conditions.

Effect of normalization on the feature space

In the previous sections, we have seen that several parameters (for example the sparsity term, the number of hidden units, the mini-batch size, etc.) play an important role in obtaining interesting features. In this section we investigate the effect of whitening and normalization on the detection of features using a RBM learning algorithm.

These factors, orthogonal to the learning algorithm itself, can have a large impact on performances.

For this task, we have conducted extensive experiments using datasets of random patches sampled from van Hateren and Berkeley natural image databases respectively.

The random patches extracted from these databases were normalized or whitened in two separate pre-processes. In both experiments, an over-complete structure (256 -512) of the first RBM layer was used. 3.20 (left) shows features extracted using the locally normalized data, while figure 3.20 (right) shows features extracted using the whitened one. It is obvious that the features extracted from the whitened data are more localized. Data whitening clearly changes the characteristics of the learned bases. One explanation could be that the second order correlations are linked to the presence of low frequencies in the the ones obtained with convolutional networks [START_REF] Lee | Convolutional deep belief networks for scalable unsupervised learning of hierarchical representations[END_REF] for which no whitening is applied to the initial dataset. We can mention that these differences between normalized and whitened data have already been observed in [START_REF] Krizhevsky | Learning multiple layers of features from tiny images[END_REF] and related to better performances for normalized data on CIFAR-10 in an object recognition task.

To try to understand more deeply why features obtained from whitened or normalized patches are different, we computed the mean Fourier spectral density of the patches in the two conditions and we compared them to the same function for the original patches. We plotted the mean of the Log Fourier power spectral density of all the patches according to the Log of the frequencies shown in figure 3.24. The scale law in 1/ f α characteristic of natural images is approximatively verified as expected for the initial patches. For the local normalization it is also conserved (the shift between the two curves is only due to a multiplicative difference in the signal amplitude between the original and the locally normalized patches). It means that the frequency composition of the locally normalized images differs from the initial one only by a constant factor. The relative frequency composition is the same as in initial images.

On the contrary, whitening completely abolishes this dependency of the signal energy with frequency. This means that whitening equalizes the role of each frequency in the composition of the images1 . This suggests a relationship between the scale law of natural images and the first two moments of the statistics of these images. It is interesting to underline that we have here a manifestation of the link between the statistical properties of an image and its structural properties (in terms of spatial frequencies). This link is well illustrated by the Wiener-Khintchine theorem and the relationship between the autocorrelation function of the image and its power spectral density. Concerning the extracted features, these observations allow to deduce that an equal representation (in terms of amplitude) of all the frequencies in the initial signal gives rise to an over-representation of high frequencies in the obtained features. This could be due to the fact that, in whitened data, the energy contained in each frequency band increases with the frequency while it is constant in initial or normalized images.

However the result depends on the database used and consequently on the spatial frequencies contained in the initial patches. The fact that local normalization preserves (to a constant value) the same frequency composition as in initial data tends to prove that normalization does not entirely remove second-order correlations. [START_REF] Olshausen | Sparse coding with an overcomplete basis set: a strategy employed by v1?[END_REF] showed that, with whitening, ICA mainly retains filters in a narrow range of spatial frequencies. Low spatial frequencies are under-represented in the obtained result. This is clearly what we obtain here with whitening but not with normalization, which tends to save a broader range of spatial frequencies.

We are going to see in the next two chapters how the final database used to test our SPR model behaves according to these two normalization methods and how these changes in spatial frequency composition affect classification performances.

We can argue that low frequency dependencies are related to statistical correlation between neighbor pixels. Thus, the suppression of these second order correlations would suppress these low frequencies in the whitened patches. The resulting features set is expected to contain a larger number of low frequency less localized features, what is actually observed.

Summary

In this chapter, we have first conducted experiments on different datasets and we have shown that our RBM algorithm captures high-order interesting features similar to those obtained by the state-of-the-art. This underlines that the algorithm has been successfully implemented. We have seen that the appropriate values of these parameters are typically found by trial and error. This task is very tricky and confirmed that the stochastic gradient learning of an RBM can easily diverge, if the associated parameters are not chosen carefully [START_REF] Fischer | Empirical analysis of the divergence of gibbs sampling based learning algorithms for restricted boltzmann machines[END_REF][START_REF] Schulz | Investigating convergence of restricted boltzmann machine learning[END_REF]. Our findings are roughly in accordance with those proposed in the most recent literature [START_REF] Hinton | A practical guide to training restricted boltzmann machines -version 1[END_REF]. Finally, we have seen that data normalization significantly affects the detection of features by extracting higher semantic level features than whitening.

Chapter 4

Model presentation and properties

Introduction

In the preceding chapters we have first seen the main approaches to SPR and we have focused on a new way of building a feature space appropriate for SPR, the use of Deep Belief Networks (DBNs). In the previous chapter we have presented a thorough set of experiments designed to precise the conditions for obtaining this appropriate feature space.

In this chapter we are going to put at work all of these observation in a model able to perform SPR. We will first present the overall organization of the proposed model and then the different conditions of use of this model in the context of SPR, including image pre-processing and the use of tiny images. We will study what kind of features we obtain in these specific conditions and how they can be used for image classification. Thus, two main questions will be raised here : what kind of features will be extracted from tiny images and how the feature space is affected by the normalization procedure in this specific case? The present chapter focuses on describing these approaches and their characteristics in the context of image coding. We assume that the use of this coding method (based on the assumption that sparse features are extracted)

will increase the linear separability of the data representation, so that a simple classifier like softmax regression in the feature space will suffice to determine the robot place according to a given image.

Databases description

However, before describing the organization and study the properties of the model, we are going to present the databases used for the experiments of this chapter. In particular we will here discuss the way these databases are transformed in order to make them suitable for image classification and SPR.

The WILD database

The RBM algorithms seen in the previous chapter used random patches sampled from natural images. We are interested to investigate our RBM model using small tiny images. In this context, there is a difference between object and scene recognition. One major question is, for object recognition, the role of focusing. It seems obvious that when the objects are aligned (focused at the center of the images) the feature set build by a DBN is different from the one with unaligned objects. To investigate the effects of the alignment technique on the detection of features we used a new database called "Labeled Faces in the Wild database" (LFW). Contrarily to previous ones, this database is designed for classification but it is simpler than NORB or CIFAR-10. It has been already used in the literature in such a way that we can compare our results with previous ones and is suitable, as we have said, for studying the effect of object alignment or focusing.

The LFW dataset is a collection of 250x250 color faces designed for studying the problem of unconstrained face recognition [START_REF] Gary | Labeled faces in the wild: A database for studying face recognition in unconstrained environments[END_REF]. This database contains 13, 233 images of 5, 749 people collected from the web [START_REF] Gary | Labeled faces in the wild: A database for studying face recognition in unconstrained environments[END_REF] 1 . An alignment technique is used to normalize the faces. As a result, the noses, eyes, eyebrows, mouths, and head limits become aligned.

For the centered faces, background surrounding each face is not useful. Thus, as

proposed in [START_REF] Nair | Rectified linear units improve restricted boltzmann machines[END_REF], we have eliminated the background information using a 144x144 window from the center of each face, as if the face would have been at the center of an attentional window.

The COLD database

The COLD database (COsy Localization Database) was originally developed by [START_REF] Ullah | The cold database[END_REF] for the purpose of robot localization1 . It is the main database on which we have chosen to validate our model. The main reason is that it has been used to produce what can be considered as the state-of-the-art results in SPR. This is naturally to these results we want to compare the results obtained by our model. The typical input dimension for a DBN is approximately 1000 units (e.g. 30x30 pixels). Dealing with smaller patches could make the model unable to extract interesting features. Using larger patches can be extremely time-consuming during feature learning. Additionally the multiplication of the connexion weights acts negatively on the convergence of the CD algorithm. The question is therefore how to scale the size of realistic images (e.g. 300x300 pixels) to make them appropriate for DBNs?

Three solutions can be envisioned. The first one is to select random patches from each image as done in [START_REF] Ranzato | Factored 3-way restricted boltzmann machines for modeling natural images[END_REF], the second is the use of convolutional architectures, as proposed in [START_REF] Lee | Convolutional deep belief networks for scalable unsupervised learning of hierarchical representations[END_REF], and the last one is to reduce the size of each image to a tiny image as proposed in [START_REF] Torralba | Small codes and large image databases for recognition[END_REF]. The first solution extracts local features and the characterization of an image using these features can only be made using BoWs approaches we wanted to avoid. The second solution shows the same limitations as the first one and additionally gives raise to extensive computations that are only tractable on GPU architectures. Features extraction using random patches is irrespective of the spatial structures of each image [START_REF] Norouzi | Stacks of convolutional restricted boltzmann machines for shift-invariant feature learning[END_REF]. In the case of structured scenes like the ones used in SPR these structures bear an interesting information.

Besides, tiny images have been successfully used [START_REF] Torralba | Small codes and large image databases for recognition[END_REF]) for classifying and retrieving images from the 80-million images database developed at MIT 1 . Torralba showed that the use of tiny images combined with a DBN approach led to code each image by a small binary vector defining the elements of a feature alphabet that can be used to optimally define the considered image. The binary vector acts as a bar-code while the alphabet of features is computed only once from a representative set of images. The power of this approach is well illustrated by the fact that a relatively small binary vector (like the ones we use as the output of our DBN structure) 1 The 80-million database is available at : http://groups.csail.mit.edu/vision/TinyImages/ An nonaligned face An aligned face [START_REF] Gary | Labeled faces in the wild: A database for studying face recognition in unconstrained environments[END_REF].

largely exceeds the number of images that have to be coded even in a huge database (2 256 ≈ 10 75 ). So, for all these reasons we have chosen image reduction.

Thus for the WILD database, the images were reduced to 32x32 pixels for the aligned and non-aligned (original faces) images as shown in figure 4.5.

For the COLD database they were reduced to 32x24 pixels (figure 4.6) to approximately save the aspect ratio of the initial images (640x480). As for the WILD database, after this reduction, the tiny images are still fully recognizable as shown in the same figure. The final set of tiny gray images (a new database called tiny-gray-COLD) will therefore be used as input for the normalization algorithms.

Image conversion

Although color images have been recorded during the exploration, only gray images are used according to [START_REF] Ullah | The cold database[END_REF]. Therefore, the whole images are converted Figure 4.8 shows the most interesting features extracted from respectively the nonaligned faces database (left) and the aligned one (middle). These features have been selected as the ones having the lowest entropy among all the 1024 features obtained in both experiments. These results are quite similar to the ones published by [START_REF] Nair | Rectified linear units improve restricted boltzmann machines[END_REF] as shown on the same figure 4.8 (right). The only difference is that the authors in [START_REF] Nair | Rectified linear units improve restricted boltzmann machines[END_REF] used color images as input to the RBM. The aligned database leads to features representing faces or parts of faces (like eyes, mouth or noses) as well in our case as in [START_REF] Nair | Rectified linear units improve restricted boltzmann machines[END_REF]. Completeness Another important point is that a large number of features did not converge to a significant pattern even after extensive computation. Contrarily to what happened with the van Hateren and Berkeley databases for which the number of extracted features increased with the number of hidden units, it was not here possible to obtain the same result. We have also tried other experiments using over-complete structures (1024 -4096), but it does not show any improvement in the extracted features with a much greater computational load.

Thus, it could be interesting to investigate the RBM algorithm ability to extract similar features, reducing the number of hidden units. To do so, an under-complete structure of 1024 -256 has been investigated using the aligned database, as shown in figure 4.9. We can observe that the features extracted using an under-complete structure are similar to the most significant of those extracted using a complete structure. The lack of improvement using a more important number of hidden units suggests to use such under-complete structure for the final classification. We will see later if this result is confirmed with the COLD database.

Normalization The question of whitening impact has also been investigated on the LFW database as we have done on the van Hateren and Berkeley databases. Two experiments with aligned and non-aligned LFW normalized image patches gave the features shown in figures 4.10 and 4.11 respectively. Note that, in this case, a complete RBM structure was used. Two observations can be made : first, all the features gave significant patterns and second, the obtained features seem to cover a broader range of spatial frequencies especially in the case of the non aligned database. Thus the result seems to be different from the one obtained with whitened data and shown before (figure 4.9).

Such features seem to be more promising for reconstructing original or new faces.

We can close up this result with the one published years ago [START_REF] Turk | Eigenfaces for recognition[END_REF] showing that with a face database, the principal axes of a PCA correspond to "eigen- faces". Otherwise stated, the first eigen-vectors of the PCA correspond to the main shapes of faces from which any particular face can be reconstructed. We have here an interesting parallel with PCA and linear methods. Instead of extracting the decorrelated characteristics of an input signal or even the independent components on the basis of linear transforms, RBMs extract much richer and numerous statistically independent components from a similar database.

However, these results do not show the difference we have observed with whitened data between aligned and non aligned face images. Although, in whitened data, the features obtained with the aligned faces consist in parts of faces and are rarely "eigenfaces", with normalized data, the features seem to code for larger structures like the structures of the whole faces. To summarize, the normalized data produces more features as well in the case of non-aligned as aligned faces. These features seem to represent high-level semantic parts of the images and more frequently "eigen-faces" [Turk others. Using a smaller learning rate will slow down the convergence process but it allows the network to converge to a better solution (i.e., the network extracts more interesting features). It has also been shown that when modeling real-valued Gaussian visible units, training the first RBM layer of features typically requires a much smaller learning rate to avoid oscillations [START_REF] Salakhutdinov | Deep boltzmann machines[END_REF]]. But we observed this effect only on the COLD database.

The features shown in figure 4.13 have been extracted by training the first RBM layer on 137, 069 whitened image patches (32x24 pixels) sampled from the COLD database. Some of them represent parts of the corridor, which is over-represented in the database. They correspond to long sequences of images quite similar during the robot exploration. Some others are localized and correspond to small parts of the initial views, like edges and corners, that can be identified as room elements (i.e. they are not specific of a given room). The features shown in figure 4.14 have been obtained using the normalized data. As previously observed for the other databases, the obtained features look very different.

Parts of rooms are much more represented than for the whitened database and it seems that the range of spatial frequencies covered by the features is much broader confirming Upper layers In order to understand how these low level features are used to form higher level representations in the upper layer of the DBN we have performed a similar computation as in [START_REF] Lee | Sparse deep belief net model for visual area v2[END_REF]. figures 4.15 and 4.16 show the 128 high level features (first left patch in each column) formed with the linear combination of features in the preceding layer. The combination of these initial features in higher RBM layers correspond or partially correspond to larger structures, more characteristics of the different rooms (figures 4. 15 and 4.16).

However, the high level feature space obtained with locally normalized data shows patterns that can be more easily related to room structures than those from whitened data.

The obtained codes in the different conditions of normalization were used directly as the final input vector of the classification process that we will study in the next chapter.

Summary

After the relevant works have already been presented and discussed in the previous chapter, in this chapter we have focused on some specific characteristics of our model for SPR with an emphasis to the following points:

• The use of tiny images.

• The differences in the obtained features between whitening and local normalization.

Image conversion and normalization

This chapter has provided a detailed description of the proposed model stages. In particular, we first presented the different functions (image color conversion, image reduction, and image normalization) required to pre-process images. On the other hand, we have noted that without any initial correction (without whitening and without local normalization of brightness and illumination) of the patches, the RBM algorithm converges to a wrong solution. A normalization of any kind of the initial patches is necessary for a RBM to get localized features. Then, the second part of these experiments have focused on studying the final impact of whitening and normalization on features extraction. We have seen that data whitening encourages the RBM algorithm to learn very localized features, while data normalization forces the RBM algorithm to converge toward features that cover a larger spatial frequency spectrum and especially the low frequencies able to capture the overall organization of the scene.

Use of tiny images

We have proposed to use tiny images instead of image patches that would have required to use BoWs approaches and we have shown that DBNs can be successfully used in this case to extract sparse efficient features. Working with size-reduced images seems indeed simpler than BoWs approaches.

Sparse code A sparse code makes the data linearly separable in the feature space and thus allows to use a simple linear classifier, like softmax regression, to achieve an accurate and rapid SPR. As a consequence, we proposed to use RBM approaches to extract a set of independent features that can be used in image coding. We assumed that these features must be sparsely represented and thus they can be used to create a linear separable code in the feature space. This process can be repeated several times until the CD learning algorithm converges towards a sparse representation of the initial images.

Linear separability If this assumption is true, a simple classifier is then sufficient to determine the robot place according to the given input image. To investigate this hypothesis, we proposed to test the classification phase first using a linear classifier, like softmax regression, and then using a nonlinear classifier, like SVM. The hope is that DBN computes a linear separable signature for the initial data. These questions will be studied in the next chapter.

Completeness and network structure Finally, our RBM learning algorithm extracts interesting features in the cases of over-complete, complete, and under-complete structures. This allows us to use an under-complete structures of DBNs to speed-up the learning process and thus simplifies the classification process. Besides, DBNs perform non-linear dimensionality reduction and they can learn short binary codes that allow very fast retrieval of documents or images [START_REF] Hinton | Reducing the dimensionality of data with neural networks[END_REF]Salakhutdinov and Hinton, 2007]. More precisely, the high-dimensional data can be converted to low-dimensional codes by training a deep belief network. This reduction speeds up the classification process. It has been formally demonstrated that this reduction works much better than principal components analysis (PCA) as a tool to reduce the dimensionality of data [Salakhutdinov and Hinton, 2007].

Alignment We have also considered the question of the effect of focusing the gaze of the system towards a region of interest through a study of the feature extracted from an aligned and a non aligned face database. As expected, focus the image on a specific class of objects allows the system to extract more semantically relevant features than when the images are not centered on the object to be considered. However, it could seem contradictory with the view-based scene recognition approach we have adopted since focusing on objects could require to recognize them before. We just want to mention the numerous recent works on attentional focalization on proto-objects or region of interest [START_REF] Walther | Modeling attention to salient proto-objects[END_REF]] that open the vicious circle : to recognize an object, it is required to center it in the visual field and, in the meantime, to center it, it must have been recognized before.

The COLD database is obviously uncentered. So we would wait for unspecific features with a low semantic level. This is not exactly the case due to the way the robots acquire the images : for example in corridors, the images are more centered due to the high level of constraints in the movements of the robots and the repetitive nature of the images. In this case, the extracted features will be more semantically significant. If a robotic system is endowed with a mechanism that attracts its gaze to specific views, it will have an over-representation of these view in its dataset and these views will be learned as independent features as in natural systems (e.g. the existence of specific cells in the infero-temporal cortex of mammals).

easy comparison with our own results. The authors in [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF] We can see from these results that the system is quite robust to the changes of illumination conditions and the overall performance is almost identical. These graphs have been taken from [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF].

Based on their method, they have got an average of correct classification of 90.5%

for Saarbrucken laboratory, 85.58% for Freiburg laboratory and 90.38% for Ljubljana laboratory. These average results have been obtained when the illumination conditions were similar for the training and testing. However, the performances decrease for experiments were conducted under various illumination conditions. In this case they have reached classification rates of 82.96% for Saarbrucken laboratory, 73.24% for Freiburg laboratory and 83.69% for Ljubljana laboratory. Finally, they have observed that there is a decrease in performance for the Freiburg laboratory. This can be caused by the glass walls in Freiburg laboratory and the fact that the cameras were mounted significantly lower than for the other laboratories, resulting in less diagnostic information in some of the images [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF].

As a conclusion, these methods lead to notable classification rates, however, they are based on sophisticated classification techniques like SVM. Also, the classification results decreased in the case of testing under different illumination conditions, which indicates that these models remain sensitive to these changes.

Recognition of places based on DBNs and tiny images

In this section, we present the classification result of our model, based on DBNs and a direct use of tiny images. We follow the same training and testing protocols as in [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. Also, we interpret and compare our results with the work of [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. Finally, we investigate the robustness of our results to the illumination conditions.

It was stated at the beginning of this chapter that after image coding, the final step is to use a classification algorithm to the actual recognition on the basis of the features extracted from the input data, i.e. using the feature space. In the present section, we will show the classification results using a simple linear classifier like softmax regression [START_REF] Ng | Cs229 lecture notes on machine learning[END_REF] and a nonlinear classifier like Support Vector Machines (SVMs) [START_REF] Cristianini | An Introduction to Support Vector Machines and Other Kernel-based Learning Methods[END_REF][START_REF] Vapnik | The nature of statistical learning theory[END_REF] respectively. Assuming that the non-linear transform operated by DBN improves the linear separability of the data, a simple regression method would suffice to perform the classification process. We have seen that DBNs are able to extract sparse features from a large amount of images and, using these features, we can create sparse representations of the initial images.

However, if we assume that the problem has not been made linearly separable by DBNs, a simple linear classifier is not sufficient and therefore a nonlinear classifier, like SVMs, will be required to perform the classification process. Studying the classification process using a linear and a nonlinear classifiers would definitely demonstrate whether the linear separability of the data has been obtained by DBNs or not.

The different experiments presented in the preceding chapters have suggested to use an under-complete structure for SPR. We have tested different size of the DBN and concluded that the optimal structure of the DBN for SPR using the COLD database is 768 -256 -128. We have used this network structure in all the results presented here unless otherwise stated.

Classification results using a softmax regression

The samples have been taken from each laboratory and each illumination condition were trained separately, as in [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. For each image, the softmax network output gives the probability of being in each room. According to the maximum likelihood principle, the largest probability value gives the decision of the system. In this case, we obtain an average of correct answers ranging from 50% to 76% according to the different conditions and laboratories as shown in figure 5.2.

Note that the classification results shown in figure 5.2 have been obtained using the code generated by the features extracted without including the regularization term which plays a key element in improving the sparsity property for the features.

Classification results using support vector machines

Figure 5.3 shows the classification results using a SVM classifier1 with a polynomial kernel of degree 2. In this experiment, we have also used the same protocol for both training and testing as in the previous experiment. This figure shows that the average of correct answers is still ranging from 50% to 75% for the different conditions and laboratories. For verification, we have also tried to use this nonlinear classifier with different kernels (linear, radial basis function, sigmoid function, and precomputed kernel). All of them gave very close results to the polynomial one. Furthermore, we have As we have previously said, we can thus conclude that the feature space we have obtained with DBN is linearly separable for the current classification problem.

Concerning the classification results achieved by the linear regression, they seem to be worse compared with the state-of-the-art results [START_REF] Guillaume | Temporal bag-of-wordsa generative model for visual place recognition using temporal integration[END_REF][START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. More precisely, the results obtained by [START_REF] Guillaume | Temporal bag-of-wordsa generative model for visual place recognition using temporal integration[END_REF] have an average of correct recognition of 80% based on GIST descriptor and 81.24% based on CENTRIST descriptor for the three different laboratories of the COLD database. Also, the results in [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF] have an average of correct answers of 83% based on more sophisticated techniques (use of SIFT detectors followed by a SVM classification) for the same three laboratories. While in our case, the results have

Encouraging sparse hidden activities

Since the use of the nonlinear classifier does not change or improve the classification results, thus we should think about another way to improve them. A possible way relies on encouraging the sparsity property for the hidden activities. Improving this property should allow final recognition results improvement through linear separability data increasing. To achieve that, several factors, including the learning rate, the weight decay, and the penalty term could have some impact. In particular, adding a penalty term to encourage hidden activation units to be sparse would significantly change the overall classification results. We have started by decreasing the learning rate and the weight cost to 0.001 and 0.0001 respectively. After obtaining the code, the classification process was performed in the feature space as shown in figure 5.4. Unfortunately, the results seem to be similar for COLD-Ljubljana laboratory and worse for COLD-Freiburg and COLD-Saarbruecken laboratories compared with the experiment shown in figure 5.2. We thought that we have obtained these worse results because of decreasing the weight decay, thus we kept the learning rate unchanged and we increased the weight cost to 0.0008. However, the results shown in figure 5.5 are still very close to the results obtained with a weight cost of 0.0001. This underlines that these factors do not improve the sparsity and thus they did not have any real impact on changing the final classification results. Based on these experiments, we can observe two facts: First, we noted that in the case of the COLD database, using a learning rate ranging from 0.001 to 0.005 does not affect or change the features too much. The number and types of features were quite similar. The only difference is that the network will converge faster if we use a larger learning rate, however, after a lot of epochs, any learning rate value in the above range will let the network converge towards similar features. Secondly, We have seen that using a weight decay ranging from 0.0001 to 0.0008 does not change the results. This indicates that any value in this range is sufficient to penalize large values that could happen during the learning process.

However, by adding a penalty term which particularly aims at encouraging the sparsity on hidden activation units, the final average classification scores are significantly increased, as shown in figure 5.6. In this experiment, we obtained an average of correct answers ranging from 65% to 80% according to the different conditions and laboratories as shown in figure 5.6. It has been shown that adding this term effectively improves the sparsity of the data representation through encouraging hidden unit activations to be sparse [START_REF] Hinton | A practical guide to training restricted boltzmann machines -version 1[END_REF][START_REF] Lee | Sparse deep belief net model for visual area v2[END_REF][START_REF] Lee | Convolutional deep belief networks for scalable unsupervised learning of hierarchical representations[END_REF][START_REF] Mairal | Supervised dictionary learning[END_REF]Olshausen andField, 1996, 1997]. More explanation of this term can be found in chapter 3. Compared to the previous experiments shown in figure 5.2, the average results of correct classification were: 69.9%, 57.5%, and 60% for COLD-Ljubljana, COLD-Freiburg, and COLD-Saarbruecken laboratories respectively and with an overall average of correct answers of 61.5% for the three laboratories. However, the average results shown in figure 5.6 are: 73.4%, 69.5%, and 71% for the same three laboratories and with an overall average of correct answers of 71.3%. This means that we have managed to successfully raise the classification results by 10% which become closer to the state-of-the-art results. This underlines an important fact that adding the penalty term has effectively improved the quality of the image coding.

Another possible way is to investigate the effect of normalization on the final classification results. We have seen in the previous chapter using data whitening or local normalization had some influences on features extraction. Thus, investigating this factor would also have some impact on the classification process. In the next section, we study the classification process using features extracted from the normalized data.

Role of normalization on the classification

All previous experiments have been conducted using the features learned by training two RBM layers on the whitened data. However, during our work we have observed that learning features from a non-whitened data would play an important role in improving the classification results. Thus, after using the features shown in figure 4.14 to train the second RBM layer, the real-valued output of the second RBM units is used to perform the classification as shown in figure 5.7 using a softmax regression. In this case, we obtain an average of correct answers ranging from 71% to 90% 123 according to the different conditions and laboratories. Compared to our previous results shown in figure 5.6, these classification results seem to be more competitive to the state-of-the-art. More precisely, the average results of correct classification are: 83.13%, 80.515%, and 81.50% for COLD-Ljubljana, COLD-Freiburg, and COLD-Saarbruecken laboratories respectively and with an overall average of correct answers of 81.375% for the three laboratories. This indicates that we have improved the results by 10% to 11% for the different laboratories. They are then at the level of the best published ones [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. The results remain robust to illumination variations as in [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. We underline once again the lower performance on the COLD-Freiburg dataset. However, in this case, our results outperform the results obtained in [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF].

These results demonstrate that the features learned from a data normalization are more beneficial for our classification problem. It illustrates the fact that the normalization process keeps much more information or structures of the initial views which are very important for the classification process. On the other hand, data whitening completely removes the first and second order statistics from the initial data which allows DBNs to extract higher-order features. This demonstrates that data whitening could be useful for image coding. However, it is not the optimal pre-processing method in the case of image classification. This is in accordance with the results in the literature showing that first and second order statistics based features are significantly better than higher order statistics in terms of classification [START_REF] Aggarwal | First and second order statistics features for classification of magnetic resonance brain images[END_REF][START_REF] Krizhevsky | Convolutional deep belief networks on cifar-10[END_REF].

However, two different ways are still open to improve these results. The first one is to use temporal integration, as proposed in [START_REF] Guillaume | Temporal bag-of-wordsa generative model for visual place recognition using temporal integration[END_REF]. The second one is presented in the next section and relies on decision theory.

Image rejection

Usually, in any video sequence taken during robot exploration, some of the images are non informative especially when the robot faces a wall or when it turns or moves too fast as noted in the case of the Freiburg laboratory. The main justification of using a rejection mechanism is therefore to discard these blurred images from the classification process.

The detection rate presented in figure 5.6 has been computed from the classes with the highest probabilities, irrespective of the relative values of these probabilities. Some of them are close to the chance (in our case 0.20 or 0.25 depending on the number of categories to recognize) and it is obvious that, in such cases, the confidence in the decision made is weak. Thus below a given threshold, when the probability distribution tends to become uniform, one could consider that the answer given by the system is meaningless. This could be due to the fact that the given image contains common characteristics or structures that can be found in two or more classes. As shown in figure 5.8, the effect of the threshold is then to discard the most uncertain results. In this case, the average acceptance rate (the percentage of considered examples) ranges from 75% to 85%, depending on the laboratory, and the average results show values that outperform the best published ones [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. When considering all the results obtained by training and testing on similar illumination conditions, we got an average classification rate of 90.68% for COLD-Saarbrucken laboratory, 89.88% for COLD-Freiburg laboratory and 90.66% for COLD-Ljubljana laboratory.

Similarly to [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF] results, the performance has also decreased in case of the experiments under varying illumination conditions. In this case we have achieved classification rates of 83.683% for COLD-Saarbrucken laboratory, 83.14% for COLD-Freiburg laboratory and 84.62% for COLD-Ljubljana laboratory. However, our results are less sensitive to the illumination conditions than the results obtained in [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. As in previous experiments, we noted the weaker performance on the COLD-Freiburg data, which confirms that this collection is the most challenging of the whole COLD database as indicated in [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. However, with and without threshold, our classification results for this laboratory outperforms the best ones obtained by [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF].

Similarly, we have also applied the threshold method on the results obtained in figure 5.7 with locally normalized data. Figure 5.9 (second column) shows the average classification results using a similar threshold (0.55). In this case, the average rate of acceptance examples increases to be between 86% to 90%, depending on the laboratory, showing that more examples are used in the classification than the former experiment. Also, the average results, in this case, show scores that strongly outperform the best published one [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. This indicates that the linear separability of the data was significantly improved in the case of using the normalized data for features extraction.

Concerning the sensitivity to illumination for both cases, our results seem to be less sensitive to the illumination conditions compared to the results obtained in [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. As in previous experiments, we noted the lower performance on the COLD-Freiburg data, which confirms that this collection is the most challenging of the whole COLD database as indicated in [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. However, in case of using features learned from the un-whitened data, with and without threshold our classification results for this laboratory outperforms the best ones obtained by [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF].

Tables 1 and2 show an overall comparison of our results with those from [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF] for the three training conditions in a more synthetic view. It also shows the results obtained using a SVM classification instead of a softmax regression. The results are quite comparable to softmax showing that the DBN computes a linearly separable signature. They underline the fact that features learned by DBNs approach are more robustness for a semantic place recognition task than the extraction of ad hoc features based on (GiST, CENTRIST, SURF, and SIFT detectors).

Finally, we introduced a method to discard the most uncertain images and we show that even with a small rejection rate the classification results are significantly improved and largely outperformed the state-of-the-art. This last way to perform SPR relates to the observation that to recognize a specific location it could not be necessary to recognize all the views within a data flow but only the most statistically significant ones.

The reached confidence level in this case could be very high. We can push forward this hypothesis saying that recognizing a unique but specific detail characterizing a place could be sufficient to recognize it. Future approaches could be based on such considerations.

Chapter 6

Conclusions and future works

Summary of contributions

The aim of this thesis was to study the use of Deep Belief Networks in a challenging image recognition task, View-based Semantic Place Recognition. DBNs have been widely used to learn high-level feature representations that can be successfully applied in a wide spectrum of application domains, including in particular image retrieval, classification and regression tasks, as well as nonlinear dimensionality reduction. We proposed here to use them as a novel approach to achieve robot SPR. The most significant characteristics behind learning deep generative models are as follows :

• Multiple layers of representation that can be trained in a greedy layer-wise by training one layer at a time.

• The greedy learning carried out in a completely unsupervised way.

• Their ability to learn sparse efficient features and perform non-linear dimensionality reduction that simplify the classification.

• The theoretical grouding of the feature space construction that outperforms the empirical building of sets of descriptors.

The first part of the thesis focused on introducing the problem of SPR in robotics systems. Thus, in chapter 2 we provided a detailed overview of the different coding and classification methods that have been used to solve the problem of SPR. In particular, we showed that, in the framework of the view-based approaches, the problem of SPR first requires an appropriate code of the initial data. Such a code can be provided by DBNs with the advantage to be problem independent and to be theoretically grounded. We then provided a detailed description of DBNs and their building modules, Restricted Boltzmann Machines (RBMs), along with its most popular learning algorithm, Contrastive Divergence (CD). We have seen that although Boltzmann Machines (BMs) and RBMs have been introduced as early as in the 80's, the wide use of them had to wait until [START_REF] Hinton | Training products of experts by minimizing contrastive divergence[END_REF] who introduced CD learning. The main barrier in the acceptance of RBMs was the difficulty in computing the stochastic gradient for training the model. Thanks to CD learning, the popularity of RBM and its variants grew rapidly, and a whole field opened [START_REF] Bengio | Learning deep architectures for ai[END_REF] in the early 2000s.

Since different parameter settings strongly influence the quality and the nature of the obtained feature space, we have developed an extensive parameter study presented in chapter 3. This study allowed us to precise the role of the network structure and to discuss the question of over-completeness. We also focused on the parameters influencing the locality of the obtained features. This locality can increases the sparsity of the network, its ability to activate only a few units to code for an image (spatial sparsity) and to activate a given unit only rarely over time (time sparsity).

The effect of whitening compared to local normalization was also studied in this chapter. Our studies allow to draw an interesting conclusion about the spatial frequency representation with the two modes of normalization. While whitening equalizes the Fourier power spectral density and thus the autocorrelation of the signal, the local normalization equalizes the energy included in each frequency band (each octave). The obtained features in this case cover a broader range of spatial frequencies suggesting that the energy of the signal plays the most important role in the emergence of the features during RBMs learning.

Chapter 4 studies the use of tiny images for classification through the dimensionality reduction ability of the DBNs. The impact of image centering was studied with aligned and non aligned images and it is shown that the plasticity of the RBM learning algorithm allows to build different feature spaces in these case with a higher semantic level for the aligned dataset. This shows that the composition of the database plays the most prominent role in the nature of the features that will be obtained. Obtaining localized low-level features focused on non specific edges is not a property of the RBM algorithm but depends on the used databases. To shed light on this point we can argue that the statistically independent components of an image could be higher level details if these details are aligned in the initial dataset. This can be related to the role of attentional mechanisms in the acquisition of an optimal image coding. Without attention, looking at random to the scene, the obtained feature space is made of the localized low-level edges of the images. With the attention to very frequent objects or image characteristics (like faces or familiar objects) a DBN network can easily mimick what happens in the primate visual cortex, the selection of detectors specific of the structural details of these frequent characteristics (e.g. parts of faces).

Chapter 5 focused on performing extensive classification experiments to show the performance of the proposed model. An approach based on tiny images followed by a projection onto an appropriate feature space can achieve good classification results in a semantic place recognition task. They outperformed the best published ones [START_REF] Ullah | Towards robust place recognition for robot localization[END_REF] based on more complex techniques (use of Scale Invariant Feature Transform (SIFT) detectors followed by a Support Vector Machine (SVM) classification).

As we expected, the classification results were significantly better when we used the features learned from a locally normalized dataset. It can be argued that first and second order statistics based features are significantly better than higher order statistics in terms of classification as already stated by [START_REF] Aggarwal | First and second order statistics features for classification of magnetic resonance brain images[END_REF]. However, to recognize a place it seems not necessary to correctly classify every image of the place. With respect to place recognition not all the images are informative: some of them are blurred when the robots turns or moves too fast from one place to another, some others show no informative details (e.g. when the robot is facing a wall). As the proposed system computes the probability of the most likely room among all the possible rooms, it offers the way to weight each conclusion by a confidence factor associated with the probability distribution over all classes. We can then discard the most uncertain views thus increasing the recognition score. It offers a simpler alternative to the method proposed in [START_REF] Pronobis | Confidence-base cue integration for visual place recognition[END_REF] based on cue integration and the computation of a confidence criterion in a SVM classification approach.

The fundamental contribution of this work is therefore the demonstration that DBNs coupled with tiny images can be successfully used in the context of semantic place recognition. These considerations have greatly contributed in simplifying the overall classification algorithm. They indeed provide coding vectors that can be used directly in a discriminative method. To our knowledge this is the first demonstration that tiny images feature extraction using DBN is an alternative approach for SPR that deserves to be considered.

Future works and open questions

There are several potential extensions and applications of the ideas presented in this thesis, particularly related to learning DBNs.

Convolutional deep belief networks. As we have stated before, scaling such models to full-sized, high-dimensional images remains a difficult problem for DBNs. However, very recent works have addressed this problem (see for instance, [START_REF] Lee | Convolutional deep belief networks for scalable unsupervised learning of hierarchical representations[END_REF][START_REF] Norouzi | Stacks of convolutional restricted boltzmann machines for shift-invariant feature learning[END_REF]) through the use of convolutional operator. In particular, they proposed to use a probabilistic max-pooling, a technique which shrinks the representations of higher layers in a probabilistically sound way.

They have shown that the algorithm learns useful high-level visual feature and led to excellent performance on visual recognition tasks. Therefore, we plan to apply this model on the COLD database and investigate their features extraction.

However, for the classification process, we need to use the small tiny images, otherwise the classification becomes very expensive.

Sparse-overcomplete representations. This idea has already been investigated in this thesis in terms of features extraction. We have seen that the use of overcomplete structures for DBNs did not improve the features themselves for some databases. However, the number of extracted features was different as in the case of LFW database experiment. Sparse-overcomplete representations have a number of theoretical and practical advantages, as demonstrated in a number of recent studies [START_REF] Doi | A theoretical analysis of robust coding over noisy overcomplete channels[END_REF][START_REF] Olshausen | Sparse coding with an overcomplete basis set: a strategy employed by v1?[END_REF]Ranzato et al., 2007a]. In particular, they have good robustness to noise, and provide a good tiling of the joint space of location and frequency. These representations can be advantageous for problems of classifications, such as the problem SPR, because they will allow to have more features of the different places.

Place categorization. A question that has not been investigated in this work and that remain open despite some interesting attempts [START_REF] Guillaume | Temporal bag-of-wordsa generative model for visual place recognition using temporal integration[END_REF][START_REF] Ullah | Towards robust place recognition for robot localization[END_REF] is the view-based categorization of places. The work presented in this thesis concerns instance classification. Categorization is the way to recognize the functional nature of a room, for example with the COLD database the recognition of an office or a corridor from the different labs. The view-based approaches usually give very poor results (usually around 25% of recognition).

Although we think that this problem is fundamentally ill-posed and that categorization of functional classes like printer area or kitchen must be rather made on the basis of the recognition of their functions, it could be interesting to see if an approach based on DBNs is able to improve these results.

Object recognition. As previously said, DBNs have the ability to learn layers of feature detectors that become progressively more complex, which is thought to be a promising model to address the problem of object recognition. However, currently, most of the existing object recognition systems that achieve state-of-theart results are based on hand coded methods like GiST, CENTRIST, SURF, and SIFT detectors (see for instance [START_REF] Guillaume | Temporal bag-of-wordsa generative model for visual place recognition using temporal integration[END_REF][START_REF] Ullah | Towards robust place recognition for robot localization[END_REF] and include many hand-crafted features. On the light of what was done in this thesis for SPR, it could be interesting to evaluate the performance of DBNs on these object recognition tasks.

We have outlined several potential research works for the future. However, research on deep learning is still new and there are a lot of open questions that have not been considered yet [START_REF] Yu | Icml 2009 workshop on learning feature hierarchies[END_REF]. Some of them are: Can we develop better optimization or approximation techniques that would allow us to learn deep models more efficiently without significant human intervention? Can we develop algorithms that are capable of extracting high-level feature representations that can be transferred to unknown future tasks? Under what conditions does the feature hierarchy achieve a better regularization or statistical efficiency? How can we make deep models more robust to deal with highly ambiguous or missing sensory inputs? We believe that answering these questions will allow and facilitate the emergence of more intelligent machines.

Finally, the system presented in this thesis could also be successfully applied to mobile robot platform with limited memory and processing resources. In particular, semantic place recognition can be used to guide the robot navigation. It seems not too difficult to use the classification tool after off-line learning of both the feature space and the classification space. The fact that these learning steps are not well-suited for on-line learning is one of the major drawback. However, it could be very interesting to study the features that emerge from on-line DBN learning when the images are provided during the exploration of its environment by the robot. In particular, the impact of two different situations, the free random acquisition of images and the acquisition of images driven by an attentional mechanism, will be interesting to study.

Publications

Posters and oral presentations

Part of the work presented in this thesis has been also presented in the following events:

• Ahmad Hasasneh, Emmanuelle Frenoux, and Philippe Tarroux (2010, July).

Medical Image Segmentation Using New Machine Learning Methods: a Prospective Study. Poster session presented at the BMVA Summer School on Computer Vision, 2010, Kingston University, London, UK.

• Ahmad Hasasneh, Emmanuelle Frenoux, and Philippe Tarroux (2012, February).

Semantic place recognition using tiny images and deep belief networks. Oral presentation in SIG-TAO meetings, 2012, LRI Lab, Paris SUD University, Paris, France.

International conferences

Part of the work presented in this thesis has been published in the following international conference:

Closing remarks

This thesis has explored the problem of semantic place recognition for autonomous systems. As one solution for this problem, I proposed to use DBNs approaches that exploit sparsity and locality, while demonstrating good performance in many AI problems. Given that the quality of features significantly affects the performance of image classification. We have seen that our approach obtains scores comparable to approaches based on computer vision methods (like the use of SIFT detectors) and more sophisticated classification techniques like SVM. As emphasized by [START_REF] Hinton | Transforming auto-encoders[END_REF], it illustrates the fact that features extracted by DBN algorithms are more promising for image classification than hand-engineered features. I believe that such algorithms will allow machine learning systems to be much more easily applied to problems in vision, text understanding, audio understanding, and other problems, and to achieve superior performance without the manual feature engineering while using significantly less labeled data.

Appendix B The derivation of the softmax regression for multinomial classification problem [START_REF] Ng | Cs229 lecture notes on machine learning[END_REF]. Unlike logistic regression, in softmax regression we have a multi-nomial classification problem, so first let us define y ∈ {1, 2, . . . , k} of k different classes. We also need to define the model parameters over k possible outcomes as follow: φ 1 , φ 2 , . . . , φ k .

In other words, these parameters specify the probability of each outcome as follows:

φ i = P(y = i)
and

φ k = 1 -φ 1 + φ 2 + • • • + φ k-1
it means that we need to process k -1 parameters. To express the multinomial as an exponential family distribution, we need to define T (y) ∈ R k-1 as follows: We will therefore write T (y) i to denote the i th elements of the vector T (y). For notational convenience, the relationship between T (y) and y can be expressed as:

T (y) i = 1{y = i}
where 1{•} is the usual definition of the indicator function which takes a value of 1 if its argument is true, and 0 otherwise. The expectation of T (y) can be defined as: E T (y) i = P(y = i) = φ i Using these definitions, it is possible now to define the multinomial as exponential distribution as follows: The above formulations confirm that the multinomial can be expressed as an exponential family distribution. For more convenience, the link function is given (for i = 1, . . . , k) by

P(y = i) = φ
η i = log φ i φ k
by taking the exponential for both sides, we can then get

e η i = φ i φ k =⇒ φ k e η i = φ i =⇒ φ k k ∑ i=1 e η i = k ∑ i=1 φ i = 1
This implies that φ k = 1 ∑ k i=1 e η i , and it can be substituted in the above equation to give:

φ i = φ k e η i =
e η i ∑ k j=1 e η j but φ i = P(y = i|x; θ)

= e η i ∑ k j=1 e η j = e θ T i x ∑ k j=1 e θ T j x
This model is called softmax regression which can be used to perform multi-class classification problems, i.e., y ∈ {1, 2, . . . , k} . This model is a generalization of the logistic regression.

Appendix C This appendix demonstrates the partial derivative of the log-likelihood function for Product of Experts (PoEs) models [START_REF] Wood | Training products of experts by minimizing contrastive divergence[END_REF].

Usually, PoEs combines n individual models by taking the product of their conditional probabilities and normalizing the result using Z(θ), as follows [START_REF] Hinton | Training products of experts by minimizing contrastive divergence[END_REF]:

P(X | θ 1 , . . . , θ n ) = ∏ x∈X ∏ m P m (x | θ m ) Z(θ m ) = ∏ x∈X ∏ m P m (x | θ m ) ∑ y ∏ m P m (y | θ m )
The log-likelihood of the previous equation can be written as follows: Therefore, the gradient of the log-likelihood is proportional to the following equation:

∂logP(X | θ 1 , . . . , θ n ) ∂θ m ∝ ∂logP m (x | θ m ) ∂θ m Q 0 - ∂logP m (y | θ m ) ∂θ m Q ∞

Figure 1 :

 1 Figure 1: Première colonne: 256 patchs choisis au hasard à partir de la base de données de van Hateren. Deuxième colonne: Les éléments correspondants normalisés. Troisième colonne: Les éléments correspondants blanchis.

Figure 3 :

 3 Figure 3: Bases sur-complète extraites d'images naturelles. A gauche : 512 les caractéristiques appris par l'apprentissage de la couche RBM première en utilisant de patchs normalisée (16 × 16) échantillonnées à partir de van Hateren base de données. A droite: Caractéristiques correspondantes acquises par l'apprentissage de la première couche RBM en utilisant des patchs blanchis (16 × 16) échantillonnés à partir de la même base de données. Pour les deux expériences. Le protocole d'apprentissage est similaire à celui proposée dans Lee et al. [2008](300 époques, taille de mini-batch 200, taux d'apprentissage 0, 02, moment initial 0, 5, moment final 0, 9, décroissance des poids 0, 0002, un paramètre de parcimonie de 0, 02 et un coût de parcimonie de 0, 02).

Figure 4 :

 4 Figure 4: La représentation Log-Log du spectre de Fourier puissance moyenne pour les patchs d'image avec et sans normalisation. 256 de 16 × 16 patchs ont été extraites de la base de données van Hateren et puis normalisées. Le Log de la transformée de Fourier de chacun de ces patchs a été calculé et tracé selon le Log de la fréquence spatiale.

  256 filters obtained by training the first RBM layer on 32x24 normalized image patches sampled from the COLD database. The training protocol is similar to the previous experiment. . . . . . . . . . . . . . 108 4.15 The second-level features extracted from the whitened tiny-COLD database. The figure shows the three most prominent first level features used in the construction of each high-level feature. The pattern for this second level feature is a linear combination of the first one weighted by the first layer connection weights. . . . . . . . . . . . . . . . . . . 109 4.16 The second-level features extracted from the normalized tiny-COLD database. The figure shows the three most prominent first level features used in the construction of each high-level feature. The pattern for this second level feature is a linear combination of the first one weighted by the first layer connection weights. . . . . . . . . . . . . . . . . . . 110 5.1 Average classification rates from the three different laboratories ob-

  The second part of the chapter presents deep architecture models as alternative techniques to SVMs for the construction of the feature space. In this context, we first illustrate the main mathematical concepts of Energy-Based Models (EBMs), general Boltzmann Machines (BM), and Restricted Boltzmann Machines (RBMs). We then explain how to stack RBM models to generate Deep Belief Networks (DBNs). The chapter ends by introducing the different learning techniques such as maximizing the log-likelihood, Markov-Chain Monte-Carlo (MCMC) sampling methods like Gibbs sampling, and Contrastive Divergence (CD) that can be used to train Product of Experts (PoEs) models.

Figure 2 . 1 :Figure 2 . 2 :

 2122 Figure 2.1: Dynamical variations due to the: (a) Influence of illumination or (b) Influence of human activity.

Figure 2 . 3 :

 23 Figure 2.3: Exemplary images selected from the COLD-Saarbruecken dataset illustrating the limitations of the labeling technique. The figure shows images acquired with perspective camera with labels assigned on the basis of the location of the robot. The labels do not correspond to the visual information in the images due to the relatively narrow field of view of the cameras.The corresponding images are acquired using the omni-directional camera[START_REF] Ullah | The cold database[END_REF].

•

  Illumination differences. A change in the lighting of the object will change the pixel values in the image. The change could be a shift or scaling of the pixel values or, if the light source changes position, a non-linear transformation, complicated by shadows falling on the object. The images in figure 2.4 (b) illustrate examples of drastic changes in lighting.

Figure 2 . 4 :

 24 Figure 2.4: (a) Variation due to changes in aspect, (b) Variation in appearance due to a change in illumination, and (c) Some examples of occlusion[START_REF] Fergus | Visual object category recognition[END_REF].

Figure 2 .

 2 Figure 2.5: Some examples from a visual category[START_REF] Fergus | Visual object category recognition[END_REF].

Figure 2 . 7 :

 27 Figure 2.7: Discriminative versus generative models. Discriminative models try to directly perform the classification, which can be expressed as P(c|X). Generative approaches first learn the conditional probability P(X|c) of each class of the data representation space and then compute the likelihood, P(c|X), using the Bayesian theory.

  the data space representation as shown in figure2.7 (right). The decision frontier in the binary case, for instance, means that some examples belong to class 0 and other examples belong to class 1. The principle of classification in these methods is based on learning the separating surfaces between the data. This learning is particularly based on modeling the relationships between input and output data. These relationships can be obtained using a minimum number of assumptions about the structure of input data to minimize the cost function of the classification.

Figure 2 . 8 :

 28 Figure 2.8: Scalar product example of neural networks.

Figure 2 .

 2 Figure 2.10: High-level conceptual point of view of an SVM approach.

Figure 2 . 11 :

 211 Figure 2.11: An example of a separable problem in a 2 dimensional space. The support vectors, marked with gray squares, define the margin of largest separation between the two classes[START_REF] Cortes | Support-vector networks[END_REF].

Figure 2 .

 2 Figure 2.12: (a) Simple example of two different sets of nodes which are linearly separable. (b)The results obtained using a linear SVM classifier, the black line perfectly separates positive and negative nodes.

Figure 2 .

 2 Figure 2.13: (a) Another example of two different sets of nodes which are not linearly separable. (b) The results obtained using a linear SVM, the black line does not perfectly separate positive and negative nodes.

Figure 2 .

 2 Figure 2.14: A nonlinear SVM process presentation. It shows that after the data is transformed from two-dimensional space to three-dimensional space, the data becomes linearly separable.

Figure 2 . 15 :

 215 Figure 2.15: Simple example of linear classification for two different classes.

Figure 2 . 16 :

 216 Figure 2.16: Logistic sigmoid function: f (x) = 1/(1 + Exp(-βx)) with β = 1. This function can be used as an "activation function" for a mathematical model of a neuron.

Figure 2 . 18 :

 218 Figure 2.18: Left: a general Boltzmann Machine. The top layer represents a vector of hidden features, h, the bottom layer represents a vector of visible units, v, and w represents the symmetric interactions between v and h layers. Right: A restricted Boltzmann machine with no hidden-to-hidden and no visible-to-visible connections. Since there are no direct connections within the same layer, the activation function can update all units simultaneously.

Figure 2 . 19 :

 219 Figure 2.19: Left: Layer-wise training for a RBM with visible and hidden layers using contrastive divergence learning algorithm. Right: a deep belief network with two hidden layers.

Figure 2 .

 2 Figure 2.20: Stacking Restricted Boltzmann Machines (RBM) to achieve Deep Belief Network. This figure also illustrates the layer-wise training of a DBN.

Figure 2 .

 2 Figure 2.21: DBNs Layer-wise training with n hidden layers using CD and RBM.

Figure 3 . 2 :

 32 Figure 3.2: Left: A subset of 16x16 original random image patches sampled from Berkeley database. Right: The corresponding 16x16 whitened image patches are obtained after preprocessing.

Figure 3 . 3 :

 33 Figure 3.3: First row: The covariance matrix of the tiny images for the van Hateren database. White indicates high values, black indicates low values. All values are positive. The size of the tiny images is 32x32. Second row: The corresponding covariance matrix of the whitened tiny images from the same database.

Figure 3 .

 3 Figure 3.4 shows a dataset from the van Hateren database showing the effects on a initial dataset (left) of respectively local normalization (middle) and whitening (right).

Figure 3 . 4 :

 34 Figure 3.4: First column: 256 tiny images randomly sampled from the van Hateren database. Second column: The corresponding normalized ones. Third column: The corresponding whitened ones.

Figure 3 . 5 :

 35 Figure 3.5: Training an RBM layer using contrastive divergence learning..

Figure 3 . 6 :

 36 Figure 3.6: Left: 256 features learned by training the first RBM layer on whitened patches sampled from Berkeley dataset, these features are globally normalized. The training protocol is similar to the one proposed in[START_REF] Ranzato | Factored 3-way restricted boltzmann machines for modeling natural images[END_REF] (ε = 300, γ = 100, η = 0.02, µ i = 0.5, µ f = 0.9, and λ = 0.0002). Right: 256 features obtained from the same database by[START_REF] Ranzato | Factored 3-way restricted boltzmann machines for modeling natural images[END_REF].

Figure 3 . 7 :

 37 Figure 3.7: 256 features learned by training the first RBM layer on whitened patches sampled from the van Hateren's dataset, these features are globally normalized and obtained using the same training protocol as in the experiment of Berkeley database (see figure 3.6).

Figure 3 .

 3 Figure 3.8: 256 features learned by training the first RBM layer on whitened patches from Berkeley dataset. These features are obtained using: η = 0.02, λ = 0.0002, γ = 100, ε = 5, and momentums.

Figure 3 . 9 :

 39 Figure 3.9: Left: 256 features learned by training the first RBM layer on 16x16 whitened patches sampled from Berkeley dataset. Same conditions as in figure 3.8, except ε = 200. Right: 256 features learned using the same conditions, except η = 0.002.

Figure 3 .

 3 Figure 3.10: Left: 256 features learned by training the first RBM layer on 16x16 whitened patches sampled from Berkeley dataset. These features are also obtained using the same conditions as in figure 3.8, except ε = 300. Right: A similar subset of filters leaned using the same conditions, except η = 0.002 and ε = 1000.

Figure 3 . 11 :

 311 Figure 3.11: Left: 256 features learned by training the first RBM layer on 16x16 whitened patches sampled from Berkeley dataset. Similar conditions as in figure 3.9 (left) are used for this experiment. Right: 256 filters extracted using the same conditions, except γ = 200.

Figure 3 .

 3 Figure 3.12: Left: 256 features learned by training the first RBM layer on 16x16 whitened patches sampled from Berkeley dataset. Also, the same conditions as in figure 3.9 (left) are used for this experiment, except γ = 10. Right: The same filters, but with ε = 400 epochs.

Figure 3 .

 3 Figure 3.13: Left: 256 features learned by training the first RBM layer on 16x16 whitened patches sampled from Berkeley dataset. Similar conditions as in figure 3.10 (left) are used, however, σ = 0.5. Right: 256 features learned using the same conditions, except σ = 0.1.

Figure 3 .

 3 Figure 3.14: 256 features learned by the first RBM layer on 16x16 whitened patches sampled from Berkeley dataset. Similar conditions were used in this experiment as in figure 3.10 (left), except µ i = 1 and ε = 10.

Figure 3 . 15 :

 315 Figure 3.15: Left: 256 features learned by training the first RBM layer on 16x16 whitened patches sampled from Berkeley dataset. Similar conditions as in figure 3.10 (left) are used, except λ = 0.002. Right: 256 filters learned using the same conditions, except λ = 0.02.

Figure 3 . 17 :

 317 Figure 3.17: An exemple of the spatial and temporal sparsities achieved using a sparse network obtained from the Berkeley database. Same parameter settings as in figure 3.16. λ for both weight and hidden biases was set to 0.015.

Figure 3 . 18 :

 318 Figure 3.18: Left: 256 features learned by training the regular RBM on whitened image patches (16x16) sampled from Berkeley dataset, these filters are obtained using the same conditions as in figure 3.16. Right: The corresponding features learned by training the sparse RBM on the same whitened image patches. In this case, we also used the same conditions, except p = 0.02 and λ = 0.02.

Figure 3 . 19 :

 319 Figure 3.19: Top: 128 features learned by training the first RBM layer on 16x16 whitened patches sampled from Berkeley dataset. Same conditions were used as in figure 3.10 (left). Bottom: 512 features learned using the same conditions.

Figure 3 . 20 :

 320 Figure 3.20: Learned over-complete natural image bases. Left: 512 features learned by training the first RBM layer on normalized image patches (16x16) sampled from van Hateren's dataset. Right: The corresponding features learned by training the first RBM layer on whitened image patches (16x16) sampled from the same database. For both experiments, the training protocol is similar to the one proposed in [Lee et al., 2008] (ε = 300, γ = 200, η = 0.02, µ i = 0.5, µ f = 0.9, p = 0.02, λ = 0.02).

Figure

  Figure 3.20 (left) shows features extracted using the locally normalized data, while figure3.20 (right) shows features extracted using the whitened one. It is obvious

Figure 3 .

 3 Figure 3.21: Learned over-complete natural image bases. Left: 512 features learned by training the first RBM layer on normalized image patches (16x16) sampled from the Berkeley dataset. Right: The corresponding features learned by training the first RBM layer on whitened image patches (16x16) sampled from the same database. For both experiments, the same conditions as in figure 3.20 were used.

Figure 3 .

 3 Figure 3.22: Learned complete natural image bases. Left: 256 features learned by training the first RBM layer on normalized image patches (16x16) sampled from van Hateren dataset. Right: The corresponding features learned from Berkeley database. For both experiments, similar conditions as in figure 3.20 were also used.

Figure 3 .

 3 Figure 3.23: Learned under-complete natural image bases. Left: 128 filters learned by training the first RBM layer on normalized image patches (16x16) sampled from van Hateren dataset, these features are globally normalized. Right: The corresponding features learned from Berkeley database. For both experiments, similar conditions as in figure 3.20 were also used.

Figure 3 . 24 :

 324 Figure 3.24: The Log-Log representation of the mean Fourier power spectrum for image patches with and without normalization. 10000 16x16 patches have been extracted from the Berkeley database and then normalized. The mean of the Log of the Fourier transform of each of these patches has been computed and plotted according to the Log of the spatial frequency.

Figure 4 . 1 :

 41 Figure 4.1: Map of Freiburg laboratory, portion B.

Figure 4 . 2 :

 42 Figure 4.2: First row: color images acquired under three different illumination conditions (sunny, cloudy, and night) respectively. Second row: the corresponding gray-scale images. It is obvious that the illumination variations reduced in the case of gray images.

4. 3

 3 Model initial steps -Unsupervised feature learning

Figure 4 .

 4 Figure 4.3 shows the general scheme of the proposed approach. It involves three main phases : i/ image coding, ii/ unsupervised feature space elaboration, and iii/ supervised places learning. We hope that the properties of separability of the feature space will allow good classification performances.

Figure 4 .

 4 Figure 4.4 illustrates in detail the phases of the proposed model. The first phase consists in the conversion of color to gray-scale images, reducing them to small image patches, and then normalizing them. The second phase is the coding of the input images using features. It consists in the extraction through several layers of RBMs forming a DBN of an alphabet of features able to optimally code the images and suitable for their classification. The third phase is the classification itself, which discriminates between the robot possible places.

Figure 4 . 3 :

 43 Figure 4.3: General framework of the proposed visual place recognition system. The arrows show the direction of the data flow between the different phases.

Figure 4 . 4 :

 44 Figure 4.4: The different phases of the proposed model to achieve SPR for autonomous systems.

Figure 4 .

 4 Figure 4.5: An example of non-aligned and aligned faces: the first row represents an unaligned face, where the first image is the original face of size of 255x255, the second one is the centered face of size of 144x144, and the final one is the reduced face of size of 32x32. The second row represents the corresponding aligned face[START_REF] Gary | Labeled faces in the wild: A database for studying face recognition in unconstrained environments[END_REF].

Figure 4 . 7 :Focusing

 47 Figure 4.7: A flowchart of the first step of pre-processing phase: Image conversion and reduction. Note that the parameters s and C denote the size of the database and the image counter respectively.

Figure 4 . 8 :

 48 Figure 4.8: Left: 64 selected filters among 1024 learned by training a RBM layer on 32x32 whitened image patches sampled from the non aligned face database. Middle: 64 selected filters learned by training a RBM layer on 32x32 whitened image patches sampled from aligned faces. Right: A subset of features extracted from the same database by [Nair and Hinton, 2010] for comparison.

Figure 4 .

 4 Figure 4.9: 256 features learned by an RBM layer on 32x32 whitened image patches sampled from the aligned face database. The same training protocol as in previous experiments has been used.

Figure 4 .

 4 Figure 4.10: 1024 filters learned by training the first RBM layer on 32x32 normalized image patches sampled from the aligned face database. The training protocol is similar to the one proposed in [Nair and Hinton, 2010] (ε = 300, γ = 100, η = 0.02, µ i = 0.5, µ f = 0.9, and λ = 0.0002).

Figure 4 .

 4 Figure 4.11: 1024 filters learned by training the first RBM layer on 32x32 normalized image patches sampled from the non-aligned face database. These features have been obtained using the same training protocol as in the previous experiment.

Figure 4 .

 4 Figure 4.13: 256 filters obtained by training a first RBM layer on 32x24 whitened image patches sampled from the COLD database. The training protocol is similar to the one proposed in[START_REF] Krizhevsky | Convolutional deep belief networks on cifar-10[END_REF] (ε = 100, γ = 100, η = 0.002, λ = 0.0002, µ i = 0.5, and µ f = 0.9).

Figure 4 . 14 :

 414 Figure 4.14: The 256 filters obtained by training the first RBM layer on 32x24 normalized image patches sampled from the COLD database. The training protocol is similar to the previous experiment.

Figure 4 . 15 :

 415 Figure 4.15: The second-level features extracted from the whitened tiny-COLD data-base. The figure shows the three most prominent first level features used in the construction of each highlevel feature. The pattern for this second level feature is a linear combination of the first one weighted by the first layer connection weights.

Figure 4 . 16 :

 416 Figure 4.16: The second-level features extracted from the normalized tiny-COLD database. The figure shows the three most prominent first level features used in the construction of each high-level feature. The pattern for this second level feature is a linear combination of the first one weighted by the first layer connection weights.

  used the descriptor Scale-Invariant Feature Transform (SIFT) to describe the images. Each image is then classified independently through the use of Support Vector Machines (SVMs). The results obtained for the three laboratories (in particular for standard sequences) are presented in figure 5.1. For each training illumination condition (indicated on top of the charts), the bars present the average classification rates over the corresponding testing sequences under the illumination condition marked on the bottom axis.

Figure 5 . 1 :

 51 Figure 5.1: Average classification rates from the three different laboratories obtained by[START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]. They are grouped according to the illumination conditions under which the training sequences were acquired. Thus, the training conditions are on top of each set of bar-charts while the bottom axes indicate the illumination conditions used for testing. The uncertainty bars represent the standard deviation. Results corresponding to the two different portions of the laboratories which are indicated by A and B. We can see from these results that the system is quite robust to the changes of illumination conditions and the overall performance is almost identical. These graphs have been taken from[START_REF] Ullah | Towards robust place recognition for robot localization[END_REF].

Figure 5 . 2 :

 52 Figure 5.2: Average classification rates from the three different laboratories using a softmax regression. Training conditions are on top of each set of bar-charts. Each bar corresponds to a testing condition. The extracted features in this case are obtained using a learning rate of 0.002 and a weight decay of 0.0002.

Figure 5 . 3 :

 53 Figure 5.3: Average classification rates from the three different laboratories using a nonlinear SVM classifier. The extracted features in this case are obtained using a learning rate of 0.002 and a weight decay of 0.0002.

Figure 5 . 4 :

 54 Figure 5.4: Average classification rates from the three different laboratories. The extracted features in this case are obtained using a learning rate of 0.001 and a weight decay of 0.0001.

Figure 5 . 5 :

 55 Figure 5.5: Average classification rates from the three different laboratories. The extracted features in this case are obtained using a learning rate of 0.001 and a weight decay of 0.0008.

Figure 5 . 6 :

 56 Figure 5.6: Average classification rates from the three different laboratories. The extracted features in this case are obtained using the same CD parameters but with a penalty term.

Figure 5 . 7 :

 57 Figure 5.7: Average classification rates from the three different laboratories. These results have been achieved by training two RBM layers on the normalized COLD data.

Figure 5

 5 Figure 5.9 (first column) shows the average classification results for a threshold of 0.55 (only the results where max X p(X = c k |I) ≥ 0.55, where p(X = c k is the probability that the current view I belongs to c k , are retained). These results have been achieved using the features extracted from the whitened data.

Figure 5

 5 Figure5.8: A comparison between the classification results with and without a threshold. This test has been done for a subset of images selected from Saarbruecken laboratory, partB. First level represents the actual probabilities of the four different classes (corridor (CR), toilet (TL), one person office (1PO), and printer area (PA)). Second and third levels represent classifications based on a softmax regression without and with a threshold respectively. Finally, the forth level represents the original correct classification.

Figure 5 . 9 :

 59 Figure5.9: Average classification rates from the three different laboratories with a threshold of 0.55. First column: classification rates that have been obtained based on the features extracted from the whitened data. Second column: classification rates that have been obtained based on the features extracted from the normalized data.

  1 log(φ 1 )+ T (y) 2 log(φ 2 )+•••+ 1-∑ k-1 i=1 T (y) i log(φ k ) = e T (y) 1 log(φ 1 /φ k )+ T (y) 2 log(φ 2 /φ k )+•••+ T (y) k-1 log(φ k-1 /φ k )+log(φ k ) = b(y)e η T T (y)-a(η) η) = -log(φ k ), b(y) = 1.

0 - 0 -

 00 logP(X | θ 1 , . . . , θ n ) = log ∏ x∈X ∏ m P m (x | θ m ) ∑ y ∏ m P m (y | θ m )also, the gradient of the likelihood can be defined with respect to the model parameters θ m as follows:∂ logP(X | θ 1 , . . . , θ n ) m (x | θ m ) ∑ y ∏ m P m (y | θ m )now, it is possible to multiply both sides of the previous equation by 1/N and we then getm (x | θ m ) ∑ y ∏ m P m (y | θ m ) x | θ m ) ∂θ m -∂log ∑ y ∏ m P m (y | θ m ) ∂θ m = ∂logP m (x | θ m ) ∂θ m Q ∂log ∑ y ∏ m P m (y | θ m ) ∂θ m however, we know that log(x) ′ = x ′ /x. It means that ∂log ∑ y ∏ m P m (y | θ m )/∂θ m = ∂ ∑ y ∏ m P m (y | θ m )/∂θ m * 1/ ∑ y ∏ m P m (y | θ m )and thus the previous equation can be rewritten as follows:1N ∂ logP(X | θ 1 , . . . , θ n ) ∂θ m = ∂logP m (x | θ m ) m P m (y | θ m ) * ∂ ∑ y ∏ m P m (y | θ m ) ∂θ m = ∂logP m (x | θ m ) m P m (y | θ m ) * ∑ y ∏ m ∂P m (y | θ m ) ∂θ m remember, ∂P m (y | θ m )/∂θ m = P m (y | θ m ) * ∂logP m (y | θ m )/∂θ m , so that: 1 N ∂ logP(X | θ 1 , . . . , θ n ) ∂θ m = ∂logP(X | θ 1 , . . . , θ n ) ∂θ m = ∂logP m (x | θ m ) m P m (y | θ m ) * ∑ y ∏ m P m (y | θ m )∂logP m (y | θ m ) ∂θ m = ∂logP m (x | θ m ) m (y | θ m ) ∑ y ∏ m P m (y | θ m ) * ∂logP m (y | θ m ) ∂θ m = ∂logP m (x | θ m ) | θ 1 , . . . , θ n ) * ∂logP m (y | θ m ) ∂θ m = ∂logP m (x | θ m ) ∂θ m Q ∂logP m (y | θ m ) ∂θ m Q ∞

  (à gauche) montre des caractéristiques extraites en utilisant les données localement normalisées, tandis que la figure 3.20 (à droite) montre des caractéristiques extraites en utilisant les données blanchies. Il est évident que les caractéristiques extraites à partir des données blanchies

sont plus localisées. Les données blanchies modifient clairement les caractéristiques apprises. Le lien entre les corrélations du second ordre et la présence de basses fréquences dans les images pourrait expliquer l'effet de blanchiment. Si l'algorithme de blanchiment enlève ces corrélations dans l'ensemble des données d'origine, cela produit des données ne couvrant que les fréquences spatiales élevées. Dans ce cas L'algorithme de RBM ne trouve que des caractéristiques de haute fréquence.

Table 1 :

 1

	nées blanchies, on obtient une moyenne de bonnes réponses allant de 65%
	à 80% selon les différentes conditions et les laboratoires comme le montre
	le tableau 1 (la deuxième ligne). Plus précisément, on obtient 73, 4%,
	69, 5% et 71% pour les laboratoires COLD-Ljubljana, COLD-Fribourg
	et COLD-Sarrebruck respectivement, et avec une moyenne globale de
	réponses correctes de 71, 3%. En revanche, lorsque nous utilisons les car-
	actéristiques extraites des données normalisées, on obtient une moyenne
	de bonnes réponses allant de 71% à 90% selon les différentes conditions

Résultats de la classification moyenne pour les trois laboratoires différents et les trois conditions de l'apprentissage. Première ligne: le travail de Ullah; deuxième ligne: résultats bruts sans seuil; troisième ligne: taux de classification en utilisant SVM classifieur; quatrième ligne: taux de classification avec seuil, comme indiqué dans le texte. Nos résultats ont été obtenus sur la base des caractéristiques apprises á partir des données blanchies.

Les échantillons prélevés dans chaque laboratoire et chaque état d'éclairage ont subi un apprentissage séparément, comme dans

[START_REF] Lee | Sparse deep belief net model for visual area v2[END_REF]

.

Pour chaque image, le résultat du réseau softmax a donné la probabilité d'être dans chacune des pièce visitées. Selon les principes du maximum de vraisemblance, la plus grande valeur de probabilité détermine la décision du système. Lorsque nous utilisons les caractéristiques extraites des donet les laboratoires comme le montre le tableau 2 (la deuxième ligne). Plus précisément, on obtient 83, 13%, 80, 515% et 81, 5% pour les laboratoires présentés ci-dessus, et avec une moyenne globale de réponses correctes de 81, 375%. Les derniers résultats sont comparables aux meilleurs résultats donnés dans

Table 2 :

 2

	Toutefois, il existe deux stratégies différentes pour améliorer ces résultats.
	La première est d'utiliser l'intégration temporelle tel que proposé dans
	[Guillaume et al., 2011]. La seconde stratégie s'appuie sur la théorie de
	la décision. Le taux de détection présenté dans le tableau 1 (deuxième

Résultats de la classification moyenne pour les trois laboratoires différents et les trois conditions de l'apprentissage. Première ligne: le travail de Ullah; deuxième ligne: résultats bruts sans seuil; troisième ligne: taux de classification avec un seuil, comme indiqué dans le texte. Nos résultats ont été obtenus sur la base des caractéristiques tirées des données normalisée.

Ces résultats démontrent qu'un RBM calculé à partir de données normalisées est plus performant qu'un RBM provenant de données blanchis. Ceci illustre le fait que le processus de normalisation conserve plus d'informations ou de structures provenant des images initiales. En effet, ces structures sont très importantes pour le processus de classification. D'autre part, le blanchiment enlève complètement les statistiques d'ordre un et deux à partir de la donnée initiale. Cette dé-corrélation permet au DBN d'extraire des caractéristiques d'ordre supérieur. Cela démontre que les données de blanchiment pourraient être utiles pour le codage d'images. Cependant, ce n'est pas la méthode de pré-traitement optimale dans le cas de la classification d'images. ligne) a été calculé à partir des classes ayant les plus grandes probabilités, quelles que soient les valeurs relatives de ces probabilités. Certaines de alors d'éliminer les résultats les plus incertains. Le tableau 1 (troisième ligne) montre les résultats de la classification moyenne pour un seuil de 0, 55 (seuls les résultats où max X p(X = c k |I) ≥ 0.55, où p(X = c k est la probabilité que le point de vue actuel I appartient à c k , sont conservés).

  Classification methods . . . . . . . . . . . . . . . . . . . . . . . . . 17 Generative approaches . . . . . . . . . . . . . . . . . . . . . 2.3.1.1 Naive Bayes classifiers . . . . . . . . . . . . . . . 2.3.1.2 Bayesian filtering techniques . . . . . . . . . . . . 2.3.2 Discriminative approaches . . . . . . . . . . . . . . . . . . . 2.3.2.1 Neural networks classifiers . . . . . . . . . . . . . 2.3.2.2 Support vector machines approaches . . . . . . . . 2.3.2.3 Softmax regression . . . . . . . . . . . . . . . . . 2.4 Deep architecture methods . . . . . . . . . . . . . . . . . . . . . . . Deep belief networks . . . . . . . . . . . . . . . . . . . . . . 2.4.6 Deep belief networks layer-wise training . . . . . . . . . . . 2.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Used databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 Normalization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.1 Data whitening . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.2 Local normalization . . . . . . . . . . . . . . . . . . . . . . 3.4 Unsupervised construction of the feature space . . . . . . . . . . . . Role of normalization on the classification . . . . . . . . . . . . . . . 5.5 Image rejection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.6 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Closing remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . First row: The covariance matrix of the tiny images for the van Hateren database. White indicates high values, black indicates low values. All values are positive. The size of the tiny images is 32x32. Second row:

	CONTENTS CONTENTS LIST OF FIGURES LIST OF FIGURES LIST OF FIGURES LIST OF FIGURES LIST OF FIGURES LIST OF FIGURES
	Conclusion et perspectives Le but de cette thèse était d'étudier l'utilisation de DBNs dans une tâche de reconnaissance d'image difficile, la reconnaissance sémantique de lieux. Nos résultats montrent qu'une approche fondée sur des images minia-ture suivie d'une projection sur un espace de caractéristiques approprié peut obtenir des résultats intéressants dans la classification d'une tâche de reconnaissance de lieux sémantiques. Ils ont dépassé les performances des meilleures publications [Ullah et al., 2008] basés sur des techniques plus complexes (utilisation de détecteurs SIFT suivie d'une classification SVM). Comme attendu, les résultats de classification ont été significative-ment meilleurs quand nous avons utilisé les caractéristiques tirées d'un ensemble de données normalisées localement. On peut dire que les car-actéristiques extraites par les statistiques de premier et second ordre sont nettement meilleures que les caractéristiques extraites par les statistiques d'ordre supérieur en termes de classification comme déjà indiqué par Ag-apportent des vecteurs de codage qui peuvent être utilisés directement dans une méthode discriminante. À notre connaissance, c'est la première démonstration que l'extraction de caractéristiques à partir de mini-images normalisées en utilisant les DBNs est une approche discriminante alterna-tive pour la SPR qui mérite d'être pris en considération. Ainsi, la présente approche obtient des scores comparables aux approches basées sur des signatures obtenues manuellement (comme les détecteurs de GiST ou SIFT) et des techniques de classification plus sophistiqués comme SVM. Comme l'ont souligné [Hinton et al., 2011], les caractéristi-ques extraites par les DBNs sont plus prometteuses pour la classification d'images que les caractéristiques obtenues manuellement. Différentes voies peuvent être utilisées dans des prochaines études pour étendre cette recherche. Une dernière étape d'ajustement fin peut être in-Contents Declaration Abstract Résumé Contents List of Figures xxxvii xxxii xxxiii xxxiii xxxiii List of Tables xlvii List of acronyms xlix 1 Introduction 1 . . 6 2.2 Current approaches for semantic place recognition . . . . . . . . . . . 10 2.2.1 Coding methods . . . . . . . . . . . . . . . . . . . . . . . . 10 2.2.1.1 Object-based semantic place recognition methods . 10 2.2.1.2 View-based semantic place recognition methods . . 13 2.3 xxxiii 6.4 Appendices Bibliography List of Figures A gauche: Les 256 filtres obtenus par l'apprentissage d'une première couche de RBM 32 × 24 avec des patchs blanchis échantillonnés à par-tir de la base de données COLD. A droite: les 256 filtres obtenus par l'apprentissage d'une première couche de RBM 32x24 avec des patchs normalisée échantillonnés à partir de la base de données COLD. Le protocole de l'apprentissage est similaire à celles proposée dans Krizhevsky [2010]; Lee et al. [2008] (300 époques, taille de mini-batch 2.8 Scalar product example of neural networks. . . . . . . . . . . . . . . 26 2.9 Partly connected feed-forward neural network with one hidden layer and one output layer. Energies can be contributed by output variables in both hidden and output layers, where the number of output variables need not correspond to the number of input variables. . . . . . . . . . 28 2.10 High-level conceptual point of view of an SVM approach. . . . . . . 30 2.11 An example of a separable problem in a 2 dimensional space. The 2.19 Left: Layer-wise training for a RBM with visible and hidden layers using contrastive divergence learning algorithm. Right: a deep belief network with two hidden layers. . . . . . . . . . . . . . . . . . . . . 57 2.20 Stacking Restricted Boltzmann Machines (RBM) to achieve Deep Be-lief Network. This figure also illustrates the layer-wise training of a DBN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 2.21 DBNs Layer-wise training with n hidden layers using CD and RBM. . 60 3.8 256 features learned by training the first RBM layer on whitened patches from Berkeley dataset. These features are obtained using: η = 0.02, λ = 0.0002, γ = 100, ε = 5, and momentums. . . . . . . . . . . . . . 74 3.9 Left: 256 features learned by training the first RBM layer on 16x16 whitened patches sampled from Berkeley dataset. Same conditions as in figure 3.8, except ε = 200. Right: 256 features learned using the same conditions, except η = 0.002. . . . . . . . . . . . . . . . . . . . 75 3.16 256 features learned by training the first RBM layer on 16x16 whitened patches sampled from Berkeley dataset. Similar conditions as in figure 3.10 (left) are also used, except the penalty term was included. Thus, we used p = 0.02 and λ = 0.99. . . . . . . . . . . . . . . . . . . . . 83 3.17 An exemple of the spatial and temporal sparsities achieved using a sparse network obtained from the Berkeley database. Same parameter settings as in figure 3.16. λ for both weight and hidden biases was set 3.22 Learned complete natural image bases. Left: 256 features learned by training the first RBM layer on normalized image patches (16x16) sampled from van Hateren dataset. Right: The corresponding features learned from Berkeley database. For both experiments, similar condi-tions as in figure 3.20 were also used. . . . . . . . . . . . . . . . . . 90 3.23 Learned under-complete natural image bases. Left: 128 filters learned by training the first RBM layer on normalized image patches (16x16) 4.6 Samples of the initial COLD DB. The corresponding 32x24 tiny im-ages are displayed bottom right. One can see that, despite the size reduction, the small images remain fully recognizable. . . . . . . . . 101 4.7 A flowchart of the first step of pre-processing phase: Image conversion and reduction. Note that the parameters s and C denote the size of the database and the image counter respectively. . . . . . . . . . . . . . . 102 4.8 Left: 64 selected filters among 1024 learned by training a RBM layer 2.3.1 3 Feature space construction : a parameter study xxxv xxxvi xxxvii xxxviii xxxix xl xli xlii xliii 3.1 xxxiv 5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2 Vision-based classification results: Supervised learning of robot places 5.2.1 Recall of previous results . . . . . . . . . . . . . . . . . . . . 5.2.2 Recognition of places based on DBNs and tiny images . . . . 5.2.2.1 Classification results using a softmax regression . . 5.2.2.2 Classification results using support vector machines 5.3 Encouraging sparse hidden activities . . . . . . . . . . . . . . . . . . 5.4 6 Conclusions and future works 6.1 Summary of contributions . . . . . . . . . . . . . . . . . . . . . . . 6.2 Future works and open questions . . . . . . . . . . . . . . . . . . . . 6.3 Publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.3.1 Posters and oral presentations . . . . . . . . . . . . . . . . . 6.3.2 International conferences . . . . . . . . . . . . . . . . . . . . 1 Première colonne: 256 patchs choisis au hasard à partir de la base de données de van Hateren. Deuxième colonne: Les éléments correspon-dants normalisés. Troisième colonne: Les éléments correspondants blanchis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xix 2 Des échantillons de la base de données initiale COLD. les mini-images correspondantes sont affichées en bas á droite. On peut voir que, malgré la réduction de la taille, ces mini-images restent pleinement reconnaissables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xx 3 Bases sur-complète extraites d'images naturelles. A gauche : 512 les caractéristiques appris par l'apprentissage de la couche RBM première en utilisant de patchs normalisée (16 × 16) échantillonnées à partir de van Hateren base de données. A droite: Caractéristiques corre-spondantes acquises par l'apprentissage de la première couche RBM en utilisant des patchs blanchis (16 × 16) échantillonnés à partir de la même base de données. Pour les deux expériences. Le protocole d'apprentissage est similaire à celui proposée dans Lee et al. [2008] (300 époques, taille de mini-batch 200, taux d'apprentissage 0, 02, mo-ment initial 0, 5, moment final 0, 9, décroissance des poids 0, 0002, un paramètre de parcimonie de 0, 02 et un coût de parcimonie de 0, 02). . xxii 4 La représentation Log-Log du spectre de Fourier puissance moyenne pour les patchs d'image avec et sans normalisation. 256 de 16 × 16 patchs ont été extraites de la base de données van Hateren et puis nor-malisées. Le Log de la transformée de Fourier de chacun de ces patchs a été calculé et tracé selon le Log de la fréquence spatiale. . . . . . . xxiii 100, taux d'apprentissage 0, 002, décroissance des poids 0, 0002, mo-ment initial 0, 5, moment final de 0, 9, paramètre de parcimonie 0, 02, coût de parcimonie 0, 02). . . . . . . . . . . . . . . . . . . . . . . . . xxv 2.1 Dynamical variations due to the: (a) Influence of illumination or (b) Influence of human activity. . . . . . . . . . . . . . . . . . . . . . . . 8 2.2 Two different classes of 1-person and 2-person offices, but they have strong common visual features. All these samples are also selected from the COLD database [Ullah et al., 2007]. . . . . . . . . . . . . . 9 2.3 Exemplary images selected from the COLD-Saarbruecken dataset il-lustrating the limitations of the labeling technique. The figure shows images acquired with perspective camera with labels assigned on the basis of the location of the robot. The labels do not correspond to the visual information in the images due to the relatively narrow field of view of the cameras. The corresponding images are acquired using the omni-directional camera [Ullah et al., 2007]. . . . . . . . . . . . . . . 9 2.4 (a) Variation due to changes in aspect, (b) Variation in appearance due to a change in illumination, and (c) Some examples of occlusion [Fer-gus, 2005]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.5 Some examples from a visual category [Fergus, 2005]. . . . . . . . . 14 2.6 Markov assumption . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.7 Discriminative versus generative models. Discriminative models try to directly perform the classification, which can be expressed as P(c|X). Generative approaches first learn the conditional probability P(X|c) of each class of the data representation space and then compute the likelihood, P(c|X), using the Bayesian theory. . . . . . . . . . . . . . 25 support vectors, marked with gray squares, define the margin of largest separation between the two classes [Cortes and Vapnik, 1995]. . . . . 31 2.12 (a) Simple example of two different sets of nodes which are linearly separable. (b) The results obtained using a linear SVM classifier, the black line perfectly separates positive and negative nodes. . . . . . . . 31 2.13 (a) Another example of two different sets of nodes which are not lin-early separable. (b) The results obtained using a linear SVM, the black line does not perfectly separate positive and negative nodes. . . . . . . 32 2.14 A nonlinear SVM process presentation. It shows that after the data is transformed from two-dimensional space to three-dimensional space, the data becomes linearly separable. . . . . . . . . . . . . . . . . . . 32 2.15 Simple example of linear classification for two different classes. . . . 36 2.16 Logistic sigmoid function: f (x) = 1/(1 + Exp(-βx)) with β = 1. This function can be used as an "activation function" for a mathematical model of a neuron. . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 2.17 An explanation of how to transform the input image into higher lev-els of representation, which includes the most interesting information (characteristics) such as: edges, corners, object parts, etc. . . . . . . . 44 2.18 Left: a general Boltzmann Machine. The top layer represents a vector of hidden features, h, the bottom layer represents a vector of visible units, v, and w represents the symmetric interactions between v and h layers. Right: A restricted Boltzmann machine with no hidden-to-hidden and no visible-to-visible connections. Since there are no direct connections within the same layer, the activation function can update represents the corresponding aligned face [Gary et al., 2007]. . . . . . 100 all units simultaneously. . . . . . . . . . . . . . . . . . . . . . . . . . 47 3.10 Left: 256 features learned by training the first RBM layer on 16x16 to 0.015. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 sampled from van Hateren dataset, these features are globally nor-on 32x32 whitened image patches sampled from the non aligned face 3.1 A subset of 481x321 and 321x481 natural images selected from the whitened patches sampled from Berkeley dataset. These features are 3.18 Left: 256 features learned by training the regular RBM on whitened malized. Right: The corresponding features learned from Berkeley database. Middle: 64 selected filters learned by training a RBM layer Berkeley database [David et al., 2004]. . . . . . . . . . . . . . . . . . 64 also obtained using the same conditions as in figure 3.8, except ε = image patches (16x16) sampled from Berkeley dataset, these filters are database. For both experiments, similar conditions as in figure 3.20 on 32x32 whitened image patches sampled from aligned faces. Right: 3.2 Left: A subset of 16x16 original random image patches sampled from 300. Right: A similar subset of filters leaned using the same condi-obtained using the same conditions as in figure 3.16. Right: The cor-were also used. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 A subset of features extracted from the same database by [Nair and Berkeley database. Right: The corresponding 16x16 whitened image tions, except η = 0.002 and ε = 1000. . . . . . . . . . . . . . . . . . 75 responding features learned by training the sparse RBM on the same 3.24 The Log-Log representation of the mean Fourier power spectrum for Hinton, 2010] for comparison. . . . . . . . . . . . . . . . . . . . . . 103 patches are obtained after pre-processing. . . . . . . . . . . . . . . . 67 3.11 Left: 256 features learned by training the first RBM layer on 16x16 whitened patches sampled from Berkeley dataset. Similar conditions as in figure 3.9 (left) are used for this experiment. Right: 256 filters extracted using the same conditions, except γ = 200. . . . . . . . . . 76 whitened image patches. In this case, we also used the same condi-tions, except p = 0.02 and λ = 0.02. . . . . . . . . . . . . . . . . . . 86 3.19 Top: 128 features learned by training the first RBM layer on 16x16 whitened patches sampled from Berkeley dataset. Same conditions image patches with and without normalization. 10000 16x16 patches have been extracted from the Berkeley database and then normalized. The mean of the Log of the Fourier transform of each of these patches has been computed and plotted according to the Log of the spatial fre-4.9 256 features learned by an RBM layer on 32x32 whitened image patches sampled from the aligned face database. The same training protocol as in previous experiments has been used. . . . . . . . . . . . . . . . . . 104 4.10 1024 filters learned by training the first RBM layer on 32x32 normal-3.3 The corresponding covariance matrix of the whitened tiny images from 3.12 Left: 256 features learned by training the first RBM layer on 16x16 were used as in figure 3.10 (left). Bottom: 512 features learned using quency. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 ized image patches sampled from the aligned face database. The train-the same database. . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 3.4 First column: 256 tiny images randomly sampled from the van Hateren database. Second column: The corresponding normalized ones. Third column: The corresponding whitened ones. . . . . . . . . . . . . . . 69 3.5 Training an RBM layer using contrastive divergence learning.. . . . . 69 3.6 Left: 256 features learned by training the first RBM layer on whitened patches sampled from Berkeley dataset, these features are globally nor-malized. The training protocol is similar to the one proposed in [Ran-zato et al., 2010] (ε = 300, γ = 100, η = 0.02, µ i = 0.5, µ f = 0.9, and λ = 0.0002). Right: 256 features obtained from the same database by [Ranzato et al., 2010]. . . . . . . . . . . . . . . . . . . . . . . . . . . 72 3.7 256 features learned by training the first RBM layer on whitened patches sampled from the van Hateren's dataset, these features are globally normalized and obtained using the same training protocol as in the ex-periment of Berkeley database (see figure 3.6). . . . . . . . . . . . . . 73 whitened patches sampled from Berkeley dataset. Also, the same con-ditions as in figure 3.9 (left) are used for this experiment, except γ = 10. Right: The same filters, but with ε = 400 epochs. . . . . . . . . . . . 77 3.13 Left: 256 features learned by training the first RBM layer on 16x16 whitened patches sampled from Berkeley dataset. Similar conditions as in figure 3.10 (left) are used, however, σ = 0.5. Right: 256 features learned using the same conditions, except σ = 0.1. . . . . . . . . . . 78 3.14 256 features learned by the first RBM layer on 16x16 whitened patches sampled from Berkeley dataset. Similar conditions were used in this experiment as in figure 3.10 (left), except µ i = 1 and ε = 10. . . . . . 79 3.15 Left: 256 features learned by training the first RBM layer on 16x16 whitened patches sampled from Berkeley dataset. Similar conditions as in figure 3.10 (left) are used, except λ = 0.002. Right: 256 filters learned using the same conditions, except λ = 0.02. . . . . . . . . . . 81 the same conditions. . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 3.20 Learned over-complete natural image bases. Left: 512 features learned by training the first RBM layer on normalized image patches (16x16) sampled from van Hateren's dataset. Right: The corresponding fea-tures learned by training the first RBM layer on whitened image patches (16x16) sampled from the same database. For both experiments, the training protocol is similar to the one proposed in [Lee et al., 2008] (ε = 300, γ = 200, η = 0.02, µ i = 0.5, µ f = 0.9, p = 0.02, λ = 0.02). . 88 3.21 Learned over-complete natural image bases. Left: 512 features learned by training the first RBM layer on normalized image patches (16x16) sampled from the Berkeley dataset. Right: The corresponding features learned by training the first RBM layer on whitened image patches (16x16) sampled from the same database. For both experiments, the the final one is the reduced face of size of 32x32. The second row same conditions as in figure 3.20 were used. . . . . . . . . . . . . . . 90 ing protocol is similar to the one proposed in [Nair and Hinton, 2010] 4.1 Map of Freiburg laboratory, portion B. . . . . . . . . . . . . . . . . . 96 (ε = 300, γ = 100, η = 0.02, µ i = 0.5, µ f = 0.9, and λ = 0.0002). . . 105 4.2 First row: color images acquired under three different illumination 4.11 1024 filters learned by training the first RBM layer on 32x32 normal-conditions (sunny, cloudy, and night) respectively. Second row: the ized image patches sampled from the non-aligned face database. These corresponding gray-scale images. It is obvious that the illumination features have been obtained using the same training protocol as in the variations reduced in the case of gray images. . . . . . . . . . . . . . 97 previous experiment. . . . . . . . . . . . . . . . . . . . . . . . . . . 106 4.3 General framework of the proposed visual place recognition system. 4.12 Learned under-complete natural faces bases. 256 features learned by The arrows show the direction of the data flow between the different an RBM layer on 32x32 normalized image patches sampled from the phases. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 aligned face database. In this experiment, same protocol used as pre-4.4 The different phases of the proposed model to achieve SPR for au-vious ones. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 tonomous systems. . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 4.13 256 filters obtained by training a first RBM layer on 32x24 whitened 4.5 An example of non-aligned and aligned faces: the first row represents image patches sampled from the COLD database. The training pro-an unaligned face, where the first image is the original face of size of 255x255, the second one is the centered face of size of 144x144, and tocol is similar to the one proposed in

pour les trois conditions d'apprentissage. Ils montrent également les résultats obtenus en utilisant une classification SVM au lieu d'une régression softmax. Les résultats obtenus sont tout à fait comparables à softmax montrant que le DBN calcule une signature linéairement séparable. Ils soulignent le fait que les éléments appris par l'approche DBNs sont plus robustes pour une tâche de reconnaissance de lieu sémantique que l'extraction des caractéristiques ad-hoc basée sur les descripteurs (GiST, CENTRIST, SURF, et SIFT). garwal and Agrawal

[2012]

. Toutefois, afin de reconnaître un lieu, il ne semble pas nécessaire de classer correctement chaque image du lieu. En ce qui concerne la reconnaissance de lieu, toutes les images ne sont pas instructives: certaines d'entre elles sont floues quand le robot tourne ou se déplace trop rapidement d'un endroit à un autre, d'autres ne montrent pas de détails informatifs (par exemple lorsque le robot est face à un mur). Comme le système proposé calcule la probabilité de la pièce la plus probable parmi toutes les pièces possibles, il offre la possibilité de pondérer chaque conclusion d'un facteur de confiance associé à la distribution de probabilité sur toutes les classes. On peut alors éliminer les images les plus incertaines, augmentant ainsi le score de reconnaissance. Il offre une alternative plus simple à la méthode proposée dans

[START_REF] Pronobis | A discriminative approach to robust visual place recognition[END_REF]

basée sur l'intégration d'indices et le calcul d'un critère de confiance dans une approche de classification SVM.

L'apport fondamental de cette thèse est donc la démonstration que les DBNs couplés avec des mini-images peuvent être utilisées avec succès dans le cadre de la SPR. Ces considérations ont grandement contribué à la simplification de l'algorithme de classification global. En effet, ils troduite à l'aide de rétro-propagation au lieu d'utiliser des caractéristiques grossières, comme illustré dans

[Krizhevsky and Hinton]

. Cependant, l'utilisation de caractéristiques grossières rend l'algorithme entièrement incrémentiel évitant l'adaptation à un domaine spécifique. La séparation stricte entre la construction de l'espace des caractéristiques et la classification permet d'étudier les problèmes de classification qui partagent les mêmes caractéristiques d'espace. L'indépendance de la construction des caractéristiques d'espace a un autre avantage dans le contexte de la robotique autonome: cela peut être considéré comme une maturation de développement acquise en ligne par le robot, une seule fois, au cours d'une phase d'exploration de son environnement. Une autre question n'a pas été étudiée dans ce travail et reste ouverte malgré quelques tentatives intéressantes

[START_REF] Guillaume | Temporal bag-of-wordsa generative model for visual place recognition using temporal integration[END_REF][START_REF] Ullah | Towards robust place recognition for robot localization[END_REF]

il s'agit de la catégorisation de lieux basée sur la vision. La catégorisation est la fac ¸on de reconnaître le caractère fonctionnel d'une pièce, par exemple avec la base de données COLD la reconnaissance d'un bureau ou d'un couloir dans différents laboratoires. Ainsi, il pourrait être intéressant de voir si une approche basée sur les DBNs est capable d'améliorer les performances de catégorisation. En outre, il pourrait être également intéressant d'évaluer la performance de DBN sur les tâches de reconnaissance d'objets. 1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 Problem definition and overview . . . . . . . . . . . . . . . . . . . . 2 1.3 Research objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.4 Thesis organization . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2 Background and related work 6 2.1 Introduction to semantic place recognition . . . . . . . . . . . . . 2.4.1 Energy-based models . . . . . . . . . . . . . . . . . . . . . . 2.4.2 Classical Boltzmann machines . . . . . . . . . . . . . . . . . 2.4.3 Gaussian-Bernoulli restricted Boltzmann machines . . . . . . 2.4.4 Learning products of experts by minimizing contrastive divergence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.5 3.4.1 Overall organization of the network . . . . . . . . . . . . . . 3.4.2 The learning rate . . . . . . . . . . . . . . . . . . . . . . . . 3.4.3 The size of the mini-batch . . . . . . . . . . . . . . . . . . . 3.4.4 The initial values of weights and biases . . . . . . . . . . . . 3.4.5 Momentum . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4.6 Weight decay . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4.7 Penalty term . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4.8 The number of hidden units . . . . . . . . . . . . . . . . . . 3.4.9 Effect of normalization on the feature space . . . . . . . . . .

LFW Labeled Faces in the Wild database MAP Maximum A Posterior MCL Monte Carlo Localization

	5.4 Average classification rates from the three different laboratories. The EVD Eigen-Value Decomposition
	GBRBM	extracted features in this case are obtained using a learning rate of 0.001 and a weight decay of 0.0001. . . . . . . . . . . . . . . . . . . 120 Gaussian-Bernoulli Restricted Boltzmann Machine
	5.5 Average classification rates from the three different laboratories. The GiST Generalized Search Tree
	extracted features in this case are obtained using a learning rate of 0.001 and a weight decay of 0.0008. . . . . . . . . . . . . . . . . . . 121 List of Tables GMM Gaussian Mixture Model Chapter 1
	5.6 Average classification rates from the three different laboratories. The GPU Graphics Processing Unit
	extracted features in this case are obtained using the same CD param-eters but with a penalty term. . . . . . . . . . . . . . . . . . . . . . . 122 Résultats de la classification moyenne pour les trois laboratoires différents Harries Laplace Detectors Introduction 1 HLDs
	5.7 Average classification rates from the three different laboratories. These et les trois conditions de l'apprentissage. Première ligne: le travail HMM Hidden Markov Model
		results have been achieved by training two RBM layers on the normal-de Ullah; deuxième ligne: résultats bruts sans seuil; troisième ligne:
	ized COLD data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 5.8 A comparison between the classification results with and without a ICA Independent Component Analysis taux de classification en utilisant SVM classifieur; quatrième ligne: IDOL Image Database for rObot Localization taux de classification avec seuil, comme indiqué dans le texte. Nos 1.1 Introduction
		threshold. This test has been done for a subset of images selected résultats ont été obtenus sur la base des caractéristiques apprises á par-
	KLD	from Saarbruecken laboratory, partB. First level represents the actual tir des données blanchies. . . . . . . . . . . . . . . . . . . . . . . . . xxvi Kullback-Leibler Divergence
	2 KMC	probabilities of the four different classes (corridor (CR), toilet (TL), Résultats de la classification moyenne pour les trois laboratoires différents k-Means Clustering
		one person office (1PO), and printer area (PA)). Second and third lev-et les trois conditions de l'apprentissage. Première ligne: le travail
	KNN	els represent classifications based on a softmax regression without and de Ullah; deuxième ligne: résultats bruts sans seuil; troisième ligne: K-Nearest Neighbor Rule
	LBP 8,1	with a threshold respectively. Finally, the forth level represents the original correct classification. . . . . . . . . . . . . . . . . . . . . . . 125 taux de classification avec un seuil, comme indiqué dans le texte. Nos résultats ont été obtenus sur la base des caractéristiques tirées des Local Binary Pattern Code
	5.9 Average classification rates from the three different laboratories with données normalisée. . . . . . . . . . . . . . . . . . . . . . . . . . . . xxvii
	. . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 5.2 Average classification rates from the three different laboratories using a threshold of 0.55. First column: classification rates that have been 5.1 Average classification results for the three different laboratories and obtained based on the features extracted from the whitened data. Sec-the three training conditions. First row: Ullah's work; second row: ond column: classification rates that have been obtained based on the rough results without threshold; third row: classification rates using features extracted from the normalized data. . . . . . . . . . . . . . . 126 SVM classifier; fourth row: classification rates with threshold as in-MCMC Markov-Chain Monte Carlo
	MCMs	a softmax regression. Training conditions are on top of each set of bar-charts. Each bar corresponds to a testing condition. The extracted dicated in text. Our results have been obtained based on the features learned from the whitened data. . . . . . . . . . . . . . . . . . . . . . 128 Monte Carlo Methods
	features in this case are obtained using a learning rate of 0.002 and a weight decay of 0.0002. . . . . . . . . . . . . . . . . . . . . . . . . . 118 5.2 Average classification results for the three different laboratories and the three training conditions. First row: Ullah's work; second row: MIT Massachusetts Institute of Technology XOR Exclusive OR
	5.3 Average classification rates from the three different laboratories using rough results without threshold; third row: classification rates with
		a nonlinear SVM classifier. The extracted features in this case are threshold as indicated in text. Our results have been obtained based on
		obtained using a learning rate of 0.002 and a weight decay of 0.0002. 119 the features learned from the normalized data. . . . . . . . . . . . . . 128

ML

Maximum Likelihood

ML

Machine Learning

MLP

Multi-layer

Perceptron l MMCL Mixture Monte Carlo Localization MMH Maximum Margin Hyperplane NBC Naive Bayes Classifier NNs Neural Networks PCA Principal Component Analysis PDF Probability Density Function PoE Product of Experts RBMs Restricted Boltzmann Machines RMS Root Mean Square ROI Region Of Interest SIFT Scale Invariant Feature Transform SLAM Simultaneous Localization and Mapping SPR Semantic Place Recognition SURF Speeded Up Robust Features SVC Support Vector Classifier SVM-C Support Vector Machine Classifier SVMs Support Vector Machines TDMs Temporal Difference Methods

•

  Ahmad Hasasneh, Emmanuelle Frenoux, and Philippe Tarroux (2012, July). Semantic Place Recognition Based on Deep Belief Networks and Tiny Images. In 9 th International Conference on Informatics in Control, Automation and Robotics ICINCO, 2012, Rome, Italy.

The COLD database (COsy Localization database) is a collection of labeled images created for the purpose of robot localization. See Chapter 4 for a more in depth description.

Omnidirectional camera shows the interior of each room by a set of images rather than an image by itself as in the perspective camera.

Gestalt principles, or gestalt laws, are rules of the organization of perceptual scenes. They aim to formulate the regularities according to which the perceptual input is organized into unitary forms, also referred to as (sub)wholes, groups, groupings. These principles mainly apply to vision.

CT compares the intensity value of a pixel with its eight neighboring pixels, if the intensities of the neighboring pixels are equal or less than the intensity of the center pixel, then a bit is set to 1 at the corresponding location, otherwise it is set to 0.

Sometimes, the authors use SVC or SVM-C to show that the SVM approach is used for a classification purpose.

Support vectors are a subset of training instances that define the decision boundary between classes as shown in figure

2.11.

Two events are said to be mutually exclusive if P(A ∩ B) = 0. Note that if all events in a sample space are mutually exclusive, then all the probabilities must sum to 1 and thus P(A ∪ B) = 1

Bottom-up inference is the synthesis of new information from the old one, while top-down inference is the analysis of goals into subgoals. The lower RBM layers could support object detection by spotting low-level features indicative of object parts. Conversely, information about objects in the higher RBM layers could resolve lower-level ambiguities in the image or infer the locations of hidden object parts.

Fantasy data (or confabulation data) is the reconstruction data produced by training an observed data-vector using the CD algorithm.

Q 0 is a natural way to denote the data distribution if we imagine starting a Markov chain at the data distribution at time 0[Hinton,

2002].

van Hateren's Natural Image Database is available at: http://www.kyb.tuebingen.mpg.de/?id=227

Berkeley database is available at: http://www.cs.berkeley.edu/projects/vision/grouping/segbench/

Weights represent the symmetric interactions between the visible and hidden units which are known as features.

Oscillation: the repetitive variation, typically in time, of some measure about a central value (often a point of equilibrium) or between two or more different states as in our case.

One epoch means a complete iteration through all images in the dataset. Within an epoch we update the weights after presenting a mini-batch of size 100 selected at random from the training data.

A mini-batch is a collection of patches. It usually means the entire training set.

Overfitting occurs when a statistical model describes random error or noise instead of the underlying relationship. Overfitting generally occurs when a model is excessively complex, e.g. a model has too many parameters with respect to the number of observations.

That is an expected effect since whitening can be related to white noise, a noise in which all the frequencies are equally represented

LFW dataset is available at: http://vis-www.cs.umass.edu/lfw/

COLD Database is available at: http://cogvis.nada.kth.se/COLD/

We have used teh SVM package developed at http://www.csie.ntu.edu.tw/ cjlin/libsvm/

Acknowledgements

Declaration

I declare that this thesis is a presentation of my original research work and it was composed by myself. All contributions of other authors are involved in this thesis have been acknowledged with due reference to the literature. The whole research work was done under the supervision of Professor Philippe Tarroux and Dr. Emmanuelle Frenoux, at LIMSI-CNRS Laboratory, Paris Sud University, Paris.

List of Algorithms

target p, the decay rate λ, and the sparsity cost, cost. When we add the sparsity penalty to the learning rule, the new weight update formula becomes: w i j ← µ * w i j + η * ( v 0 i h 0 jv n i h n j )/γcost * (p tq) (3.11) Using this regularization term, we have obtained the features shown in figure 3.16.

They are more localized than the features shown in figure 3.10 (left). It turns out that adding the penalty term has successfully encouraged to achieve sparse activities for the hidden units. Figure 3.17 shows the 128 unit outputs of the corresponding network for 300 samples of the Berkeley database. It shows graphically that most of the input images are represented by a few active units (spatial sparsity) and that each unit is rarely active over samples (temporal sparsity). The other method proposed in [START_REF] Lee | Sparse deep belief net model for visual area v2[END_REF] and mentioned above introduces a regularizer term that makes the average hidden variable activation low over the entire training examples. Thus the activations of the model neurons become also sparse. In fact, this method is similar to the one used in other models [START_REF] Olshausen | Emergence of simple-cell receptive field properties by learning a sparse code for natural images[END_REF]. Thus, as illustrated in [START_REF] Lee | Sparse deep belief net model for visual area v2[END_REF], given a training set {v (1) , . . . , v (m) } images. If the whitening algorithm removes these correlations in the original data set, it leads to whitened data covering only high spatial frequencies. The RBM algorithm in this case finds only high frequency features.

It is also obvious that the features obtained from the whitened dataset are more localized compared with the previous experiments that were also conducted using the whitened data. This is due to the fact that the hidden biases, in this case, are initialized with very large negative values of -4.

We have also applied our learning algorithm on the Berkeley database. Similarly, we have created two datasets (normalized and whitened data) from this database. Each dataset contains 100, 000 of 16x16 random patches. The features shown in figure 3.21 are quite similar to those obtained from the van Hateren database. However, the number of features extracted from van Hateren database is more than the number of features learned from the Berkeley one. It could mean that the natural images, in the case of van Hateren database, contain more interesting structures, edges, and orientation contours.

Several other experiments have been conducted using both complete and undercomplete RBM structures. The main goal for doing these experiments is to demonstrate that an under-complete RBM structure can also capture interesting high-order features using the locally normalized data.

Two experiments with a complete structure (256 -256) have been conducted for van Hateren and Berkeley databases. As shown in figure 3.22, the RBM learning algorithm extracts features similar to those obtained using an over-complete structure.

They still cover a larger range of spatial frequencies. There seems to be no difference in the shape of the features from the two databases. However the number of almost flat features (features that have not converged or that will take a very long time to appear) is greater for the Berkeley database.

Similarly, with an under-complete structure, as shown in figure 3.23, the learning algorithm remains able to extract interesting features covering a large range of spatial frequencies as in the cases of complete and over-complete RBM structures. Once again, we observe that the number of features extracted from the van Hateren database is greater.

In general, the features learned from the normalization data are totally different from the ones learned with whitened data. They remain sparse but cover a broader spectrum of spatial frequencies. An interesting observation is that they look closer to from colors to gray-scale using the following linear transformation function:

Thus, the first two functions of the pre-processing phase, gray-scale conversion and size reduction, are applied to the whole images. A proposed flowchart is shown in figure 4.7 to perform these functions.

As explained in the previous chapter, data can be whitened or locally normalized.

However, in the previous chapter we investigated the effect of the two methods on small random patches extracted from large images. Here we will consider the effects of these methods on reduced images. Before seeing these effects on the classification results in the next chapter, we will study them here on the feature extraction. patches sampled from the non-aligned face database. These features have been obtained using the same training protocol as in the previous experiment.

and [START_REF] Turk | Eigenfaces for recognition[END_REF] in aligned images than in non-aligned images.

Additionally, an under-complete RBM extracts similar features as shown in figure 4.12. However in this case the variability of the features is less than for complete structures.

COLD database -Final validation

Low level features and Normalization We finally performed the same experiments on the tiny-COLD database which is our reference database. In these experiments, with a learning rate of 0.02 as in previous experiments, the network converged very fast but the obtained solutions are not optimal. Consequently, we have reduced the learning rate to 0.002. One explanation could be that, in the case of the COLD database, the images are highly redundant and neighbor images in time are similar. The network could need more time to focus on the small details distinguishing one image to the Chapter 5

Vision-based classification: Supervised learning of robot places

Introduction

In the present chapter, we want to gather all the observations we have made in the previous chapters and the organization we have developed to process the COLD database.

We will study here the classification abilities of the high level representation that can be obtained from tiny images. Therefore, this chapter focuses on performing extensive classification experiments in order to evaluate the performance of our approach. To investigate whether the linear separability in the feature space is achieved, we propose to compare the classification performances using a linear or a nonlinear classifier. All the classification results presented here will be interpreted and compared with the most recent approaches of SPR [START_REF] Guillaume | Temporal bag-of-wordsa generative model for visual place recognition using temporal integration[END_REF][START_REF] Ullah | Towards robust place recognition for robot localization[END_REF].

Vision-based classification results: Supervised learning of robot places

Recall of previous results

In this section, we will first present the best performance for instances recognition that have been achieved in the literature [START_REF] Pronobis | Confidence-base cue integration for visual place recognition[END_REF][START_REF] Ullah | Towards robust place recognition for robot localization[END_REF] Table 5.2: Average classification results for the three different laboratories and the three training conditions. First row: Ullah's work; second row: rough results without threshold; third row: classification rates with threshold as indicated in text. Our results have been obtained based on the features learned from the normalized data.

Summary

In the present chapter we have presented our experiments on SPR and image classification using the DBN we have designed in the previous chapters. Concerning the classification, our system was tested using two different classification methods (linear with softmax and nonlinear with SVM). We observed that the results of the nonlinear classifier are quite comparable to the softmax regression results, suggesting that the DBN computes a linearly separable signature. We have also observed that adding a penalty term improved the quality of image coding and thus increased the classification scores.

We also investigated the effect of normalization on the classification process. We saw that extracting features from a locally normalized database that covers a larger range of spatial frequencies gave significantly better classification results. Compared to the state-of-the-art [START_REF] Guillaume | Temporal bag-of-wordsa generative model for visual place recognition using temporal integration[END_REF][START_REF] Ullah | Towards robust place recognition for robot localization[END_REF], they are in the same range for COLD-Saarbrucken and COLD-Ljubljana laboratories and they outperformed the results for COLD-Freiburg laboratory.

Appendices

This section demonstrates the derivation of the most important equations.

Appendix A This appendix presents the derivation of the sigmoid function for an RBM and general BM [START_REF] Krizhevsky | Learning multiple layers of features from tiny images[END_REF]. An RBM with V visible units and H hidden units is governed by the following energy function:

where Agence franaise pour la promotion de lenseignement suprieur

• v is the binary state vector of the visible units,

• h h is the binary state vector of the hidden units,

• v i is the state of visible unit i,

• h j is the state of hidden unit j,

• w i j is the real-valued weight between visible unit i and hidden unit j,

• b i is the real-valued bias into visible unit i,

• c j is the real-valued bias into hidden unit j.

According to Gibbs distribution, a probability is associated with configuration (v,h) is given as follows:

where Z is a normalizing constant. Thus after marginalization:

We can also derive some simple conditional expressions:

As illustrated in [START_REF] Krizhevsky | Learning multiple layers of features from tiny images[END_REF], it can also drive closed-form expression for P(h k = 1|v), the probability of a particular hidden unit being on given a visible configuration.. To do this, they introduced the notation,

to denote the probability of the configuration in which hidden unit k has state 1, the rest of the hidden units have state h j =k , and the visible units have state v. Given this, we have: (u,v) ∑ g e -E(v,g) ∑ u ∑ g e -E(u,v) = ∑ h j =k e -E(h k =1,h j =k ,v)

∑ g e -E(v,g)

∑ g e -E(v,g) = e ∑ V i=1 v i w ik +c k ∑ h j =k e -E(h k =0,h j =k ,v)

∑ g j =k e -E(g k =1,g j =k ,v) + ∑ g j =k e -E(g k =0,g j =k ,v) = e ∑ V i=1 v i w ik +c k ∑ h j =k e -E(h k =0,h j =k ,v) e ∑ V i=1 v i w ik +c k ∑ g j =k e -E(g k =1,g j =k ,v) + ∑ g j =k e -E(g k =0,g j =k ,v)

= 1

1