Vous êtes sur la page 1sur 79

UNIVERSITÉ DE YAOUNDÉ I UNIVERSITY OF YAOUNDE I

******* *******
ÉCOLE NATIONALE SUPÉRIEURE NATIONAL ADVANCED SCHOOL
POLYTECHNIQUE OF ENGINEERING
******** *******
DEPARTEMENT DE GÉNIE DEPARTMENT OF COMPUTER
INFORMATIQUE SCIENCE

Mise en place d’une plateforme de


statistiqes et de prédiction des prix de
logements à l’échelle mondiale basée sur le
web-scraping et le deep-learning

Mémoire de fin d’études / Master of Engineering


Présenté et soutenu par :
TCHOUATCHA DEUMAGA Michel Ulrich
En vue de l’obtention du :
Diplôme d’Ingénieur de Conception de Génie Informatique

Sous la supervision de :

Pr. BOUETOU BOUETOU Thomas


Ing. FOMEKONG TEKATSOP Evaris

Devant le jury composé de :

Président : TAMO TATIETSE Thomas Professeur UYI


Rapporteur : BOUETOU BOUETOU Thomas Professeur UYI
Examinateur : KOUAMOU Georges Edouard Chargé de Cours UYI
Invité : FOMEKONG TEKATSOP Evaris Lead Engineer Ashdown X
Année Académique 2017-2018
Présenté et soutenu le 20 Juillet 2018
*

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 1
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
M ISE EN PLACE D ’ UNE PLATEFORME DE STATISTIQUES
ET DE PRÉDICTION DES PRIX DE LOGEMENTS À
L ’ ÉCHELLE MONDIALE BASÉE SUR LE W EB - SCRAPING
ET LE D EEP - LEARNING

Mémoire de fin d’études/Master of Engineering

Présenté et soutenu par :

TCHOUATCHA DEUMAGA Michel Ulrich

En vue de l’obtention du :

Diplôme d’Ingénieur de Conception de Génie Informatique

Année académique 2017 - 2018

Mémoire soutenu le 20 juillet 2018


D ÉDICACES

À mes parents

i
R EMERCIEMENTS

Je tiens à remercier toutes les personnes qui de près ou de loin ont consenti un effort dans
l’accomplissement de ce travail :
v Pr, HDR, DR, Ing. TAMO TATIETSE Thomas qui a accepté de présider le jury de soute-
nance de ce mémoire ;
v Pr. BOUETOU BOUETOU THOMAS , Chef de département d’informatique de l’ENSPY
pour l’encadrement, la disponibilité, les conseils et le suivi dans le respect de la dé-
marche scientifique ;
v Dr. KOUAMOU GEORGES EDOUARD, pour avoir accepté d’examiner ce travail ;
v Ing. FOMEKONG Evaris pour son apport cognitif et technique, ses critiques, ses conseils
et le suivi qu’il a apportés en qualité d’encadreur professionnel ;
v L’entreprise Ashdown X à travers son directeur M. MBIAM Alexandre qui a fourni un
cadre de stage agréable et un suivi rigoureux du travail ;
v L’ensemble du corps enseignant de l’École Nationale Supérieure Polytechnique, plus
particulièrement celui du département de Génie Informatique, pour les efforts consen-
tis en faveur de notre formation ;
v Les ingénieurs de Ashdown X, pour leurs disponibilités, leurs conseils et leurs encadre-
ments, TCHANA Arnaud, NDJATHE Franklin, KAMENI Ariel, MBEUNANG Vanex, NANA
Girault ;
v Mes camarades, DIETAGOUM Sonia, FOTSA Boris, SAHAMENE Armel, avec qui nous
avons traversé les difficultés du stage ;
v Ma grande soeur LEUMAGA DEUMAGA Hilaris Corine, qui trace et me guide toujours
sur la voie de l’excellence ;
v Ma grande famille qui me soutient sans cesse dans mes études.

ii
G LOSSAIRE

Benchmark : C’est un test effectuer pour mesurer la performance d’un système afin de le
comparer à d’autres systèmes.
OpenStreetMap : Projet visant à créer et maintenir une carte géographique du monde quoi
soit publiquement et gratuitement accessible.
Protocole : Ensemble de règles qui permettent à des machines de communiquer.
Notaire : Officier public chargé d’établir tous les actes et contrats auxquels on doit ou on veut
donner un caractère authentique.
CAPTCHA : Test ou défi utilisé pour s’assurer qu’une réponse n’est pas générée par un ordi-
nateur.
Geocoding : Geocoding ou Géocodage en français, consiste à associer à des coordonnées géo-
graphiques (longitude/latitude) à une adresse postale, ou une unité administrative. Il
permet de retrouver les coordonnées géographiques d’une zone connue.
Reverse geocoding : Opération inverse au Geocoding qui consiste à attribuer à des coordon-
nées géographiques des adresses communes. Il permet de retrouver la zone administra-
tive correspondant à des coordonnées géographiques données.

iii
L ISTE DES ACRONYMES

AADB Aesthetic and attributes Database.


AAG Ashdown Advisory Group.
AJAX Asynchronous JavaScript and XML.
API Application Programing Interface.

CSS Cascading StyleSheet.

DoS Deny of Service.


DUDH Déclaration Universelle des Droits de l’Homme.

ENSPY École Nationale Supérieure Polytechnique Yaounde/National Advanced School of En-


gineering of Yaounde.

HTML HyperText Markup Language.


HTTP HyperText Transfer Protocol.
HTTPS HyperText Transfer Protocol Secure.

IP Internet Protocol.

NoSQL Not Only SQL.

ONG Organistaio.
OSI Open Systems Interconnection.
OSM Open Street Map.

RAM Random Access Memory.


REST REpresentational State Transfer.

SGBD Système de Gestion de Bases de Données.


SQL Structured Query Language.

iv
SSH Secure Shell.

UML Unified Modeling Language.


URL Uniform Resource Locator.
UY1 University of Yaounde I.

XML eXtensible Markup Language.

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page v
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
R ÉSUMÉ

Malgré l’importance des statistiques aussi bien dans le marché que dans les politiques
de logement, il n’existe pas de plateforme permettant de faire des statistiques et des com-
paraisons sur le logement à travers le monde. Pour résoudre ledit problème, ce travail pro-
pose une application qui regroupe les données de logement du monde entier en parcourant
les sites web d’annonces de logements pour y extraire les informations par la technique du
web-scraping ; les informations extraites sont nettoyées puis stockées dans une base de don-
nées NoSQL de type de document afin de rendre des états sur le logement en utilisant les
techniques usuelles de statistique. Le résultat obtenu est une plateforme web, accessible dans
05 langues internationales, permettant d’afficher des statistiques de logement telles que les
prix de vente moyens, les prix médians, sur un pays, une ville ou un quartier quelconques
du monde dans une monnaie choisie par l’utilisateur parmi toutes les monnaies officielles.
De plus la plateforme permet de comparer de l’état du logement dans trois zones du monde
simultanément ; enfin l’application utilise la masse de données récupérées sur les sites web
pour prédire le prix de vente et de location d’un nouveau logement en utilisant l’apprentis-
sage profond ou deep-learning.

Mots clés : Logement, statistiques, prédiction, web-scraping, deep-learning

vi
A BSTRACT

1246/5000 Despite the importance of statistics both in the market and in housing poli-
cies, there is no platform for making housing statistics and comparisons around the world. To
solve this problem, this work proposes an application that gathers housing data from around
the world by browsing the websites of housing ads to extract the information by the technique
of web-scraping ; the extracted information is cleaned and stored in a NoSQL document type
database to report on the housing using standard statistical techniques. The result is a web
platform, accessible in 05 international languages, to display housing statistics such as ave-
rage sales prices, median prices, on any country, city or neighborhood of the world in a chosen
currency among all official currencies. In addition the platform makes it possible to compare
the state of housing in three zones of the world simultaneously ; Finally the application uses
the mass of data retrieved from the websites to predict the selling and renting price of a new
house using deep-learning.

Key words : Housing, statisitcs, prediciton, web-scraping, deep-learning

vii
L ISTE DES TABLEAUX

1.1 Comparaisons des méthodes d’acquisition de données de logements . . . . . . . 9


1.2 Les méthodes HTTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.3 Codes de réponses HTTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.4 Etudes comparative Airdna et Mashvisor . . . . . . . . . . . . . . . . . . . . . . . . 21

viii
L ISTE DES FIGURES

1.1 Analyse d’un ensemble de données avec les quartiles . . . . . . . . . . . . . . . . . 11


1.2 Fonctionnement du Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.3 Modèle en couche HTTP et HTTPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.4 Requête HTTP avec proxy (pro) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.5 Illustration du web scraping (Vargiu and Urru, 2012) . . . . . . . . . . . . . . . . . 19

2.1 Diagramme de cas d’utilisation du système . . . . . . . . . . . . . . . . . . . . . . 24


2.2 Diagramme de GANTT du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.3 Les rôles dans la méthode SCRUM . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.4 Cycle de vie d’un produit dans la méthode SCRUM Schwaber and Beedle (2002) 28
2.5 Répartition et interactions entre les modules du système . . . . . . . . . . . . . . 29
2.6 Sous module d’acquisition des données . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.7 Comparaison des méthodes d’estimation de l’esthétique dans les images Kong
et al. (2016) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.8 Évaluation de l’esthétique dans les images Kong et al. (2016) . . . . . . . . . . . . 37
2.9 Diagramme d’activités de l’acquisition des données . . . . . . . . . . . . . . . . . 39
2.10 Module de statistiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.11 Diagramme d’activités du module de statistique . . . . . . . . . . . . . . . . . . . 42
2.12 Composants du module de prédiction de prix . . . . . . . . . . . . . . . . . . . . . 43
2.13 Diagramme d’activités du module de prédiction . . . . . . . . . . . . . . . . . . . 45
2.14 Diagramme d’activité du module d’interface utilisateur . . . . . . . . . . . . . . . 47
2.15 Architecture logique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.16 Architecture logique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

3.1 L’outil ZenHub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52


3.2 Plateforme de gestion de codes Github . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.3 Framework scrapy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.4 Libraire Pandas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.5 Libraries Keras et TensorFlow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

ix
Liste des figures Liste des figures

3.6 Framework backend Flask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55


3.7 Framework frontend VueJS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.8 Interface d’accueil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.9 Interface de recherche d’une zone en texte clair . . . . . . . . . . . . . . . . . . . . 56
3.10 Statistiques générales sur le Cameroun . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.11 Statistiques détaillées sur le Cameroun . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.12 Autres statistiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page x
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
T ABLE DES MATIÈRES

Dédicaces i

Remerciements ii

Glossaire iii

Sigles et abréviations v

Résumé vi

Abstract vii

Liste des tableaux viii

Liste des figures ix

Table des matières xi

Introduction générale 1
Contexte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Problématique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
En jeux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1 État de l’art 4
1.1 Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.1 Généralités sur le logement . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.2 Statistiques et évaluation des logements . . . . . . . . . . . . . . . . . . . . 7
1.1.3 Généralités sur le Web scraping . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.2 Travaux existants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.2.1 Les travaux de la littérature . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

xi
Table des matières Table des matières

1.2.2 Les plates-formes opérationnelles . . . . . . . . . . . . . . . . . . . . . . . . 20


1.3 Bilan du chapitre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

2 Méthodologie 22
2.1 Analyse du problème . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.1.1 Expression des besoins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.1.2 Cas d’utilisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.2 Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.2.1 Gestion du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.2.2 Description générale de la solution . . . . . . . . . . . . . . . . . . . . . . . 27
2.2.3 Acquisition des données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.2.4 Statistiques sur les données . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.2.5 Prédiction du prix des logements . . . . . . . . . . . . . . . . . . . . . . . . 41
2.2.6 Plate-forme web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.3 Architecture du système . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.3.1 Architecture logique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.3.2 Architecture de sécurité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

3 Implémentation et résultats 51
3.1 Méthodes et technologies d’implémentation . . . . . . . . . . . . . . . . . . . . . . 52
3.1.1 Choix technologiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.2 Résultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.2.1 L’interface utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

Conclusion 59
Rappel du problème . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Synthèse de la solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Limites et perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page xii
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
I NTRODUCTION GÉNÉRALE

Présentation du processus d’obtention du stage et de du thème traité durant ce dernier

Contexte

n logement est "un lieu d’habitation", une maison et plus généralement tout endroit où
U une ou plusieurs personnes peuvent s’abriter, en particulier pour se détendre, dormir,
manger et vivre en privé (Deffontaines, 1972). Le logement est donc d’une importance capitale
dans la vie de l’homme et dans l’évolution de la société en général. De ce fait le droit au loge-
ment est prescrit dans l’article 25 de la Déclaration Universelle des Droits de l’Homme (géné-
rale des Nations Unies, 1948). De plus, avec la croissance démographique, la mondialisation,
l’accès au logement est devenu beaucoup restreint qu’autre fois ; le logement représente au-
jourd’hui un marché et un domaine de l’économie à part entière. Les statistiques quant à elles
représentent un ensemble de pratiques utilisées depuis la fondation des premières structures
sociales pour faire un état des lieux sur un domaine précis. Aujourd’hui les travaux statistiques
appliqués dans tous les domaines, sous-tendent de nombreuses décisions des pouvoirs pu-
blics, des entreprises, des collectivités à travers, des bilans, des estimations et des prévisions
(Salles and Colletis, 2007). L’importance des statistiques pour un domaine aussi crucial et vital
que le logement se fait donc fortement ressentir. L’utilisation des méthodes statistiques per-
met entre autres de rendre compte du niveau de développement macro-économique d’une
zone, de maîtriser le fonctionnement du marché du logement, de prévoir les crises du loge-
ment, d’adopter une meilleure politique de logement, de fixer des indices de prix de logements
(Scatigna et al., 2014) ; c’est ainsi qu’on retrouvera dans la plupart État, un organisme chargé
d’étudier le logement et mettre en place la politique de logement. Cependant les statistiques
sur le logement sont particulièrement difficiles en mettre en oeuvre, à cause de la rareté des in-
formations sur le logement ; en effet le logement a toujours gardé un aspect confidentiel, qu’il
s’agisse d’individus qui ne déclarent pas leurs transactions immobilières, ou des États qui ne

