Académique Documents
Professionnel Documents
Culture Documents
Memoire Ashdownx Logement
Memoire Ashdownx Logement
******* *******
ÉCOLE NATIONALE SUPÉRIEURE NATIONAL ADVANCED SCHOOL
POLYTECHNIQUE OF ENGINEERING
******** *******
DEPARTEMENT DE GÉNIE DEPARTMENT OF COMPUTER
INFORMATIQUE SCIENCE
Sous la supervision 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 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
En vue de l’obtention du :
À 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
IP Internet Protocol.
ONG Organistaio.
OSI Open Systems Interconnection.
OSM Open Street Map.
iv
SSH Secure Shell.
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.
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.
vii
L ISTE DES TABLEAUX
viii
L ISTE DES FIGURES
ix
Liste des figures Liste des figures
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
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
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
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
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
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).
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
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.
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 (?).
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.
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
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 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
IQ = Q3 − Q2 (1.2)
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 )
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
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’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é.
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.
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
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.
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
internet
adresse IP (publique, privée)
API
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
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
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
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
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
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
Les contraintes
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
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
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
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.
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)
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
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
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
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
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
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.
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.
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)
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.
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
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
Transaction concernée
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
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.
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
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
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
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.
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).
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
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
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.
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
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
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
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
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
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.
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.
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
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
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.
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
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
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
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
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
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
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
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
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
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
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
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
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