1
Table des matières Table des matières

rendent pas public leurs données immobilières. A cet effet, il n’existe pas de base de données
mondiale sur le logement ; de plus il est à nos jours impossible d’avoir des statistiques sur le
logement à l’échelle mondiale.

Problématique
Puisque la plupart des pays développés possèdent des mécanismes de statistiques à l’échelle
nationale ; les questions posées dans ce travail sont donc :
p Comment faire des statistiques sur le logement pour n’importe quelle région du monde ?
p Comment comparer deux zones du monde sur le domaine du logement ?
p Comment utiliser cette quantité de données pour estimer le prix d’un nouveau loge-
ment arrivant sur le marché ?

Objectifs
Dans l’optique de fournir des statistiques sur les données du logement à pour n’importe
quelle région du monde, ce travail a consisté en la conception, l’implémentation et la mise en
exploitation d’une plateforme web permettant d’obtenir des statistiques sur le logement dans
n’importe quelle région du monde et d’estimer le prix de location et de vente d’un nouveau
logement définit par ses caractéristiques. Les objectifs spécifiques visés par ce travail sont :
o La collecte des données, la mise en place et l’entretien d’une base de données mondiale
sur le logement.
o L’application des méthodes statistiques usuelles du logement sur cette base de données
o L’élaboration d’un mécanisme de comparaison sur l’état du logement dans deux zones
du monde
o La proposition et la mise en place un modèle d’estimation de prix de logements à travers
le monde.

Enjeux
Les enjeux de ce travail sont de plusieurs ordres.
Enjeux scientifiques : Ils sont relatifs aux challenges sous-jacents de ce travail. Il s’agit no-
tamment de :
o La mise sur pied d’un mécanisme de collecte des données à l’échelle mondiale
o La détermination des paramètres influençant les prix de logement
o L’élaboration d’une méthode pour l’estimation du prix d’un logement.

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 2
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Table des matières Table des matières

Enjeux opérationnels : Ils concernent :


o L’accès rapide et simple aux statistiques sur le logement dans n’importe quelle
zone du monde
o La comparaison rapide de l’état du logement dans plusieurs quartiers, villes ou
pays dans le monde
o L’évaluation rapide du prix de vente ou de location de son logement sans passer
par un agent immobilier.
Enjeux économiques : Sur le plan économique, ce travail permettra :
o L’appréciation du niveau macro-économique d’une zone à travers ces statistiques
o La détermination des meilleures zones d’investissement, sur la base des états sur
le logement.
o La prédiction du prix d’un nouveau logement, permettra aux petits bailleurs de
savoir quel prix adopter pour se démarquer la concurrence dans sa zone d’action.
o Le choix du logement adéquat au meilleur prix, sur la base des statistiques de la
zone considérée.
Enjeux politiques : Ce travail peut servir de base pour un état dans la mise en oeuvre de sa
politique de logement

Plan
Ce travail s’articule en trois parties, organisées comme suit :
o Chapitre 1 : Intitulé État de l’art, il présente les concepts clés utilisés dans la résolution,
ensuite recense et mène des études sur les différents travaux en évaluation des prix ainsi
que les différentes plateformes de statistiques sur le logement réalisées jusqu’ici.
o Chapitre 2 : Intitulé Méthodologie, il décrit de bout en bout la mise en place d’un sys-
tème permettant de résoudre le problème ; ceci passe par l’analyse des besoins, la concep-
tion de la solution, les contraintes posées et solutions apportées.
o Chapitre 3 : Il présente les choix technologiques et larchitecture élaborée pour la réali-
sation et le déploiement de la solution. Il montre ensuite les résultats obtenus suivants
des scénarios d’utilisation.
Nous terminerons par une Conclusion générale qui donnera un bilan du travail effectué, les
limites liées à la solution ainsi que les perspectives qui en découlent.

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 3
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
CHAPITRE 1
État de l’art

Ce chapitre présente les concepts clés relatifs à la compréhension de ce mémoire ainsi que les
travaux relatifs au problème traité dans le but d’identifier la frontière entre le connu et le non
connu, entre l’existant et l’inexistant.

4
Chapitre 1. État de l’art 1.1. Concepts

1.1 Concepts

1.1.1 Généralités sur le logement


L’immobilier désigne l’ensemble des actions et transactions à savoir constructions, ventes,
locations, réhabilitations, opérées sur les biens immobiliers. On entend par bien immobilier,
tout bien ou objet qui ne peut être déplacé ; parmi ces biens, on distingue, les terrains nus, les
bâtiments, les parkings, les bureaux, les pièces à usage commerciales et les logements (wik,
2018). Cette dernière constitue la majeure partie des biens et transactions immobiliers. Un lo-
gement est un local utilisé pour l’habitation ; il se définit aussi comme la partie d’une maison
ou d’un immeuble où l’on habite.

Logement et habitat
Le logement est très proche de l’habitat, qui regroupe en plus du local, les éléments liés au
bien-être tel que le chauffage, l’éclairage, l’alimentation en eau. Le logement est donc un pro-
duit (local) tandis que l’habitat est un service (Segaud et al., 1998).

Logement et hébergement
Contrairement à l’hébergement qui est une solution d’habitation temporaire (hébergement
chez ami, hébergement dans un hôtel), le logement est une solution plus durable qui en plus
vous appartient (Grenier et al., 2002). Le logement se décline sous plusieurs dimensions, so-
ciales, économiques et politiques.
Dimension sociale, familiale et humanitaire :
Le logement intègre une dimension sociale forte ; c’est pour l’être humain un besoin vital. Un
Homme et une famille ont besoin d’un toit, d’un logement pour se construire et participer à la
vie collective. Certaines sociétés humaines ont ainsi considéré qu’il constituait un droit natu-
rel (Bourgeois, 1996). Ainsi, dans certains pays communistes, le logement était gratuit, fourni
par l’État. Le logement soutenu par nombreuses ONG humanitaires et politiques publiques.

Dimension économique :
Le logement est considéré comme une catégorie statistique et économique à part entière ; car
source de dépense et de revenu. Influencés par de nombreuses variables auxquels ils sont
liés (taux d’intérêt, coûts de construction, préférences des ménages), les prix des logements
rendent compte du niveau macro-économique d’une zone donnée. Selon un rapport de l’In-
see 1 , l’institut de statistique français, le logement représente le premier poste de dépenses
pour bon nombre de familles dans le monde ; cette part ne cesse de progresser de manière
continue depuis près de 20 ans, notamment avec l’amélioration du confort. D’un autre côté,
l’investissement en logement représente environ 28.9% des investissements nationaux. L’im-
pact du poids du logement dans l’économie est tel, qu’il influence le niveau de l’emploi, l’évo-
1. https ://www.insee.fr/en/accueil

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 5
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 1. État de l’art 1.1. Concepts

lution des prix ou encore les besoins en financement. Le logement est finalement un très bon
investissement dans la mesure où il procure un taux de rendement moyen variant entre 7.5%
et jusqu’à 15% en fonction des pays (Fuller et al., 1990). Comme cas particulier, l’INS 2 , l’insti-
tut camerounais des statistiques a publié un rapport en 2013 statuant sur plus de 9% de part
du PIB du Cameroun attribué au logement.
Dimension politique :
Le logement occupe généralement une grande place au niveau de la politique gouvernemen-
tale, qui se traduit généralement par un ministère de l’habitat, un secrétariat dédié ou de
grandes institutions chargées de traiter des questions de logements. Les états construisent
généralement des logements sociaux mis à la disposition des citoyens à revenus modestes
(Lamine, 2013).

Transactions sur le logement

Plusieurs transactions sont possibles sur un logement ; il peut s’agir de la vente, de la lo-
cation, de l’héritage, ou du donc. L’intérêt est porté ici sur les deux types de transactions qui
nécessitent des fonds et donc qui créent le marché du logement : la location et la vente.

La location
C’est un type de transaction plus récurrent sur les logements. Elle représente un contrat entre
le propriétaire du logement et son demandeur assurant à ce dernier l’occupation du local en
contrepartie d’un montant appelé loyer (Marchand and Skhiri, 1995). Le loyer peut être cal-
culé par jour, par mois, par an et soumis à d’autres types de conditions renseignées dans le
contrat. Le contrat de bail est généralement soumis à des frais d’assurances, et peut se faire
sans la présence d’un notaire 3 Officier public chargé d’établir tous les actes et contrats aux-
quels on doit ou l’on veut donner un caractère authentique.

La vente
C’est le processus de transmission de propriété d’un logement entre deux tiers. Le vendeur
remet ses droits de propriété sur le local à l’acheteur en contrepartie d’un montant qui repré-
sente le prix de vente ; tout ce fait en présence d’un notaire. La vente est soumise à d’autres
frais supplémentaires tels que les frais d’assurance, les frais du notaire. Elle représente donc
une transaction financière beaucoup plus importante que la location et se caractérise par une
certaine irréversibilité (Travers et al., 2008). La décision d’achat à cet effet est plus difficile que
la décision de location et doit tenir compte de tous les paramètres intérieurs et extérieurs du
bien à acheter. Les paramètres intérieurs sont par exemple le nombre de pièces, le nombre de
chambres, le numéro d’étage où se trouve le logement, tandis que les paramètres extérieurs
sont par exemple la proximité de la route, la proximité d’une école, d’un centre urbain, le taux
2. http ://www.statistics-cameroon.org/
3. .

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 6
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 1. État de l’art 1.1. Concepts

de criminalité et de délinquance, la proximité de la plage.

Types de locations

En théorie, les logements sont répartis en quatre catégories à savoir, les résidences prin-
cipales, les résidences secondaires , les logements occasionnels et les logements vacants.
Dans le cas particulier des logements à louer, ils sont généralement regroupés en location à
court terme et location à long terme.

Location à long terme


Encore appelée location traditionnelle, la location à long terme est la plus ancienne. Elle consiste
pour un propriétaire de logement à donner accès à son bien à une personne physique ou mo-
rale pour une période assez longue de l’ordre de plusieurs mois (Shiller, 2006). Le bail relatif
à ce type de location est payé par mois ou par an ; l’unité d’occupation ici est donc le mois ou
l’année. Ce type de location sert généralement de résidence principale à leurs souscripteurs.

Location à court terme


La location à court terme encore appelée location de vacance est un concept beaucoup plus
récent. Il consiste pour un propriétaire de logement à mettre à disposition son bien à une per-
sonne physique ou morale pour une période relativement courte, de l’ordre de quelques jours
ou quelques semaines. Le loyer relatif à ce type de location est payé par jour ; l’unité d’occu-
pation dans ce cas est le jour. Ce type de location sert généralement de logement de vacances,
pour les touristes, les voyageurs qui arrivent dans une nouvelle région. Dans les locations à
court terme, les logements sont dans la plupart des cas meublés ; c’est-à-dire qu’ils possèdent
tout le nécessaire pour accueillir un hôte sans qu’il n’ait besoin d’emporter avec lui un équi-
pement supplémentaire (McHugh et al., 1990). Ces logements comprennent entre autres : des
lits et draps pour le sommeil, fauteuils, téléviseurs, climatiseur, tables et autres équipements
de séjour, des réchauds et divers ustensiles de cuisine ; l’objectif étant de tout mettre en oeuvre
pour que le visiteur se sente à l’aise et soit séduit par le standing du logement. Ce type de lo-
cations représente une sérieuse concurrence pour les hôtels, car les prix journaliers pratiqués
sont bien inférieurs à ce qu’on retrouve dans les grands hôtels.

1.1.2 Statistiques et évaluation des logements


La statistique se définit comme une science et un ensemble de techniques d’interpréta-
tion mathématique de données complexes et nombreuses, permettant de faire des prévisions
(Celeux et al., 1989). Les statistiques sont appliquées une fois la récolte d’informations termi-
née. Appliquée aux données immobilières, elle permet aux gouvernements d’établir des poli-
tiques de logements, d’anticiper sur les crises de logements ; aux propriétaires de logements
de connaître les tendances des prix de logements dans leurs localités ; enfin elle offre une base

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 7
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 1. État de l’art 1.1. Concepts

solide pour la réalisation des différentes transactions immobilières, ventes et locations (?).

Acquisition des données sur le logement

Le marché de l’immobilier manque cruellement de transparence ; ce qui augmente la dif-


ficulté de disposer de données fiables. Cela semble pourtant incompréhensible, au regard de
la visibilité que doit avoir un bien immobilier et l’importance des sommes déboursées. Cette
situation serait due à des traits psychosociaux plus ou moins communs à de nombreux pays,
que de garder une confidentialité sur les données immobilières (Renard, 1996) .
Les méthodes les plus utilisées pour acquérir les données sur le logement sont : les enquêtes,
l’exploitation des registres officiels, la consultation des plates-formes d’annonces sur le loge-
ment.

Exploitation des registres officiels


Il s’agit d’utiliser les contrats de vente et les contrats de bail officiels, sur les différents loge-
ments comme source de données. En effet dans bon nombre de pays, la loi sur le logement
stipule que toute transaction de logements en vente tout comme en location doit être justifiée
par des contrats certifiés et renseignés auprès de l’organisme national en charge du logement
(Fuller et al., 1990). Ainsi dans les états où cette pratique est respectée, les registres officiels
disposent de toutes les informations relatives aux transactions sur le logement en particulier
et sur l’immobilier en général. Ces registres représentent finalement une source importante
de données pour la mise en place de statistiques sur le logement à l’échelle étatique. Dans
la plupart des pays, les informations sur les transactions immobilières restent la propriété de
l’État qui les garde jalousement. Aux États-Unis par contre, ces mêmes informations sont ac-
cessibles publiquement dans la plupart des états.
Avantages : Permet d’avoir des données fiables et complètes sur l’état du logement dans
un pays.
Limites : Ces données sont la propriété privée de l’Etat ; il n’est pas possible pour un tiers
d’avoir accès à ces données pour faire des statistiques. Ceci limite les statistiques au point de
vue de l’Etat, et empêche la mise en place des statistiques sur le plan international.
Dans la plupart des pays en développement, les populations ne respectent pas toujours la loi
sur le logement ; de ce fait, la plupart des transactions ne sont pas déclarées et donc pas enre-
gistrées au registre national du logement.

Les Enquêtes
Cette approche consiste à faire des descentes dans les quartiers et des interrogatoires, pour
essayer d’identifier les logements présents sur le marché de la location et de la vente, les prix
de ventes et prix de locations (Gyourko and Keim, 1992). Elle est réalisée au temps où les lois
n’imposaient pas la déclaration de toutes les transactions immobilières au registre national.
Cette méthode est encore réalisée dans les pays en développement où les populations ne cer-

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 8
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 1. État de l’art 1.1. Concepts

tifient et ne déclarent pas toujours les transactions immobilières. Elle est cependant très coû-
teuse en temps, en moyens financiers, logistiques et humains et ne sera donc réalisée que par
des organismes étatiques ou encore des ONG.
Avantages : Prise de l’information à la source.
Limites : Approche très coûteuse en temps et en argent.

Les plates-formes d’annonces sur le logement


Avec des avancées sans cesse continues, les Technologies de l’information et de la communi-
cation transforment tous les secteurs et toutes les activités de la vie courante ; le marché du
logement n’est pas en reste. En effet de plus en plus d’informations relatives aux ventes et
locations de logement sont présentent sur le Web sous forme d’annonces. C’est ainsi qu’on
assiste à la naissance et à l’expansion de multiples sites web d’annonces immobilières. Parmi
les plus populaires aujourd’hui, nous pouvons citer :
o airbnb.com : Plate-forme de location et de réservation de logements de vacances. Elle
permet à des propriétaires de logements de mettre leurs biens en location pendant leurs
vacances, ou même leurs voyages.
o jumia house : Site web d’annonces immobilières en Afrique. Permet aux particuliers et
agences immobilières de placer des annonces de ventes et de locations de logements.
Elle couvre à ce jour 20 pays d’Afrique parmi lesquels le Cameroun, le Sénégal, la Côte
d’Ivoire, le Ghana.
o Seloger.com : Plate-forme d’annonces immobilières en France
o Zillow.com : Plate-forme de vente et location des logements traditionnels et vacants aux
États-Unis.
D’après une étude menée en 2017, les annonces immobilières couvrent plus de 70% des
offres de logement aux États-Unis (Smedberg et al., 2017)
Avantages : Les données sont accessibles publiquement sur Internet, quel que soit le pays
ou la cible. La quantité d’information est grande.
Limites : Les données remplies par certains utilisateurs de la plate-forme peuvent être
erronées. Le nombre de caractéristiques renseigné est moins élevé.

T ABLEAU 1.1 – Comparaisons des méthodes d’acquisition de données de logements

Méthodes d’acquisition Avantages


Exploitation des registres officiels Fiabilité des données
Enquêtes sur le logement Prise de l’information à la source, possibilité d’enregistrer auta
Plates-formes d’annonces sur le logement Grande quantité de données accessibles publiquem

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 9
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 1. État de l’art 1.1. Concepts

Outils et indicateurs statistiques du logement

Un certain nombre d’outils statistiques sont utilisés pour rendre compte de l’état du loge-
ment dans une localité. L’étude statistique peut porter sur les biens disponibles et/ou sur les
transactions de ventes et de locations déjà réalisées. Ainsi on distingue alors :

Le nombre de transactions ou de biens disponibles


Il s’agit d’énumérer le nombre de biens disponibles dans la zone d’étude ; cela peut être le
nombre de maisons en ventes, le nombre de maisons en location, le nombre de maisons déjà
vendues depuis une certaine date, le nombre de maisons déjà louées depuis une certaine date.

Le prix moyen
Le prix moyen représente la moyenne arithmétique des prix considérés. Les prix cibles peuvent
être des prix de vente, dans ce cas on va parler du prix de vente moyen, ou des prix de location
par mois ou par jour et là, on va parler de prix de moyen de location mensuel ou journalier. La
formule 1.1 illustre le calcul du prix moyen.
P
pr i x
Pr i x moyen = (1.1)
nombr ed epr i x
Le quartile de prix
Les quartiles sont un ensemble de 03 nombres qui divisent un ensemble trié en 04 parts égales,
de sorte que chaque partie représente le quart de l’ensemble de données. Ils sont utilisés en
statistiques descriptives pour observer les répartit pour déterminer cet ensemble il suffit de
procéder de la manière suivante :
o Ordonner la liste de données
o Recherche de la valeur médiane : Valeur qui divise le jeu de données en 02 parties égales
et ordonnées. La médiane trouvée représente le deuxième quartile de prix noté habi-
tuellement Q2
p Si le nombre de données est impair alors la médiane est l’élément milieu
p Si le nombre de données est impair et qu’on note N ce nombre, alors la médiane
est la moyenne arithmétique entre les éléments d’indices E(N/2) et E(N/2) + 1 ; où
E(x) est la fonction partie entière de x.
o Le premier quartile représente la médiane de l’ensemble compris entre la première va-
leur des données ordonnées et le deuxième quartile. Il est habituellement noté Q1
o Le troisième quartile représente la médiane de l’ensemble de compris entre le deuxième
quartile et la dernière valeur des données ordonnées. Il est habituellement noté Q3
Le prix médian
Il correspond au 2e quartile de prix et représente une mesure plus sûre de la tendance géné-
rale des prix que le prix moyen (Bryan et al., 1991).

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 10
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 1. État de l’art 1.1. Concepts

Le premier quartile de prix


Il représente le prix qui peut être entendu comme prix moins chers courants sur le marché,
sans pour autant être le plus petit prix du jeu de données (Bryan et al., 1991).

Le troisième quartile de prix


C’est une mesure de ce qui peut être entendu comme prix chers courants sur le marché, sans
pour autant être le prix le plus élevé du jeu de données (Bryan et al., 1991).

L’Écart Inter-Quartile (IQ)


Encore appelé Étendue Inter-Quartile, l’Écart Inter-Quartile est grandeur qui mesure la dis-
persion dans les données. Elle s’obtient en faisant la différence entre le troisième quartile et
le premier quartile. En immobilier elle est utilisée pour représenter un certain intervalle de
confiance. La formule 1.2 illustre son calcul

IQ = Q3 − Q2 (1.2)

La figure 1.1 montre la répartition des quartiles dans un ensemble de données.

F IGURE 1.1 – Analyse d’un ensemble de données avec les quartiles

Surface moyenne
La surface moyenne ou plus précisément la surface moyenne habitable est la moyenne arith-
métique des surfaces de logements considérés. Elle est exprimée en m 2 dans la plupart des
pays à l’exception des États-Unis qui où on utilise le pied au carré ( f t 2 )

Suppression des données aberrantes


Les données aberrantes sont des données qui sont trop grandes ou trop petites. Dans le cas
des logements, les données aberrantes peuvent être des logements vendus à des prix beau-
coup trop bas ou beaucoup trop élevés par rapport à leurs valeurs réelles sur le marché, à

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 11
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 1. État de l’art 1.1. Concepts

cause d’une situation particulière du vendeur. Il existe plusieurs méthodes de suppression


des données aberrantes ; l’une des plus populaires et des plus efficaces de ces méthodes est
la méthode de Tukey’s fences (Seo, 2006). Elle définit un intervalle en dehors duquel toutes
les données de l’ensemble sont considérées comme aberrantes ; cet intervalle est donné par
l’expression 1.3

[Q1 − 1.5 × (IQ), Q3 + 1.5 × IQ] (1.3)

Les prix par unité de surface


Cette opération consiste à ressortir pour chaque donnée de l’ensemble, le prix d’une unité de
surface. Pour la réaliser, il suffit de diviser pour chaque logement, son prix par sa superficie.

Le taux d’occupation
Dans le logement, le taux d’occupation désigne le rapport entre le nombre de logements ayant
été occupé sur le nombre de logements disponibles dans une période donnée.

L’évolution des prix


Le marché du logement est soumis à bon nombre de fluctuation liée aux tendances d’offres et
de demandes. Il est donc important de pouvoir examiner l’évolution de ces prix sur le temps. Il
suffit alors de sauvegarder les prix à chaque période sortes à représenter l’évolution mensuelle
des prix aussi bien que l’évolution annuelle.

L’estimation des prix de logements

L’estimation du prix d’un logement encore appelée valuation du logement est une pra-
tique qui consiste à donner la valeur marchande de ce bien compte tenu des caractéristiques
du logement et de l’état du marché.

Notion d’indice de prix

Méthodes d’évaluation des logements


Méthodes d’évaluations des logements

1.1.3 Généralités sur le Web scraping


Le Web

L’Internet est constitué d’un vaste réseau de serveurs interconnectés entre eux à l’échelle
mondiale et donnant accès à une masse considérable d’informations. Parmi les nombreuses
applications de l’Internet, il en est une qui a pris le pas sur toutes les autres, au tournant des
années 90 : le World Wide Web. Traduction en français : Toile d’araignée mondiale. Le web est

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 12
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 1. État de l’art 1.1. Concepts

une technologie informatique permettant de consulter des pages regroupées sur des ordina-
teurs serveur connectés à Internet. L’ordinateur personnel, doté de son logiciel de navigation
(Internet Explorer, Google Chrome, Firefox...), joue le rôle du client. Les ordinateurs distants
sur lesquels sont hébergés les sites web sont des serveurs. Clients et serveurs, connectés au
réseau Internet, communiquent entre eux. La figure 1.2 présente le fonctionnement général
du Web.

F IGURE 1.2 – Fonctionnement du Web

HTTP
Le protocole HTTP pour HyperText Transfer Protocol, est un protocole qui permet un transfert
de pages Web localisées grâce à une chaîne de caractères appelée URL entre un client et un
serveur web. La communication entre le client et les serveurs se fait en deux étapes :
o Le client effectue une requête http ;
o Le serveur traite la requête, puis envoie une réponse http.
Une requête HTTP est un ensemble de lignes envoyé au serveur par le navigateur. Elle
comprend :
Une ligne de requête : c’est une ligne précisant le type de document demandé, la méthode
qui doit être appliquée, et la version du protocole utilisée. La ligne comprend trois élé-
ments devant être séparés par un espace :
p La méthode : C’est la méthode d’envoi des informations, le tableau ?? présente les
différentes méthodes d’une requête HTTP
p L’URL
p La version du protocole utilisé par le client (généralement HTTP/1.0)
Les champs d’en-tête de la requête : il s’agit d’un ensemble de lignes facultatives permettant
de donner des informations supplémentaires sur la requête et/ou le client (Navigateur,
système d’exploitation ...). Chacune de ces lignes est composée d’un nom qualifiant le
type d’entête, suivi de deux points (:) et de la valeur de l’en-tête ;
Le corps de la requête : c’est un ensemble de lignes optionnelles devant être séparées des
lignes précédentes par une ligne vide et permettant par exemple un envoi de données
par une commande POST lors de l’envoi de données au serveur par un formulaire.

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 13
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 1. État de l’art 1.1. Concepts

T ABLEAU 1.2 – Les méthodes HTTP

Méthode Description
GET Requête de la ressource située à l’URL spécifiée
HEAD Requête de l’en-tête de la ressource située à l’URL spécifiée
POST Envoi de données au programme situé à l’URL spécifiée
PUT Envoi de données pour mise à jour de la ressource à l’URL spécifiée
PATCH Envoi de données pour mise à jour partielle de la ressource à l’URL spécifiée
DELETE Suppression de la ressource située à l’URL spécifiée

Une Réponse HTTP est un ensemble de lignes envoyées au navigateur par le serveur. Elle
comprend :
Une ligne de statut : cest une ligne précisant la version du protocole utilisé et l’état du trai-
tement de la requête à l’aide d’un code et d’un texte explicatif.
Les champs d’en-tête de la réponse : il s’agit d’un ensemble de lignes facultatives permet-
tant de donner des informations supplémentaires sur la réponse et/ou le serveur. Cha-
cune de ces lignes est composée d’un nom qualifiant le type d’entête, suivi de deux
points (:) et de la valeur de l’en-tête ;
Le corps de la réponse : il contient le document demandé.
Les codes de réponse sont des numéros correspondant à lissue des requêtes HTTP. Le
premier indique la classe de statut et les suivants la nature exacte de l’erreur. Le tableau ??
présente les codes derreur dune requête HTTP.

T ABLEAU 1.3 – Codes de réponses HTTP

Code Message
10x Message d’information
20x Réussite
30x Redirection
30x Erreur due au client
30x Erreur due au serveur

Le protocole http comme nous venons de le voir permet un échange de données entre un
client et un serveur ; or, les données qui transitent entre le client et le serveur ne sont pas cryp-
tées ; il se pose donc un problème : celui de la sécurité du canal de communication entre les
deux entités. Pour résoudre ce problème, un autre protocole a été développé, il s’agit du pro-
tocole HTTPS.

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 14
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 1. État de l’art 1.1. Concepts

Le protocole HTTPS

L’Hypertexte Transfer Protocol Secure, est la combinaison du protocole HTTP avec un


protocole de chiffrement tel que SSL ou TLS fonctionnant sur le port TCP 443. Il permet à
lutilisateur de vérifier lidentité dun site par le moyen des certificats. Si lutilisateur sert dun
certificat, il permettra de lauthentifier auprès du serveur. Il est utilisé pour les transactions fi-
nancières et la consultation des données privées. La figure 1.3 illustre la différence de couches
entre le HTTP et le HTTPS.

F IGURE 1.3 – Modèle en couche HTTP et HTTPS

internet
adresse IP (publique, privée)

API

Une API (Application Programmable Interface : ń interface de programmation ż ou ń in-


terface pour laccès programmé aux applications) est un ensemble de fonctions permettant
daccéder aux services dune application, par lintermédiaire dun langage de programmation.
Une API permet de fournir un certain niveau dabstraction au développeur, cest-à-dire quelle
lui masque la complexité de laccès à un système ou à une application en proposant un jeu de
fonctions standard dont seuls les paramètres et les valeurs retournées sont connus. Ainsi, par
analogie avec une voiture, le conducteur n’a pas à connaître le fonctionnement mécanique
du moteur d’un véhicule pour pouvoir le conduire. Seule une interface composée d’un vo-
lant, de pédales (accélérateur, embrayage, frein), de manettes (clignotants, phares, boîte de
vitesse) et de boutons (warning, antibrouillard, klaxon, etc.) lui sont accessible : il s’agit d’une
certaine façon de l’interface proposée à l’utilisateur. Grâce aux API, un développeur na donc
pas à se soucier de la façon dont une application distante fonctionne ni de la manière dont
les fonctions ont été implémentées pour pouvoir l’utiliser dans un programme. Une API peut
être disponible pour un langage particulier ou bien être disponible pour plusieurs langages de

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 15
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 1. État de l’art 1.1. Concepts

programmation.
Les API sont des services web, et par conséquent ils sont dotés darchitectures. Il existe plu-
sieurs technologies derrière le terme service web.

o Les SOAP : SOAP repose largement sur XML, et ensemble avec des schémas, définit un
cadre de messagerie très fortement typé. Chaque opération fournit par le service est ex-
plicitement défini, ainsi que la structure XML de la demande et de réponse pour cette
opération. Chaque paramètre d’entrée est défini de façon similaire et lié à un type : par
exemple un entier, une chaîne, ou un autre objet complexe. Tout cela est codifié dans le
WSDL (Web Service Description Language). Le WSDL est souvent expliqué comme un
contrat entre le fournisseur et le consommateur du service. En termes de programma-
tion du WSDL, il peut être considéré comme une signature de méthode pour le service
Web.
Le REST : Le REST est un style architectural, contrairement à SOAP qui est un protocole
standardisé. Il utilise des technologies existantes et largement adoptées, en particulier
HTTP, et ne crée pas de nouvelles normes. Il peut structurer les données en XML, YAML,
ou tout autre format lisible par une machine, mais habituellement JSON - JavaScript
Object Notation est préféré. REST suit le paradigme orienté objet de programmation du
nom verbe. REST est très axé sur les données, par rapport à SOAP, qui est fortement axé
sur la fonctionnalité. Dans le paradigme REST, les métadonnées sont structurées hiérar-
chiquement et représentées dans l’URI ; cela prend la place du nom. Le standard HTTP
offre plusieurs verbes représentant des opérations ou des actions que vous pouvez ef-
fectuer sur les données, le plus souvent : GET, POST, PUT et DELETE.

Proxy
Un proxy est une machine qui sert dintermédiaire entre les machines d’un réseau et un autre
réseau (généralement Internet). Sur Internet, il existe différents types de proxy. Les plus cou-
rants sont les proxy HTTP. Un proxy peut avoir plusieurs utilisations.
Le proxy peut vous protéger : il peut vous autoriser à vous connecter à l’extérieur et interdire
les ordinateurs d’Internet de venir se connecter sur le vôtre.
Le proxy peut masquer les informations concernant votre ordinateur : En effet, quand vous
surfez, tous les sites Web peuvent savoir de quel site vous venez, quel navigateur vous
utilisez, quel est votre système d’exploitation, votre adresse IP, entre autres. Certains
proxy masquent ces informations. Ces proxy sont dit proxy anonyme. proxy peut mé-
moriser les pages les plus demandées] : Ainsi si vous demandez plusieurs fois la même
page, le proxy vous la donnera immédiatement sans aller la chercher sur Internet.
Les figures ?? et 1.4 illustrent le déroulement d’une requête HTTP vers le site www.ya-
hoo.com avec et sans proxy respectivement.
Un proxy est sous la forme { <adresse IP> : <port de connexion>}. C’est cette adresse qui
sera visualisée au niveau du serveur d’hébergement de la page web sollicitée. On distingue 03
types de proxy en fonction du taux d’anonymat qu’il apporte :

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 16
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 1. État de l’art 1.1. Concepts

Elite Proxy / Highly Anonymous Proxy : Le serveur web ne peut pas détecter que vous utili-
ser un proxy
Anonymous Proxy : Le serveur peut savoir que vous utiliser un proxy, mais ne peut pas
connaître votre adresse réelle
Transparent Proxy : Le serveur peut savoir que vous utilisez un proxy et peut également
connaître votre adresse IP.

Web scraping

Le Web scraping représente la récolte des données présentes sur les pages Web sur Inter-
net. Il permet aux entreprises de récupérer des informations non structurées sur le Web, et de
les transformer en données structurées de telle sorte qu’elles puissent être consommées par
leurs propres applications, tout en apportant une valeur ajoutée significative.

Le World wide web (www) a été construit pour utiliser les informations créées par d’autres
personnes à travers les connexions entre des pages au moyen des liens et URL. Tout cela fonc-
tionnait bien lorsque la quantité d’informations manipulables était réduite, l’exploitation était
aisée. Cependant avec la popularité sans cesse grandissante du WWW, la quantité d’informa-
tions disponibles sur Internet a considérablement augmenté, au point de plus être totalement
manipulable manuellement.
C’est à ce moment que le Web scraping a fait son apparition. Le Web Scraping , Data Scra-
ping, Data Extraction ou encore Web Data Extraction aide à transformer toutes ces données
sur Internet en données structurées qui peuvent être utilisées par les autres ordinateurs et
applications pour créer de manière plus innovante.
Cette technique est donc utilisée par les moteurs de recherche , comme Google 4 Pour par-
courir et indexer les pages web sur internet tout en stockant les index dans leur base de don-
nées. Lorsqu’un utilisateur tape une recherche, le moteur de recherche fouille dans sa base
de données le texte entré et identifie les pages sur lesquelles les mots clés de ce texte ont été
référencés.
Les composants du Web Scraping

Le Web Scraping utilise un certain nombre de composants, modules ou étapes pour ex-
traire les informations sur le Web. Parmi les principales sont :

Crawling ou Navigation : C’est le processus qui consiste à partir d’une page du site web, et
naviguer automatiquement à travers le site en suivant les liens qui respectent certains
critères.
Scraping ou exploration des informations : C’est le processus d’exploration des informa-
tions sur une page web visitée par le crawler. Dans le contexte où c’est un humain qui
4. www.google.com

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 17
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 1. État de l’art 1.1. Concepts

explore les informations, cela correspond à sélectionner et l’information et à le copier


dans le presse-papier.
Extracting ou Extraction : Consiste à récupérer l’information intéressante dans la grosse quan-
tité d’informations.
Formating ou Formatage : Les informations extraites seront exploitées par différentes appli-
cations. Il faut donc les épurer et représenter dans un format qui sera exploitable par
d’autres applications. Il peut s’agit des format JSON, CSV, XML.
Exporting ou exportation : Les données extraites doivent finalement être exportées vers une
application, ou fournies par un API.

La figure 1.5 résume le fonctionnement du web scraping, Spider (araignée) désigne le pro-
gramme, le robot ou encore le script qui effectue le web scraping.

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 18
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 1. État de l’art 1.1. Concepts

F IGURE 1.4 – Requête HTTP avec proxy (pro)

F IGURE 1.5 – Illustration du web scraping (Vargiu and Urru, 2012)

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 19
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 1. État de l’art 1.2. Travaux existants

1.2 Travaux existants

1.2.1 Les travaux de la littérature


Les méthodes d’évaluation des prix de logements

Les ventes répétées


Limites : Cette méthode ne tient pas compte des nouveaux logements ainsi que des loge-
ments qui ont été vendus une seule fois. Pour avoir plusieurs ventes répétées, on doit avoir
plusieurs ventes pour commencer. La méthode des ventes répétées ne peut donc s’appliquer
qu’aux grandes zones métropolitaines.

1.2.2 Les plates-formes opérationnelles


Les statistiques sur les logements sont généralement réalisées à des échelles régionales,
nationales et à l’échelle d’une plate-forme. L’accent est mis sur les plates-formes qui offrent
la possibilité à l’utilisateur d’obtenir de façon interactive les statistiques sur les logements.

Airdna

Airdna est une plateforme américaine qui réalise des analyses statistiques sur les loge-
ments de location mis en ligne sur Aibnb. Il cible particulièrement l’aide à l’investissement ;
à cet effet elle ne prend pour le moment en compte que les logements des pays Européens et
Américains. Elle réalise des statistiques telles que :
o Le prix moyen dans une zone
o Le taux d’occupation dans une zone
o Le taux de rentabilité dans une zone
Airdna possède de plus un estimateur de prix de location du nom de rentalizer
Limites
q La portée est limitée au logements de la plateforme Airbnb
q Ne concerne que les transactions de type location
q Ne prend pas en compte les locations traditionnelles
q Ne permet pas de comparer deux zones

Mashvisor

Mashvisor est une plateforme de statistiques sur les prix de ventes et de logements aux
Etats-Unis et sur la plateforme airbnb.
Elle réalise les statisitques
Limites

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 20
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 1. État de l’art 1.3. Bilan du chapitre

q Portée limitée au Etats-Unis


q Disponible en une seule langue l’anglais.
q Ne réalise pas des estimation de prix
q Ne permet pas de comparer deux zones

1.3 Bilan du chapitre


Le tableau 1.4 présente les limittes des plateformes existances et le besoins de développer
une plateforme qui ai une porté mondiale, disponible en plusieurs langues, opérant des statis-
tiques sur des logements en vente ou en location et permettant d’évaluer les prix de nouveaux
logements.

T ABLEAU 1.4 – Etudes comparative Airdna et Mashvisor

Critère Airdna Mashvisor


Portée mondiale Non Non
Statistiques usuelles Oui Oui
Ventes Non Oui
Locations vacantes Oui Oui
Locations traditionnelles Non Oui
Comparaisons de zones Non Non
Estimations de prix Oui Non

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 21
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
CHAPITRE 2
Méthodologie

Ce chapitre offre une description détaillée des solutions mises en oeuvre en passant par les
besoins et les contraintes identifiées. Il commence par une analyse des besoins recensés avant de
chuter sur la conception de la solution et de ses différents composants, dont les robots
d’extraction d’informations sur internet, le module de statistique, le modèle de prédiction des
prix et l’interface utilisateur.

22
Chapitre 2. Méthodologie 2.1. Analyse du problème

2.1 Analyse du problème

2.1.1 Expression des besoins


Le besoin est ce qui est exprimé ou non exprimé par l’utilisateur et qui lui permet de réa-
liser un certain nombre d’actions ou tâches (# citation). Les besoins d’un système désignent
donc l’ensemble des contraintes et missions à remplir par ce système. Pour le système réalisé,
les besoins énoncés plus bas sont une fusion des besoins typiques des plates-formes d’agréga-
tions d’annonces immobilières (home rental aggregator) et des plates-formes de statistiques
immobilières, auxquels nous avons rajouté la portée mondiale, le comparateur de zones géo-
graphiques sur le logement et l’estimateur de prix. Pour une meilleure distinction entre nos
besoins, nous les avons regroupés en besoins fonctionnels et contraintes non fonctionnelles.

Les besoins fonctionnels

Il s’agit des actions qui doivent être réalisables par le système :


o Sélectionner une zone de recherche : du monde (Pays, Ville ou quartier) sur laquelle
avoir des statistiques sur le logement
o Filtrer les annonces suivant plusieurs critères
p Suivant le type de transaction concernée : Location ou vente
p Suivant le type de location :
p Suivant le nombre de chambres
p Suivant le nombre de salles de bain
p Suivant le nombre de pièces
p Suivant le nombre de la taille de la surface habitable
p Suivant le prix du logement
p Suivant le caractère meublé ou non du logement
le type de transactions sur lesquelles faire des statistiques : Location ou vente
o Afficher les données relatives à la zone sélectionnée et au filtrage effectué :
p Afficher la liste des logements
p Afficher le détail sur une annonce de logement
p Afficher le nombre total de logements
p Afficher le prix moyen des logements
p Afficher le prix médian des logements
p Afficher le 1er et 3e quartile de prix de logements
p Afficher les répartitions des logements en fonction d’une de ses caractéristiques
(nombre de lits, nombres de chambres, nombres de pièces, surface habitable)

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 23
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.1. Analyse du problème

o Évaluer le prix d’un logement


p Enregistrer les caractéristiques d’un logement
p Calculer et afficher le prix de location mensuel de ce logement
p Calculer et afficher le prix de vente de ce logement.

Les contraintes

2.1.2 Cas d’utilisation


Le diagramme de cas d’utilisation de la figure 2.1 illustre les différents cas d’utilisation du
système.

F IGURE 2.1 – Diagramme de cas d’utilisation du système

#description des cas d’utilisation

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 24
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

2.2 Conception

2.2.1 Gestion du projet


La gestion de projet est une démarche mise en oeuvre visant à planifier et à organiser de
bout en bout la réalisation d’un projet. La méthodologie adoptée dans l’analyse et la concep-
tion des systèmes représente un choix stratégique pour mener à terme les projets tout en res-
pectant les délais annoncés au client et avec la qualité requise. Le diagramme de GANTT est
un outil très souvent utilisé en ordonnancement et en gestion de projet pour visualiser les dif-
férentes tâches composant un projet ainsi que leurs interactions. Dans le but de fournir une
visualisation dans le temps des étapes clés du travail et leurs interdépendances, nous avons
mis sur pieds un diagramme de GANTT, illustré par la figure 2.2.

F IGURE 2.2 – Diagramme de GANTT du projet

Le diagramme de GANTT proposé sera utilisé comme outil de discussion et de présenta-


tion de la compréhension du projet ; il ne sera cependant pas utilisé pour le suivi du projet.
Pour le pilotage de ce projet, nous avons adopté la méthode SCRUM. La méthode SCRUM
est un des exemples de l’approche agile. L’approche agile est une philosophie de gestion de
projet qui prend le contre-pied des approches traditionnelles prédictives et séquentielles de
type cycle en V ou en cascade. La notion même de "gestion de projet" est remise en question
au profit de "gestion de produit". De façon à raisonner davantage "produit" que "projet". Les
méthodes agiles se rapprochent du cycle de développement itératif où le produit est construit
au fur et à mesure en ajoutant des couches au-dessus des autres. Elles s’appuient sur trois
piliers :
Transparence : Il doit avoir un langage commun entre le client, l’équipe et le management

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 25
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

permettant à tout observateur d’obtenir rapidement une bonne compréhension du su-


jet
Inspection : Il faut faire des points sur les différents artefacts produits à intervalle régulier
afin de détecter tout écart non désiré.
Adaptation : Toute imperfection constatée lors de l’inspection doit être adapté.
SCRUM est de très loin la méthodologie la plus utilisée parmi les méthodes agiles existantes ;
elle est donc plus documentée, éprouvée et supportée. Scrum est considéré comme un cadre
ou ń framework ż de gestion de projet. Ce cadre est constitué d’une définition des rôles, de
réunions et d’artefacts.

Les rôles : Scrun définit 03 rôles :


o Le Product Owner : ou gestionnaire du produit, qui porte la vision du produit à réaliser
et qui définit les caractéristiques souhaitées pour le produit. Dans ce travail, ce rôle est
joué par le promoteur du projet, M. Alexandre MBIAM, DG de AAG.
o Le Scrum Master ou "maître SCRUM", garant de l’application de la méthodologie Scrum.
Il a pour but de superviser les membres en facilitant la communication des informations
essentielles. Nous avons joué ce le rôle de Scrum Master dans ce projet en définissant
les ...
o L’équipe de développement : elle recouvre l’ensemble des ingénieurs, techniciens qui
réalisent le produit.
La figure ‘2.3 présente les différents intervenants de la méthode SCRUM, leurs fonctions et
leurs éventuels équivalents dans les approches traditionnelles.
Scrum définit trois concepts de base :
Le Product Backlog : c’est une liste ordonnancée des exigences fonctionnelles et non fonc-
tionnelles du produit. Il peut être assimilé au cahier de charges global du produit et est
réalisé par le Product Owner.
Le Sprint : Un Srpint ou itération, est une grande tâche à réaliser du Product Backlog. Il tient
généralement sur 3 ou 4 semaines et est lui-même divisé en plusieurs petites tâches qui
seront réalisées quotidiennement ou sur 2 voir 3 jours.
User Story : Les fonctionnalités décrites portent le nom de User Stories et sont décrites en
employant la terminologie utilisée par le client.

Les réunions Un projet Scrum est cadencé par un ensemble de réunions clairement définies
et strictement limitées dans le temps :
Le Sprint Planning ou Planification du Sprint : Il s’agit d’une réunion permettant la sélec-
tion du sprint à réaliser et la définition de ses objectifs.

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 26
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

F IGURE 2.3 – Les rôles dans la méthode SCRUM

Le Sprint Review ou Revue de Sprint : Réunion qui a lieu à la fin du sprint et durant laquelle
l’équipe de développement présente les fonctionnalités terminées du sprint.
Le Daily Scrum ou Mêlée quotidienne : Réunion de synchronisation de l’équipe de dévelop-
pement qui dure 15 minutes maximum et au cours de laquelle chaque membre réponds
à 03 questions principales :
o Qu’est ce que j’ai fait depuis la dernière réunion ?
o Qu’est-ce j’aurai terminé d’ici la prochaine réunion ?
o Quels obstacles retardent l’avancée ?
Cette réunion se fait généralement debout, d’où son appellation "stand-up meeting".
La figure 2.4 présente le cycle de vie de la méthodologie SCRUM afin d’avoir une vue d’en-
semble de ce qui a été dit précédemment.

2.2.2 Description générale de la solution


La solution que nous proposons est un système qui rassemble les propriétés des plates-
formes d’agrégation d’annonces immobilières et de celles des applications de statistiques sur
le logement. Ce système a pour but de lister les différentes annonces de logements présentes
dans une zone donnée, de rendre des statistiques sur la situation du logement dans cette zone,
et de permettre la prédiction du prix d’un nouveau logement dans cette zone ; tout cela via une
interface web. Cette solution fonctionne donc de la minière suivante :

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 27
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

F IGURE 2.4 – Cycle de vie d’un produit dans la méthode SCRUM Schwaber and Beedle (2002)

o Tous les jours, le système parcourt automatiquement les plates-formes d’annonces de


logements, extrait les informations et les sauvegarde
o Le système parcourt ensuite les données sauvegardées pour y faire des calculs statis-
tiques et sauvegarder les résultats
o Les données de logement sauvegardées sont utilisées pour entraîner un modèle de ré-
seaux de neurones profonds à prédire les prix des logements. Cet entraînement se fait
chaque dimanche à partir de 00H00.
o Le système dispose d’une interface web pour interagir avec les utilisateurs
o Lorsqu’un utilisateur demande via l’interface web à consulter les informations d’une
zone, le système interroge les données sauvegardées, effectue des calculs statistiques et
affiche les résultats sur l’interface web.
o Lorsqu’un utilisateur demande via l’interface web à évaluer le prix d’un logement, il doit
fournir les caractéristiques du dit logement ; le système applique alors à ces caractéris-
tiques le modèle de réseau de neurones profonds habituellement entraîné, pour prédire
le prix de vente ou de location du logement indiqué.
Le système à mettre en place comporte 04 principaux composants à savoir : L’acquisition
des données, les statistiques sur les données, prédiction du prix d’un logement et enfin l’inter-
face utilisateur. En Effet, les le module d’acquisition des données recherche, récupère, traite
et sauvegarde les données de logement ; ces données seront exploitées par le composant de
statistiques pour ressortir les statistiques sur le logement et aussi pour prédire par appren-
tissage automatique le prix d’un nouveau logement. Les données de statistiques ainsi que les
contrôles de prédiction seront présentés sur l’interface utilisateur. La figure 2.5 illustre les dif-
férents composants du système et leurs interactions.

2.2.3 Acquisition des données


Diagramme de communication détaillé de ce composant

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 28
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

F IGURE 2.5 – Répartition et interactions entre les modules du système

Avec l’expansion des techniques de l’information et de la communication, les plates-formes


d’annonces immobilières ont fleuri et sont devenues un carrefour de prédilection du marché
de l’immobilier en général et du logement en particulier. Ces différentes plates-formes re-
groupent d’après une étude menée (# à chercher) près de 80% des produits immobiliers dans
le monde, et ce taux ne cesse de grimper. Les plates-formes d’annonces constituent donc pour
ce projet, la source de données la plus intéressante. Cependant, les données dont elles re-
gorgent représentent leur produit, leur marchandise, ce qu’elles vendent à leurs utilisateurs ;
elles gardent donc jalousement ces données. Certaines d’entre elles donnent un accès payant
à une partie de leur base de données via un service web, mais avec beaucoup de restriction
sur le nombre de requêtes possibles, la quantité de données à observer entre autres ; c’est par
exemple le cas de la plate-forme Airbnb 1
C’est à ce niveau que le web scraping fait son intervention ; il va permettre d’explorer de
manière automatique les différents sites web d’annonce page après page afin d’ y extraire les
informations qui s’y trouvent ; il ne restera par la suite plus qu’à nettoyer et stoker ces don-
nées dans une base de données. La figure 2.6 présente les différentes étapes d’acquisition des
données.

1. airbnb.com

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 29
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

F IGURE 2.6 – Sous module d’acquisition des données

Web scraping

Pour extraire les données des différentes plates-formes, il est important de traiter chaque
plate-forme séparément. A chaque système cible va correspondre un algorithme bien particu-
lier qui va récupérer les informations en fonction de la structure du site ; on aura donc autant
d’algorithmes d’extraction qu’il y’a de plates-formes cibles. Pour chaque page, le script lance
une requête HTTP/HTTPS vers le site, récupère le code HTML de la page et essaie d’extraire
les informations à l’intérieur. Ainsi les étapes préalables du web scraping seront :
o L’analyse des données de la plate-forme cible : Pour chacune des différentes plates-
formes, il faut comprendre et ressortir son architecture logique, étudier les échanges
d’informations, la logique d’affichage des contenus, la logique d’enchaînement des pages !
o L’analyse des restrictions : Pour chaque plate-forme, il s’agit d’identifier les temps de
réponse du serveur, le nombre maximum de données que le serveur peut renvoyer pour
une requête quelconque, les types de techniques anti-scraping mises en place sur le
serveur (blocage d’adresse IP, protection cloud, identification par cookies)
o L’écriture du script d’extraction des données : Après avoir compris toutes les logiques
mises en oeuvre sur la plate-forme cible, il faut écrire un algorithme permettant d’ex-
traire les données partant d’un page de départ et se déplaçant page par page jusqu’à

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 30
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

l’extraction totale des informations souhaitées.

Les problèmes rencontrés : Pour protéger leurs données, des plates-formes concurrentes tout
en les rendant accessibles aux internautes, les systèmes d’annonces immobilières, mettent en
place plusieurs mécanismes de blocage. Ces mécanismes rendent impossible ou très difficile
l’extraction automatique des données sur leurs plates-formes. Ainsi on distingue :
Le blocage d’adresse IP : Lorsqu’une machine fait une requête vers une page sur internet, le
serveur qui héberge cette page peut voir l’adresse IP publique depuis laquelle la requête
a été émise. Celui-ci enregistre alors chaque requête dans une base de données ou dans
un fichier de log. Le serveur identifie alors touts les adresses IP qui ont un fonctionne-
ment suspect c’est-à-dire qui font des requêtes trop fréquentes ; dès lors qu’il juge que
ce comportement n’est pas celui d’un internaute, il bloque l’adresse IP concernée. Ce
qui est tout à fait normal, car un nombre important de requêtes vers un serveur en un
court laps de temps fait penser à une attaque de type de Dénie de service (DOS) le blo-
cage peut se faire de deux manières :
o Le serveur ajoute l’adresse IP concernée à une liste d’adresses interdites d’accès
appelée "Black list".
o Le serveur renvoie un CAPTCHA à la place de la page demandée à chaque fois
quune adresse IP concernée fait une requête vers une page web hébergée sur ce
serveur. Le CAPTCHA permet de différencier de manière automatique un utilisa-
teur humain (internaute), d’un ordinateur (scrpit).
L’identification du client HTTP/HTTPS : Une requête HTTP ou HTTPS possède plusieurs
caractéristiques parmi lesquelles l’URL, l’entête de la requête, les paramètres, les co-
okies, les données de session. Une requête issue d’un navigateur a des structures bien
connues :
o Une entrée dans l’entête présentant le navigateur, sa version, le type d’équipement
sur lequel il est exécuté (Desktop, Mobile), le système d’exploitation sur lequel il
s’exécute (Linux, MAC, Windows) ; ce champ est appelé USER-AGENT. Un script
par défaut n’indique aucun autre élément mis à part l’URL à accéder et les para-
mètres à transmettre, ce qui le rend facilement détectable par les serveurs d’héber-
gement.
o Les navigateurs enregistrent généralement les cookies et des objets sessions issues
des précédentes navigations sur le site ; ce qui n’est pas le cas pour les scripts. Ces
cookies et sessions sont transmis au serveur à chaque requête sur un navigateur.
Cependant le script n’enregistre pas de cookies ni d’instance de session, et sera
donc très vite identifié.
Une fois que le serveur d’hébergement remarque qu’une requête ne vient pas d’un na-
vigateur et donc d’un internaute, il bloque la requête ou y répond par un CAPTCHA.

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 31
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

Le masquage des informations par le JavaScript : Le JavaScript est un langage qui s’exécute
essentiellement sur le navigateur dans le but de dynamiser la page web ; en intégrant
les données à afficher dans le code Javascirpt, celles-ci ne seront affichées qu’une fois
que le navigateur aura exécuté ledit code. Les scripts de web scraping n’exécutent pas
le code JavaScript, ils se contentent de récupérer le code HTML renvoyer par le serveur.
Dans ce cas de figure, le script ne retrouvera pas les informations recherchées, car elles
n’auront pas encore été ajoutées au code HTML.
La protection par cloud : Plusieurs solutions de cloud computing offre des services pour pro-
téger les plates-formes contre les attaques de type dénie de service. Comme ce type d’at-
taque est menée par des scripts, les mesures protection bloques tous les sites qui tentes
d’accéder à la plate-forme. Cette protection cloud utilise généralement les techniques
suivantes :
o Insertion d’une première page servant de leurre, avant de rediriger quelques se-
conds plumards vers la vraie. Le script aura alors accès à une page erronée.
o Exécution de plusieurs contrôles JavaScript dans le but de vérifier si la
La limitation des données d’une réponse : Pour se préserver au maximum leurs données,
la plupart des sites d’annonce de logements limitent au maximum le nombre de loge-
ments contenus dans une réponse du serveur. Par exemple si la base de données pos-
sède 1000 logements au Cameroun, la plate-forme va bien indiquer qu’il y’a 100 loge-
ments, mais ne vas renvoyer que 200 logements au total, organisés sur plusieurs pages.

Les solutions trouvées : L’analyse et la réflexion sur les différentes mesures de protection ainsi
que les restrictions posées par les plates-formes de logements, nous a de développer quelques
astuces par lesquelles nous sommes passées pour atteindre nos objectifs. Les solutions appor-
tées face aux différentes difficultés sont les suivantes :
Le blocage d’adresse IP : Sans doute l’une des difficultés les plus redoutables. Pour la contour-
ner, nous avons opté pour un mécanisme de rotation d’adresse IP, parmi un pool d’adresses.
Il est possible lorsqu’on fait une requête vers une page, d’indiquer une adresse proxy par
laquelle on veut passer. La stratégie d’utilisation des proxy a été la suivante :
o Étape 1 : Rechercher automatiquement les proxy en ligne. Il existe plusieurs sites
en ligne qui offrent des adresses proxy ; c’est le cas de https://free-proxy-list.
net/ , www.freeproxylists.net/ que nous avons utilisé. Pour extraire les proxy
de ces pages de manière automatique, un web-scraping de premier niveau a été
réalisé sur ces sites. Par chance, ils n’utilisent pas de mécanisme de blocage d’adresse
IP, donc ce premier web-scraping se fait avec l’adresse de la machine hébergeant
notre solution.
o Etape 2 : Vérifier chaque proxy récupéré afin d’assurer qu’il fonctionne bien. En
effet plusieurs de ces proxy tombent rapidement en surcharge, car ils sont publi-
quement accessibles et utilisés de façon libre. La vérification d’un proxy se fait en

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 32
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

exécutant une requête en passant par ce proxy ; si la requête réussie, on enregistre


le proxy, sinon on le supprime. Les proxy fonctionnels sont sauvegardés dans un
fichier.
o Etape 3 : Rotation de proxy. Pour chaque requête de web-scraping de logements
qui sera effectuée, nous choisissons aléatoirement un proxy dans la liste des proxy
sauvegardés et nous l’utilisons pour effectuer la requête. Le fait de choisir un proxy
au hasard à chaque requête diminue la fréquence d’utilisation d’une même adresse
et la rapproche du comportement d’un internaute. Lorsqu’un proxy tombe en sur-
charge ou entre dans la "black list" d’une plate-forme cible, on le retire de la liste
de proxies. Un proxy est supposé en surcharge ou dans une "black list" selon nous
lorsqu’il échoue à 15 requêtes successivement.
Suivre ces étapes, avant de lancer un processus de web-scraping sur les plates-formes
d’hébergement, permet de récupérer toutes les informations souhaitées avant que tous
les proxy ne tombent en surcharge ou ne soient mis en "black list".

Lidentification du client HTTP/HTTPS : L’analyse et l’exploration depuis plusieurs naviga-


teurs des plates-formes cibles ont permis de déterminer pour chaque plate-forme, plu-
sieurs instances de paramètres fonctionnels et caractéristiques d’un internaute type. Ses
paramètres ont ensuite été intégrés aux script de web-scraping pour se faire passer pour
des navigateurs et donc des internautes aux yeux des différentes plates-formes cibles.
Les paramètres ajoutés dans les requêtes des scripts sont : les entêtes (USER-AGENT,
CONTENT-TYPE), les cookies, les données de sessions récupérées lors de nos explora-
tions préalables par navigateur.
Le masquage des informations par le JavaScript : Face au masquage des informations par
le JavaScript, nous avons utilisé la technologie Web DriverRazak and Fahrurazi (2011).
Cette technologie permet de lancer et de contrôler automatiquement (par un script) une
instance d’un navigateur. Elle a été proposée en 2011 par le logiciel Selenium pour l’au-
tomatisation des tests sur les applications web. Elle permet de contrôler le totalement la
navigation, le JavaScript, l’ouverture des liens, entre autres.
La protection par cloud : La technologie du Web Driver a également permis de s’affranchir
des protections de type cloud.
La limitation des données d’une réponse : Une analyse rigoureuse de chaque plate-forme a
mené à l’identification des limites imposées et des politiques de réponses aux requêtes.
C’est sur cette base que nous avons adapté nos requêtes de façon à ce qu’elles donnent
le plus petit nombre de résultats possible. Si nous reprenons l’exemple du Cameroun,
au lieu de faire une requête sur le Cameroun, nous faisons plusieurs requêtes, chacune
vers une seule ville du Cameroun ou pour aller plus loin, chacune vers un quartier du
Cameroun ; ceci dans le but de diminuer au maximum le nombre de résultats possibles

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 33
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

de la requête, et donc éviter au mieux la limitation des données afin de récupérer un


maximum de données sur la plate-forme.
En annexe la liste des sites web concernés par le web scraping. Web scraping

Pré-traitement

Les données extraites dans le processus précédent doivent être traitées avant d’être sau-
vegardées ; il s’agit notamment de la suppression des balises inutiles, la conversion des unités,
la recherche d’informations supplémentaires.

Suppression des impuretés : Les impuretés dans les données peuvent être : la présence des
balises de mise en forme dans le texte récupéré : <b></b> balise de mise en gras, <i></i> balise
de mise en italique. Des expressions régulières ont été utilisées pour sélectionner et supprimer
de pareilles mentions dans les données.

Formatage des données : Certaines données ne se trouvent pas dans le format adéquat, c’est
par exemple le cas des prix qui peuvent selon les plates-formes être écrits avec des virgules
(1,900,00) ou avec des points (1.900.000). Dans ce cas, il convient juste de supprimer les ca-
ractères non désirés pour obtenir la forme recherchée. Les dates sont un autre exemple de
données sujettes aux aléas de formatage ; on retrouve les formes mm/jj/aa ; jj/mm/aaaa.

Standardisation des unités : monnaie Bien que l’unité internationale de la surface soit le
mètre carré, les plates-formes américaines utilisent beaucoup plus le pied carré (square feet).
Pour garder les informations de manière uniformisée sur la plate-forme, toutes les surfaces
extraites sont ramenées en mètre carré. Un mettre carré correspond à environ 10.764 pieds
carrés ; ce qui permet d’effectuer facilement la correspondance.

La localisation des logements : Pour chaque extrait, on récupère sa latitude et sa longitude ;


à partir de ces données, on utilise un service de reverse geocoding 2 pour retrouver le pays,
la ville et le quartier d’appartenance de ce logement. Deux plates-formes peuvent utiliser un
nom différent pour représenter un même pays, une même ville ou un même quartier, soit
par choix volontaire ou dû à une liberté donnée à un utilisateur d’entrer lui même l’un de ses
noms. L’utilisation de cette technique permet de garantir des noms de pays, de villes et quar-
tiers corrects et intègres au lieu de se servir de ceux extraits sur les plates-formes. Le service de
reverse geocoding utilisé se nomme nominatim 3 ; c’est un service gratuit basé sur les données
d’OpenStreetMap 4 ; par exemple, la requête : https://nominatim.openstreetmap.org/search/
2. Technique qui permet de retrouver les informations sur une zone géographique à partir de ses coordon-
nées latitude et longitude
3. https ://nominatim.openstreetmap.org
4. https ://www.openstreetmap.org

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 34
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

3.8304,11.4881?format=xml&polygon=1&addressdetails=1&accept-language=fr per-
met d’identifier le pays (Cameroun), la ville (Yaoundé), le quartier (Nsimeyong) du point de
latitude 3,8304 et de longitude 11,4881 .
Le service nominatif nous permet également de retrouver la route la plus proche du point de
localisation du logement, ainsi que le point de cette route qui est le plus proche du logement.
À partir de cette donnée, nous allons calculer une nouvelle propriété qui est la distance entre
à la route la plus proche. Pour calculer la distance entre deux points du globe terrestre repré-
sentée par leurs coordonnées latitudes et longitudes, la formule de Vincenty Vincenty (1975).
Cette distance tient pour hypothèse que la terre est un sphéroïde aplati aux pôles. Elle est plus
précise que la distance du grand cercle qui suppose que la terre est sphérique.
En utilisant du nom de la ville d’appartenance du logement, nous interrogeons à présent le
service geocoding de nominatif qui a la différence du service reverse geocoding va renvoyer
les coordonnées GPS à partir du nom de la zone géographique. Ainsi nous allons récupérer via
ce service les coordonnées GPS du centre de la ville dans laquelle se trouve le logement. La dis-
tance de Vincenty sera ensuite utilisée pour calculer une nouvelle caractéristique du logement
qui sera la distance au centre-ville.

La normalisation des propriétés : La normalisation est une activité qui consiste à rassem-
bler les différentes variantes d’un même terme en un concept principal. Sur les différentes
plates-formes traitées, plusieurs mentions différentes renvoient généralement au même concept ;
c’est ainsi qu’on les expressions : air conditionné ... (# à compléter) qui renvoient au concept
de climatisation. Le processus de normalisation prend également en compte les écarts créés
par les différences de langues. Deux langues se retrouvent parmi les sites étudiés : le français
et l’anglais. Les données ainsi traitées sont prêtes pour le stockage dans une base de données.

L’ajout de nouvelles propriétés : La pertinence des statistiques dans un domaine dépend


fortement du nombre et de la qualité des caractéristiques considérées dans l’étude. A partir
des données GPS, il est possible de dériver de nouvelles caractéristiques comme la distance
d’un point connues comme importantes pour l’analyse du logement Blumberg and Blumberg
(2008). Les caractéristiques dérivées sont :

L’estimation de l’esthétique de l’image :


La beauté apparente d’un appartement ou d’une maison est sans aucun doute, l’un des fac-
teurs les plus attirants de celui-ci ; cette beauté aura donc une influence notable sur le prix,
qu’il s’agisse d’une maison à vendre, d’une location traditionnelle ou d’une location de va-
cance. Dans le contexte des annonces sur le logement, la beauté ou l’esthétique est contenue
dans les images que l’annonceur joint à la page du logement. Malgré l’influence supposée et
même avérée de cette caractéristique, l’esthétique n’est jusqu’ici pas exploitée dans l’estima-
tion de prix de logement, car cette information est emprisonnée dans l’image et il est difficile
de l’extraire en utilisant des moyens automatiques.

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 35
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

Avec les avancées de l’apprentissage automatique et notamment l’arrivée du deep learning, les
algorithmes atteignent des capacités de compréhension et d’interprétation des images égales
et même déjà supérieures à celle de l’homme He et al. (2016). Le travaux d’extraction de l’es-
thétique dans les images a donc connu des évolutions fulgurantes Guo et al. (2014).
Parmi ces travaux, un modèle basé sur le deep learning réalise une estimation plus précise que
celles des modèles de l’état de l’art Kong et al. (2016). La figure 2.7 fait une comparaison des
précisions atteintes par les travaux de l’état de l’art ; la méthode en gras (Reg+Rank+Att+Cont)
est qui fournit la meilleure précision (ACC).

F IGURE 2.7 – Comparaison des méthodes d’estimation de l’esthétique dans les images Kong et al.
(2016)

Elle a donc été retenue dans ce travail pour évaluer l’esthétique des logements à partir de
leurs images. En effet, dans les approches précédentes les modèles essaient d’estimer l’esthé-
tique de l’image en définissant des critères modélisant la perception que l’homme donne à la
beauté et en recherchant le taux de représentation de ces critères dans les images. Parmi ces
critères on retrouve :
o L’équilibre des éléments
o L’harmonie des couleurs
o Contenu d’intérêt
o Bonne luminosité
o Accentuation d’objet
o Couleurs vives
Cependant cette nouvelle approche ne définit aucun critère au préalable ; toute l’image
(tableau de pixel) est envoyée à un réseau de neurones convolutionnel (CNN). Ce dernier dé-
tecte lui parmi les pixels même les caractéristiques importantes pour l’évaluation de l’image ;

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 36
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

ce travail est réalisé par les premières couches du réseau par apprentissage non supervisé.
Dans ce projet, ledit modèle a d’abord été entraîné sur la base de données étiquetée d’images
AADB (Aesthetic and Attributes Database), qui contient une grande variété d’images et de
photos de toutes les scènes, et pour chacune d’elle les scores d’esthétiques données par des
voteurs humains. Cette base de données a été préférée aux autres, car elle est constituée de
photos usuelles et communes et pas uniquement de photos professionnelles comme c’est le
cas pour les autres ensembles de données. Ces photos usuelles correspondent mieux au cas
des images de logement étudié. La figure 2.8 montre les résultats du processus d’estimation
de l’esthétique dans différentes images.

F IGURE 2.8 – Évaluation de l’esthétique dans les images Kong et al. (2016)

Sauvegarde des données

Une fois les données épurées et traitées, il ne reste plus qu’à les sauvegarder. La sauvegarde
permet de disposer de ces données de façon permanente dans le système afin de les exploiter
à volonté. La sauvegarde ainsi effectuée permettra de remplir le premier besoin de ce projet
qui est la mise sur pied d’une base de données sur les logements à l’échelle mondiale. A ce jour
deux principaux modèles de bases de données sont les plus couramment utilisés : les bases de
données relationnelles et les bases de données NoSQL.

Les bases de données relationnelles : Les bases de données relationnelles représentent la


méthode de stockage basée sur le modèle relationnel. Ce modèle a été conçu depuis déjà plus
de 30 ans et reste le plus utilisé aujourd’hui, notamment en qui concerne le stockage des in-
formations financières, des données personnelles, et bien d’autres. Les bases de données re-
lationnelles sont caractérisées par une structure stricte et des transitions atomiques suivant le
principe ACID.

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 37
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

Les bases de données NoSQL : Elles apportent beaucoup d’agilité au développement et à la


maintenance. Elles sont plus rapides en lecture, car il n’y a généralement pas d’innombrables
jointures comme c’est le cas en relationnel.
# Tableau comparatif entre les BD relationnelles et les BD NoSQL.
Choix du type de base de données à utiliser.
Le processus d’acquisition des données passe donc par l’extraction des informations de-
puis plusieurs plates-formes d’annonce par un robot, ensuite les informations sont traitées et
épurées avant d’être stockées dans une base de données pour leur exploitation. La première
exploitation faite de ces données consiste à ressortir les statistiques sur le logement.

Gestion des doublons Plusieurs annonceurs ont pour habitude de poster leurs annonces de
logements sur plusieurs plates-formes, ceci dans le but d’augmenter leur visibilité et ainsi la
probabilité de trouver des personnes intéressées. L’extraction des informations se déroulant
sur plusieurs plates-formes, il est assez probable de retrouver plus d’une fois le même loge-
ment sur différentes plates-formes. Recenser plusieurs fois le même logement fausserait les
statistiques ; il faut donc mettre en place un mécanisme qui empêche les doublons. Ainsi, se-
ront considérés comme égaux, deux logements dont :
o Les titres sont égaux
o Les paramètres GPS, latitude et longitude sont égaux
o Les nombres de chambres et de salles de bain sont égaux
o Les plates-formes sources sont différentes : cette dernière caractéristique permet de
faire la différence entre les doublons et les logements d’une même cité.

Gestion des Mises à jour L’acquisition des informations est un processus répétitif qui se fait
chaque semaine ; elle se lance automatiquement chaque lundi à 00H00 grâce à l’utilisation
des tâches programmées. Pour chaque logement extrait d’une plate-forme, on vérifie si celui-
ci existe déjà dans la base de données centrale.
o Si le logement n’existe pas encore, on l’enregistre dans la base en lui ajoutant la date du
jour comme date de création
o Si le logement existe déjà dans la base de données, on le met à jour avec les nouvelles
informations extraites et on lui ajoute, une date de mise à jour
Un logement est décidé comme existant déjà dans la base de données, si l’on retrouve ses
coordonnées GPS (latitude et longitude) dans la base.

Mise en place d’un schéma de stockage des informations géographiques Le système met en
place et garde à jour un schéma de stockage pour les informations géographiques. En effet à
chaque fois qu’un logement est extrait d’une plate-forme, d’annonce, le système détermine di-
rectement son pays, sa ville et son quartier d’appartenance. Ces informations géographiques

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 38
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

sont ensuite enregistrées dans un autre document pour l’organisation des informations géo-
graphiques. Goodchild and Shiren (1992)
Les différents traitements expliqués sont résumés par le diagramme d’activités de la figure
2.9

F IGURE 2.9 – Diagramme d’activités de l’acquisition des données

2.2.4 Statistiques sur les données


Les statistiques se font selon plusieurs répartitions. Ces répartitions ont pour but d’aug-
menter la pertinence des statistiques faites en regroupant les données selon les transactions
concernées, selon les zones géographiques, selon le type de location considéré. La figure 2.10
présente les différents composants du module de statistiques.

Transaction concernée

La première répartition est fonction du type de transaction concernée par le logement.


En effet les logements en location sont traités différemment des logements à vendre. On aura

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 39
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

F IGURE 2.10 – Module de statistiques

alors des statistiques sur les logements logements en vente, avec notamment, le nombre de
logements en vente, les prix de vente moyens ; et les statistiques sur les logements mis en lo-
cation, notamment le nombre de logements en location, le prix de location par mois.

Type de location

Il existe plusieurs formes de location, dont deux principales ont été retenues dans le cadre
de ce travail. Il s’agit de la location à court terme et de la location en long terme. Les locations
à court terme concernent généralement les logements meublés.

Découpage géographique

Les statistiques effectuées sur les données ont été reparties suivant un découpage géogra-
phique et hiérarchique bien défini :
o Niveau pays : Les repères statistiques sont fournis pour tous les logements d’un pays
o Niveau Ville : Les statistiques représentent l’état du logement dans une ville bien définie
o Niveau quartier : Les statistiques retournées sont celles d’un quartier ou voisinage bien
connu.

Autres filtres

Il est possible d’appliquer plusieurs filtres à la requête effectuée afin de mieux circonscrire
la cible sur laquelle on veut faire des statistiques. Ces filtres sont entre autres :

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 40
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

o Le nombre de chambres
o Le nombre de salles de bains
o Le nombre de pièces au total
o La superficie de la surface habitée
o Le type du logement : Appartement, maison, immeuble
o Les logements sont-ils meublés ou non
o Les aménités : Ce sont des éléments qui peuvent rendre un logement plus agréable, on
distingue entre autres, la climatisation, le jardin, la piscine, le parking, la barrière, la
cour.

Outils statistiques

Les outils statistiques déployés sont les mêmes qu’il s’agisse de logements en vente ou en
location. Ces outils nous viennent tout droit de l’état de l’art ; ainsi on distinguera les éléments
suivants :

Prix moyen (vente/location) : Il s’agit de la moyenne arithmétique des prix des ventes et
de locations considérés séparément. Elle a pour but d’exprimer le prix le plus courant de loca-
tion ou de vente de logements respectant les critères de filtrage renseignés plus haut. Le Prix
de moyen de vente par exemple est égal à la somme des prix de vente, le tout multiplier par le
nombre de logements en vente. Il en est de même pour les prix de location.

Les outils statistiques utilisés sont ceux repris dans l’état de l’art.
Le diagramme d’activités de la figure 2.11 résume la liste des activités réalisées dans ce
module.

2.2.5 Prédiction du prix des logements


La figure 2.12 présente les composants du module de prédiction des prix.

Caractéristiques d’un logement

Pour la prédiction des prix de logement, les caractéristiques prises en compte sont des in-
ternes liées à la maison et externes liées à l’environnement.
textbfLes caractéristiques internes

o Le type du logement
o Le nombre de chambres
o Le nombre de salles de bain

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 41
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

F IGURE 2.11 – Diagramme d’activités du module de statistique

o Le nombre de pièces
o La présence d’un parking
o La présence d’un portail
o La présence d’une cour

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 42
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

F IGURE 2.12 – Composants du module de prédiction de prix

o La présence d’une piscine


o L’année de construction
o L’esthétique du logement calculée à partir de ses photos
Les caractéristiques externes

o La position géographique
o La distance à la route la plus proche
o La distance au centre-ville

Mesure de l’erreur

La prédiction de prix est un problème de régression, car la variable à prédire est une va-
riable quantitative. Plusieurs mesures d’erreurs sont utilisées en régression, parmi celles-ci
l’une des plus populaires est la ...

Apprentissage automatique

L’application utilise un modèle de réseaux de neurones pour apprendre à déterminer le


juste prix d’un Pour prédire le prix, il faut préparer un modèle à partir d’un ensemble de don-

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 43
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

nées. Cette activité s’appelle entraîner le modèle. Le modèle adopté est un réseau de neurones
profond qui va réaliser un apprentissage supervisé.

Jeu de données

Le modèle de prédiction est entraîné sur l’ensemble des données récupérées sur les sites
web.

Prédiction du prix

Une fois le modèle entraîné, on lui soumet les nouveaux logements pour qu’il détermine
le prix de vente et le prix de location adapté.
Le diagramme d’activités de la figure 2.13 résume les différentes activités menées dans le
module de prédiction des prix.

2.2.6 Plate-forme web


Pour réaliser les besoins exprimés dans ce travail, L’exploitation des différents modules

Internationalisation et configurations

Choix de la langue
La plate-forme a une portée mondiale, elle doit donc être accessible dans la plupart des langues
officielles. Pour cela l’interface utilisateur affiche les informations en fonction de la langue
configurée. Elle offre également des contrôles pour changer la langue d’utilisation de l’appli-
cation.

Choix de la monnaie
L’application doit pouvoir rendre les informations de prix dans toutes les monnaies officielles ;
elle offre donc des contrôles de changement de la monnaie.
Choix de l’unité de distance
L’interface web permet de spécifier l’unité de distance à utiliser dans l’application. Le choix
de l’unité de distance se fait entre le mètre(m) et le pied (ft)
Choix de la période
La présentation de l’application permet d’indiquer les périodes sur lesquelles les prix de loca-
tion doivent être affichés (par jour, par mois, par an).

Recherche sur la plate-forme

Pour réaliser le besoin de recherche de zone sur le système, l’interface utilisateur four-
nit un champ de texte avec auto complétion. L’auto complétion se fait à partir de la base de
données géographique mise en place. Ainsi dans les propositions envoyées à l’utilisateur, on

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 44
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

F IGURE 2.13 – Diagramme d’activités du module de prédiction

y retrouve toutes les pays, villes et quartiers du monde en fonction du texte déjà entré par
l’utilisateur.

Filtrage

L’interface utilisateur définit des contrôles pour filtrer les statistiques selon différents cri-
tères. Ces critères sont ceux définis dans le module de statistiques.
o Le pays
o La ville
o Le quartier

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 45
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.2. Conception

o Le type
o Le nombre de chambres
o Le nombre de salles de bains
o Le nombre de pièces
o L’intervalle de prix
o L’intervalle de superficie
o La vente ou la location
o Le type de location

Affichage des statistiques et cartes

Après une opération de recherche ou chaque opération de filtrage sur l’interface utilisa-
teur, cette dernière contacte le module de statistiques avec les paramètres renseignés par les
utilisateurs. Le module statistique renvoie les résultats sur l’interface graphique qui les pré-
sentent à l’utilisateur au moyen de courbes, graphiques et tableaux. On y distingue les diffé-
rents éléments suivants :
La carte
La plateforme présente une carte zone recherchée, avec des points représentant les logements
présents dans cette zone. Le clic sur un point de la carte représentant un logement permet de
rediriger le navigateur vers la page du logement sur le site de l’annonceur.
Les histogrammes
Ils permettent de présenter le pourcentage d’apparition de chaque élément dans un jeu de
données et donc la répartition des données suivant un critère cible. Ils seront utilisés pou
représenter la répartition de chaque type.

Estimation du prix d’un logement

Une fois Tous les composants présentés plus haut tournent en arrière-plan et ... Les don-
nées recueillies dans les bases de données doivent être présentées sur une interface utilisateur,
Le choix de la monnaie d’affichage La plate-forme détecte de quel pays viennent les re-
quêtes de l’utilisateur et utilise la monnaie de ce pays-là, comme monnaie par défaut. L’utili-
sateur peut tout de même changer la monnaie d’affichage en allant dans les réglages.
Les surfaces sont affichées par défaut en m2 ; cependant l’utilisateur peut changer l’unité
de surface à utiliser sur les contrôles de la page.
Le diagramme d’activités de la figure 2.14 résume les activités qui se déroulent dans le
module d’interface utilisateur.

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 46
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.3. Architecture du système

F IGURE 2.14 – Diagramme d’activité du module d’interface utilisateur

2.3 Architecture du système


L’architecture définit les différents éléments ainsi que leurs rôles dans le système ; ces élé-
ments peuvent être logiques, technologiques, ou physiques.

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 47
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.3. Architecture du système

2.3.1 Architecture logique


L’architecture logique décrit de manière schématique les différents composants abstraits
du système développé ainsi que le rôle joué par chacun d’eux. Il s’agit de :
o Le client : Il initie des requêtes HTTP/HTTPS vers le système, pour obtenir des informa-
tions
o Le serveur web et d’application : C’est le programme qui reçoit et interprète les re-
quêtes HTTP/HTTPS du client. Il formule ensuite une requête chez le serveur d’appli-
cation pour obtenir les données relatives à la requête du client. Une fois ces données
présentent, il fabrique une page HTML qui va constituer la réponse à envoyer au client.
o Le serveur d’application : Il reçoit les demandes provenant du serveur web et contacte
les autres parties du système pour répondre à cette demande. Il peut s’adresser au Sys-
tème de gestion de base de données pour les accès aux données, du module de statis-
tiques, du module d’estimation de prix.
o Le système de gestion de base de données : Il reçoit et traite les requêtes, d’insertion,
de mise à jour et d’accès aux données.
o Le module de statistiques : Il reçoit les demandes de statistiques depuis le serveur d’ap-
plication, récupère les données chez le SGBD, traite les données et renvoie les résultats
au serveur d’application
o Le module de prédiction : Il reçoit les requêtes d’estimation de prix du serveur d’appli-
cation, les traite et renvoie les prix correspondants
o Le module d’acquisition des données : Celui-ci parcourt les différentes plates-formes
d’annonces immobilières , en extrait les informations sur les logements et les stocke
dans la base de données du système en contactant le SGBD.
La figure 2.15 décrit les interactions entre ces différents éléments.

2.3.2 Architecture de sécurité


L’architecture de sécurité de la figure 2.16 décrit la mise en place de mécanismes pour
protéger le système du attaques et des scripts de web scraping.

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 48
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.3. Architecture du système

F IGURE 2.15 – Architecture logique

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 49
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 2. Méthodologie 2.3. Architecture du système

F IGURE 2.16 – Architecture logique

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 50
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
CHAPITRE 3
Implémentation et résultats

L’approche utilisée dans la résolution d’un problème peut fournir un résultat meilleur en
fonction de la nature et la qualité des moyens mis en œuvre.
Ce chapitre présente les méthodes et approches que nous avons utilisées pour résoudre le
problème posé.

51
Chapitre 3. Implémentation et résultats 3.1. Méthodes et technologies d’implémentation

3.1 Méthodes et technologies d’implémentation

3.1.1 Choix technologiques


Pour le choix des technologies à utiliser, nous avons à chaque fois fait un état de l’art des
solutions proposées et ainsi que des benchmarking pour déterminer lesquelles étaient les
plus adaptées à notre cas ! Il a fallu notamment confronter nombre de solutions gratuites et
payantes !

Gestion du projet et des codes sources

L’approche agile choisie pour la gestion Le choix de la méthode SCRUM pour l’organi-
sation et la planification dans le projet a été soutenu par l’utilisation d’outils de permettant
d’oeuvre cette méthode. En occurrence, l’outil ZenHub.

F IGURE 3.1 – L’outil ZenHub

Gestionnaire de code source :


Pour suivre de manière efficace les différentes versions de l’application ainsi que des codes
sources, nous avons utilisé la plateforme Github, notamment dans la version Entreprise qui
offre des outils de gestions d’équipes de contributions, et de suivi de bugs.

F IGURE 3.2 – Plateforme de gestion de codes Github

L’acquisition et stockage des données

Le Web scraping : il existe plusieurs technologies permettant d’extraire des informations dans
les pages web. Parmi les plus utilisées, on distingue :

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 52
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 3. Implémentation et résultats 3.1. Méthodes et technologies d’implémentation

o Les services web : Ce sont des sites internet qui permettent à leurs utilisateurs de confi-
gurer les plates-formes et le type d’informations qu’ils veulent extraire sur ladite plate-
forme. Ils ne nécessitent pas de connaissance informatique poussée ni de connaissances
en programmation pour réaliser l’extraction.
o Les applications de bureau : Elles ont le même fonctionnement que les services à la seule
différence que l’interface utilisateur est une fenêtre de bureau.
o Les frameworks : Ils permettent offrent un ensemble d’outils permettant aux program-
meurs d’implémenter eux même leurs politiques de navigation et d’extraction. Contrai-
rement aux services web et aux applications de bureau qui sont très souvent payant,
les frameworks de web scraping sont gratuits. Parmi les plus populaires, on distingue :
Scrapy, Selenium, Beautiful-soul.
Après expérimentation des différentes solutions, le framework Scrapy a été choisi pour
l’implémentation de l’extraction des informations, car il a montré une architecture plus en-
richie et possède beaucoup de plugin additionnels permettant d’ajouter facilement les fonc-
tionnalités.

F IGURE 3.3 – Framework scrapy

Le pré-traitement des données

Pour la suppression des impuretés et la présentation efficace des données, nous avons
utilisé Pandas, l’outil python le plus populaire pour le pré-traitement des données

F IGURE 3.4 – Libraire Pandas

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 53
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 3. Implémentation et résultats 3.1. Méthodes et technologies d’implémentation

Le stockage des données


La conception du système a fait le choix d’une Base de données NoSQL de type document le
stockage des données. MongoDB est le système de gestion de base de données de type do-
cuments le plus populaire. Son plus grand avantage est la forte scalabilité horizontale, ce qui
dans notre cas permettra de pallier à l’augmentation des données.

Présentation et statistiques sur les données

Pour l’application des différentes méthodes statistiques retenues, la bibliothèque python


scikit-learn a été utilisée, il s’agit de la bibliothèque python la plus populaire et la plus com-
plète en termes de fonctions statistiques.

Prédiction des prix de logements

Librairie python Keras tournant au-dessus de TensorFlow. TensorFlow est une librairie
Python développée par Google pour réaliser des programmes de deep learning. C’est la librai-
rie de deep learning la plus aboutie sur le langage de programmation Python. Keras est une
sur-couche TensorFlow permettant de faciliter l’utilisation et la programmation des réseaux
profonds.

F IGURE 3.5 – Libraries Keras et TensorFlow

Plateforme Web

La plateforme mise en place tourne sur une architecture client-serveur. Des technologies
spécifiques ont été utilisées pour la réalisation des composants client et serveur.

Le serveur
Le composant serveur a été réalisé en python. Deux principaux Framework sont disponibles
pour réaliser des serveurs web en python : Django et Flask. Flask a été préféré à Django dans
ce travail, notamment parce que Flask est plus léger que Django et n’oblige à respecter pas
une certaine architecture. Contrairement à Django, Flask laisse la latitude au développeur à
construire lui même l’architecture et les éléments qu’il souhaite mettre en place.

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 54
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 3. Implémentation et résultats 3.2. Résultats

F IGURE 3.6 – Framework backend Flask

Le client
L’interface utilisateur a été réalisée via des technologies clientes suivantes :
HTML5 : Langage de structuration de document
CSS3 : Langage permettant d’appliquer des styles aux documents HTML
VueJS : Librairie JavaScirpt la plus populaire sur github au moment de la réalisation de ce
travail.
Vuetify : Framework tournant au-dessus de VueJS, proposant des templates de pages

F IGURE 3.7 – Framework frontend VueJS

Internationalisation
Pour la prise en charge de plusieurs langues, la librairie Vue-I18n a été utilisée ; elle tourne au-
dessus de VueJS et permet de charger plusieurs langues via des fichiers JSON de configuration.

3.2 Résultats

3.2.1 L’interface utilisateur


La page d’accueil

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 55
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 3. Implémentation et résultats 3.2. Résultats

F IGURE 3.8 – Interface d’accueil

Scénarios d’utilisation

Le scénario suivant montre l’utilisation de la plate-forme pour obtenir les statistiques gé-
nérales du logement sur le Cameroun.
Recherche d’une zone

F IGURE 3.9 – Interface de recherche d’une zone en texte clair

Observation des statistiques générales Observation des statistiques particulières

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 56
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 3. Implémentation et résultats 3.2. Résultats

F IGURE 3.10 – Statistiques générales sur le Cameroun

F IGURE 3.11 – Statistiques détaillées sur le Cameroun

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 57
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 3. Implémentation et résultats 3.2. Résultats

F IGURE 3.12 – Autres statistiques

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 58
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
C ONCLUSION GÉNÉRALE

Sommaire
3.1 Méthodes et technologies d’implémentation . . . . . . . . . . . . . . . . . . . . 52
3.1.1 Choix technologiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.2 Résultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.2.1 L’interface utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

Rappel du problème
Malgré son importance capitale, dans la vie de l’homme et dans les marchés économiques,
il n’existe pas de point de référence pour avoir des statistiques de logements sur les diffé-
rentes zones du monde, il n’est pas possible de comparer l’état du logement dans deux zones
différentes du globe terrestre de manière automatique. Ces informations et ces possibilités se-
raient pourtant importantes aux individus à la recherche d’un meilleur abri à moindre coût,
aux bailleurs dans l’application de prix concurrentiels sur leurs logements, aux investisseurs à
mieux identifier les bonnes zones d’investissement, aux états à mettre en oeuvre de meilleures
politiques de logement et à garantir la stabilité du marché du logement.

Synthèse de la solution
La réalisation de ce travail est passée par un état de lart sur le problème , suivi dune analyse
des différentes approches et solutions existantes . La méthode développement SCRUM a été
utilisée pour le suivi du travail. La conception de chaque composant a conduit à :
p L’utilisation du Web scraping pour l’extraction des données de logement depuis sites
d’annonces de logement à travers le monde, implémenté en Python en utilisant la li-
brairie Scrapy.
p L’application de techniques statistiques que sont les prix moyens, les prix médians, les
quartiles, la suppression des données aberrantes, la répartition des données suivant cer-

59
Chapitre 3. Implémentation et résultats 3.2. Résultats

taines caractéristiques telles que le nombre de pièces, le nombre de chambres, la pré-


sence d’un parking, le type de logement, pour rendre compte de l’état du logement dans
un quartier, une ville, ou un pays du monde. Ce composant a été réalisé avec l’apport
des librairies scikit-learn de Python et math.js du JavaScript.
p La mise sur pied d’un mécanisme permettant de comparer jusqu’à trois zones du monde
simultanément selon les critères statistiques énoncés précédemment.
p L’élaboration d’un mécanisme d’estimation du prix d’un logement basé sur un réseau
de neurones profond entraîné sur l’ensemble de la base de données.
p Et pour finir la réalisation d’une interface utilisateur conviviale respectant la contrainte
Web, utilisable dans 05 langues au monde parmi lesquelles le Mandarin, l’Anglais, l’Es-
pagnol, le Français, l’Italien. De plus l’interface permet de consulter les prix dans toutes
les monnaies nationales, parmi lesquelles on peut citer : le Franc CFA, l’Euro, le Dol-
lar Américain. Il est également possible sur l’interface d’obtenir des statistiques avec
des prix de location par jours, par mois, semaine, par année. Les distances et surfaces
peuvent également être obtenues au choix en mètre et mètre au carré comme c’est pres-
crit par le système international des unités (international des poids and mesures, 1985),
ou en pieds et pieds au carré comme il est d’accoutumer aux États-Unis d’Amérique.
L’interface permet d’exploiter le module de statistiques via des graphes et des courbes,
le module comparaison via un tableau de comparaison des zones et le module de pré-
diction des prix via un ensemble de contrôles permettant de renseigner les caractéris-
tiques (position, nombre de chambres, nombre de pièces, type de logement, images)
du logement à évaluer et affiche par la suite les prix estimés de vente et de location du
logement renseigné.
Les apports de ce travail sont multiples :
o Sur le problème posé : Le système mis en place répond clairement à l’absence d’une
base pour la réalisation des statistiques à l’échelle mondiale et sur la possibilité de faire
des comparaisons transfrontalières sur le domaine du logement.
o Sur le plan académique : Le travail montre l’efficacité des algorithmes de prédiction par
deep learning sur un domaine nouveau , celui des logements.

Limites et perspectives
Tout au long de ce travail, nous avons identifié des limites et axes d’améliorations. La prin-
cipale limite à ce travail dans la résolution du problème posé se situe au niveau du nombre de
caractéristiques disponibles. En effet, les spécialistes du logement notamment les agences im-
mobilières identifient plus de 30 critères influençant le prix d’un logement, cette liste est dis-
ponible en Annexe. Cependant seules 10 caractéristiques sont disponibles sur les plateformes
d’annonces de logement et ont été utilisées ; il reste d’autres paramètres comme le degré de

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 60
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 3. Implémentation et résultats 3.2. Résultats

criminalité dans une zone, la proximité d’une école, le taux de pollution dans une zone, les
antécédents concernant un logement particulier. Ces informations ont été supposées dans un
premier temps comme encapsulées dans la position du logement ; il sera question pour la suite
d’implémenter un mécanisme qui fera de la recherche sémantique sur internet concernant
chaque zone et chaque logement et qui récupérera les informations retrouvées pour enrichir
la base de données dans le but d’améliorer les statistiques et d’affiner le modèle de prédiction
de prix.

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page 61
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
B IBLIOGRAPHIE

C’est quoi un proxy ? URL http://sebsauvage.net/comprendre/proxy/index.html. ix, 19

Immobilier, Jul 2018. URL https://fr.wikipedia.org/wiki/Immobilier. 5

Brad W Blumberg and Eric M Blumberg. System and method for providing information based
on geographic position, November 25 2008. US Patent 7,457,628. 35

Catherine Bourgeois. L’attribution des logements sociaux : politique publique et jeux des ac-
teurs locaux. Editions L’Harmattan, 1996. 5

Michael F Bryan, Christopher J Pike, et al. Median price changes : an alternative approach to
measuring current monetary inflation. Federal Reserve Bank of Cleveland Economic Com-
mentary, 1, 1991. 10, 11

Gilles Celeux, Edwin Diday, Gérard Govaert, Yves Lechevallier, and Henri Ralambondrainy.
Classification automatique des données :[environnement statistique et informatique]. Bordas
Paris, 1989. 7

Pierre Deffontaines. L’homme et sa maison, volume 36. Gallimard, 1972. 1

Lon Luvois Fuller, Melvin Aron Eisenberg, and Mark P Gergen. Basic contract law. West Pu-
blishing Company, 1990. 6, 8

Assemblée générale des Nations Unies. Déclaration universelle des droits de lhomme. Réso-
lution 217A (III), 10, 1948. 1

Michael F Goodchild and Yang Shiren. A hierarchical spatial data structure for global geogra-
phic information systems. CVGIP : Graphical Models and Image Processing, 54(1) :31–44,
1992. 39

Stéphane Grenier, Marie-Noëlle Ducharme, Myrtha Laflamme, and Normand Lauzon. Loge-
ment ou hébergement. Lévolution des milieux de vie substituts pour les personnes âgées.
Montréal, École de travail social, Université du Québec à Montréal, 2002. 5

I
Chapitre 3. Implémentation et résultats 3.2. Résultats

Lihua Guo, Yangchao Xiong, Qinghua Huang, and Xuelong Li. Image esthetic assessment
using both hand-crafting and semantic features. Neurocomputing, 143 :14–26, 2014. 36

Joseph Gyourko and Donald B Keim. What does the stock market tell us about real estate
returns ? Real Estate Economics, 20(3) :457–485, 1992. 8

Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. Deep residual learning for image re-
cognition. In Proceedings of the IEEE conference on computer vision and pattern recognition,
pages 770–778, 2016. 36

Bureau international des poids and mesures. Le système international d’unités (SI). Bureau
international des poids et mesures, 1985. 60

Shu Kong, Xiaohui Shen, Zhe Lin, Radomir Mech, and Charless Fowlkes. Photo aesthetics
ranking network with attributes and content adaptation. In ECCV, 2016. ix, 36, 37

ALLOTI Lamine. Crise de logement. 2013. 6

Olivier Marchand and Eric Skhiri. Prix hédoniques et estimation d’un modèle structurel d’offre
et de demande de caractéristiques [une application au marché de la location de logements
en france]. Économie & prévision, 121(5) :127–140, 1995. 6

Kevin E McHugh, Patricia Gober, and Neil Reid. Determinants of short-and long-term mobility
expectations for home owners and renters. Demography, 27(1) :81–95, 1990. 7

Rosnisa Abdull Razak and Fairul Rizal Fahrurazi. Agile testing with selenium. In Software
Engineering (MySEC), 2011 5th Malaysian Conference in, pages 217–219. IEEE, 2011. 33

Vincent Renard. Quelques caractéristiques des marchés fonciers et immobiliers. Economie et


statistique, 294(1) :89–97, 1996. 8

Maryse Salles and Gabriel Colletis. Représentations de l’entreprise dans les systèmes d’infor-
mation statistique et décision dans les collectivités territoriales. Droit et société, (1) :53–74,
2007. 1

Michela Scatigna, Robert Szemere, and Kostas Tsatsaronis. Statistiques des prix de limmobi-
lier résidentiel dans le monde. Rapport trimestriel BRI, 2014. 1

Ken Schwaber and Mike Beedle. Agile software development with Scrum, volume 1. Prentice
Hall Upper Saddle River, 2002. ix, 28

Marion Segaud, Catherine Bonvalet, and Jacques Brun. Logement et habitat : l’état des savoirs.
La découverte, 1998. 5

Songwon Seo. A review and comparison of methods for detecting outliers in univariate data
sets. PhD thesis, University of Pittsburgh, 2006. 12

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page II
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel
Chapitre 3. Implémentation et résultats 3.2. Résultats

Robert J Shiller. Long-term perspectives on the current boom in home prices. The Economists’
Voice, 3(4), 2006. 7

Michael Smedberg, Jennifer Chao, Robert Gay, and Jason Wain. Personalized real estate event
feed, July 11 2017. US Patent 9,706,011. 9

Muriel Travers, Abdelhak Nassiri, Gildas Appéré, and François Bonnieux. Evaluation des bé-
néfices environnementaux par la méthode des prix hédonistes : une application au cas du
littoral. Économie & prévision, (4) :47–62, 2008. 6

Eloisa Vargiu and Mirko Urru. Exploiting web scraping in a collaborative filtering-based ap-
proach to web advertising. Artificial Intelligence Research, 2(1) :44, 2012. ix, 19

Thaddeus Vincenty. Direct and inverse solutions of geodesics on the ellipsoid with application
of nested equations. Survey review, 23(176) :88–93, 1975. 35

Mise en place d’une plateforme de statistiques et de prédiction des prix de logements à l’échelle
mondiale basée sur le Web-scraping et le Deep-learning
Page III
Mémoire de fin d’études d’ingénieur de conception de Génie Informatique
Présenté par TCHOUATCHA DEUMAGA Michel

Vous aimerez peut-être aussi