#

##

24/11/2015

## L'enjeu des Big Data pour la statistique publique

## Quelles données ?

Disponibilité croissante de sources de données diverses : quelles opportunités pour la statistique publique ?

De quelles données parle-t-on ?

- des enregistrements automatiques (téléphonie mobile, géolocalisation, compteurs intelligents, capteurs routiers…)
- des contenus internet et de réseaux sociaux
- des images satellite…

Peuvent être comparées à des données administratives mais plus grosses et/ou moins structurées et/ou plus variées.

## Pourquoi s'intéresser à ces données ?

Plusieurs intérêts identifiés :

- une disponibilité plus rapide voire immédiate de l'information: réduction des délais de publication
- une information à une échelle plus fine : permettrait de produire des statistiques localisées, sur des sous-populations
- des mesures objectives pouvant compléter des déclarations (temps de transport, dépenses)
- compléter le dispositif statistique actuel (comportement sur internet, certains évènements rares)

## Les limitations de ces données.

Il existe toutefois des limitations à leur utilisation :

- renverse la perspective "classique" de la construction d'un indicateur statistique / aux enquêtes statistiques : beaucoup d'informations peu pertinentes
- problème de représentativité, données pauvres en caractéristiques sociodémographiques, parfois incomplètes ou bruitées

- pas de maitrise par le statisticien du processus de génération des données (changement de format, de contenu)

- Rq : défauts des sources administratives, mais en pire

## Les défis liés à l'exploitation de ces sources

Outre les limites propres aux diverses sources de données, leur utilisation en production soulèverait des questions d’ordre :

- législatif : protection de la vie privée, accès aux données
- économique : coûts d'extraction et des traitements indispensables (agrégation, anonymisation), sensibilité des données (parts de marché…) et concurrence (vis-à-vis d’acteurs privés)
- stabilité : les sources doivent être pérennes

## Les projets en cours en interne

Le projet le plus mature au sein de l'INSEE concerne l'amélioration des indices de prix à la consommation via l'intégration des données de caisses de la grande distribution:

Intérêts :

- Fonder les publications (IPC, sous-indices, prix moyens) sur un volume d'informations considérablement accru (précision améliorée)
- Publier de nouvelles statistiques plus détaillées, c'est-à-dire selon une résolution géographique, temporelle renforcée

## Pour ce faire :

- une convention a été établie avec de grandes enseignes de la grande distribution (30% du marché), des flux de données quotidiens alimentent les bases.
- une plateforme Big Data à Metz est en cours de création afin de se doter des outils nécessaires pour l'exploitation de ces données
- une mise en production attendue pour 2019

## Les projets en cours en interne

Dans le cadre de travaux plus exploratoires, la division MAEE (département des méthodes statistiques) s'intéresse depuis un an à :

- l'utilisation de données internet pour améliorer l'analyse conjoncturelle (dossier de la Note de conjoncture de mars 2015)
- l'utilisation des données de téléphonie mobile pour la statistique publique, collaboration avec Orange et Eurostat (estimation de populations présentes, qualification du territoire…)
- l'acquisition de compétences pour le traitement de données de formats variés (données web, textuelles, réseaux)

## L'engagement de l'INSEE dans la réflexion collective

- Participation à un groupe de réflexion animé par Eurostat (Task Force Big Data), l'Europe cherchant à :

  - développer une ligne de conduite commune sur ce sujet,
  - démontrer la faisabilité de la production d'indicateurs classiques ou nouveaux à l'aide de ces données,
  - faciliter le partage d'information, de connaissance, d'outils et méthodes entre les instituts.

- Participation au projet " Big Data " collaboratif organisé par l'UNECE depuis 2014, visant notamment à évaluer le potentiel des sources de données et des logiciels à l'aide d'une plateforme Big Data dédiée à l'expérimentation.

## Les Big Data, de quoi parle-t-on ?

## Datascience et Big Data

Les différents projets évoqués rélèvent d'un intérêt récent pour des sources de données non utilisées jusque là. Celles-ci peuvent être de nature variée, structurées ou non, volumineuses ou non.

Le terme science des données se réfère à l'ensemble des techniques et technologies visant à acquérir des données, les stocker, les traiter, les visualiser et les modéliser.

Au sein de ce champ, les Big Data tiennent une place particulière. En effet, caractérisées par des volumes trop importants pour les logiciels usuels, leur utilisation repose sur un modèle significativement différent.

## La transition Big Data

Pour les utiliser, il est donc nécessaire d'adapter son architecture informatique tant matérielle que logicielle, et d'acquérir les compétences nécessaires pour l'utilisation par le statisticien de ces logiciels

Le choix d'intégrer ces données dans un process n'est donc pas neutre.

La manipulation des Big Data impliquant des adaptations en termes organisationnels significatifs, une telle transition de doit être motivée que par des données suffisamment grosses ou dont l'échantillonnage entraînerait une perte d'information dommageable

## Quand doit-on "passer au Big Data" ?

- les données sont en grand volume (ce volume continue de croître) et/ou toute l'information est utile (classement des pages internet par exemple)
- les données correspondent à un très grand nombre d'enregistrements et on cherche à calculer des indicateurs par agrégation ou autres opérations classiques de requêtage de base de données (exemple : indicateurs de mobilité ou de présence calculés par Orange)
- les données sont individuelles et détaillées et l'on cherche à étudier des phénomènes à une granularité plus fine : fréquence temporelle plus élevée, précision géographique plus fine, caractéristiques individuelles faiblement représentées (applications en marketing, détection des fraudes)

## Les technologies du Big Data

## Un environnement informatique dédié

En raison de son développement récent (une dizaine d'années), l'écosystème Big Data est encore très largement dominé par les informaticiens.

Un environnement informatique adapté est en effet essentiel à la manipulation de Big Data :

- une architecture matérielle sous forme de serveurs/clusters pour gérer le stockage des fichiers distribués (et assurer une résistance à la panne)
- une couche de logiciels pour requéter ces données en parallèle sur les différents serveurs
- des librairies d'algorithmes capables d'opérer des calculs complexes, sur de larges volumes de données, dans un temps raisonnable.

## Des clusters

## Le passage à l'échelle

Le concept à la base du traitement des Big Data est la distribution des fichiers qui sont trop volumineux pour être centralisés sur une même machine.

On parle de passage à l'échelle, quand l'ajout de nouveaux serveurs ne remet pas en cause toute l'architecture de stockage ni les implémentations des traitements.

Typiquement, si on veut faire des comptages, on peut distribuer les opérations de comptage sur chaque serveur et ensuite agréger les résulats. L'ajout d'un serveur n'aura pas d'impact significatif. Cette opération passe bien à l'échelle.

## Map Reduce

Pour généraliser ce principe à des traitements plus complexe, un mécanisme d'exécution/modèle de programmation simple et relativement générique a été proposé : MapReduce.

Il est implémenté dans plusieurs frameworks (dont le framework open source Hadoop).

MapReduce propose de décomposer l'ensemble des opérations à réaliser en deux types de tâches élémentaires et uniformes, les Map et les Reduce.

Chaque donnée passe d'abord par une tâche Map et ensuite, transformée par celle-ci, éventuellement par une tâche Reduce.

## Map Reduce

Par exemple, la multiplication d'une grande matrice x vecteur \(y=M \times x\) où \(y_i=\sum^n_{j=1} m_{ij}x_j\)

## Limites

Ce mécanisme est assez contraignant.

- Le mécanisme de reprise sur panne impose le stockage des résultats des opérations Reduce, même lorsqu'ils ne sont qu'intermédiaires.

- En particulier, lorsque les algorithmes rencontrés sont itératifs, les opérations des Map et Reduce doivent être définies dans le cadre d'une même itération, et les résultats doivent être stockés pour être repris dans l'itération suivante.

  - Ces nombreuses écritures et lectures engendrent un ralentissement significatif.

## Spark

La solution de Spark (2009) est de conserver les résultats intermédiaires dans la mémoire vive des nœuds de calcul et de garder l'historique des opérations ayant permis d'obtenir ces données. En cas de panne, l'historique permet de recalculer les données perdues.

> L'impact sur les algorithmes itératifs est très sigificatif, une accélération de 10 fois peut être observée.

## Des formats de données hétérogènes

La gestion de données sans format prédéfini ou avec des formats très spécifiques fait également appel à des briques technologiques ou services dédiés.

SGBD Cassandra, MongoDB, bases de données orientées graphe, moteur de recherche Elasticsearch, logiciels de visualisation…

## Les statisticiens doivent-ils devenir informaticiens ?

- Il est vrai qu'aujourd'hui ces technologies ne sont pas matures :

  - des traitements statistiques basiques ne sont pas encore implémentés et nécessitent donc d'être reprogrammés (ex rhadoop)…

  - Certains logiciels ont encore des interfaces peu conviviales pour certains nécessitant l'apprentissage de langages (java, scala),

  - les logiciels tournent en général sur des serveurs dont le système d'exploitation est Linux,

- Mais, de nouvelles versions sortent très régulièrement et des connections avec Python, et R se développent. Il est probable que d'ici quelques temps, l'utilisation de ces logiciels soit transparente pour le statisticien.

## Maîtriser son environnement

Le sujet n'est donc pas tant la formation du statisticien à de nouveaux langages de programmation, mais sa familiarisation avec son outillage informatique :

- l'écosystème des logiciels : de nombreuses solutions concurrentes se développent avec leurs forces et leurs faiblesses, en fonction des besoins, il faut pouvoir s'adapter
- le stockage distribué (par exemple pour les séries temporelles) et la parallélisation d'un traitement statistique en termes d'approximation (calcul de médiane, recours plus fréquent à l'optimisation numérique…)
- les limites des outils (même une architecture Big Data peut présenter des limites dans l'application d'algorithmes en termes de temps de calcul et tous les algorithmes ne passent pas à l'échelle)

## En résumé

La manipulation des Big Data, ou de nombreuses sources de données diverses et variées, doit finalement requérir :

- que le statisticien et l'informaticien travaillent en bonne intelligence, ce dernier pouvant également aider le premier à s'approprier un logiciel rapidement, à acquérir des données de format varié et hétérogène, à se familiariser avec des technologies web si besoin…

- que le statisticien soit flexible : capable d'élargir sa boîte à outils (nouveaux langages éventuellement, nouveaux logiciels, optimisation numérique et machine learning peuvent être un plus si non déja maîtrisés…)

## Statistiques et Big Data

## Quel impact sur les méthodes statistiques

Les grosses données peuvent générer des difficultés pour la modélisation, la prédiction, l'interprétation, la visualisation..

Des problèmes classiques comme l'inversion de matrices nécessaires au calcul d'estimateurs, l'échantillonnage… doivent être repensés en prenant en compte la précision statistique et le temps de calcul (parfois au niveau de l'algorithme, parfois au niveau méthodologique par exemple les random projections).

Inversement, la présence de nombreuses observations et/ou variables donne l'opportunité d'explorer plus avant des techniques non paramétriques, non linéaires, avec une meilleure prise en compte de l'hétérogénéité.

S'agissant des techniques de prédiction, Big Data et machine learning sont souvent associés, pourquoi ?

## Le machine learning, qu'est-ce que c'est ?

Une discipline qui n'est pourtant pas nouvelle, mais qui revient en avant avec les progrès technologiques permettant de manipuler un grand nombre de données dans un temps raisonnable.

On parle en général des algorithmes suivants : régression pénalisée, arbres de classification et ensemble d'arbres (forêts aléatoires, bagging, boosting), réseaux de neurones, svm, classifieurs bayésiens naïfs…

Ces techniques sont surtout utilisées en prédiction et reposent sur l'automatisation la sélection de modèles, ce qui est particulièrement intéressant lorsque l'on dispose d'un grand nombre d'observations mais surtout de nombreuses variables.

## Le machine learning, qu'est-ce que c'est ?

L'apprentissage automatique ou Machine Learning se distingue de l'économétrie traditionnelle dans le sens où son application est plus systématique et repose sur la minimisation d'un critère.

Elle s'embarrasse assez peu de formalisation théorique : - ni en amont avec des hypothèses - ni en aval avec des tests, calcul d'intervalles de confiance…

## Les limites de l'automatisation

Le principal risque provient de l'interprétabilité limitée de ces approches…

- on parle souvent de boîte noire, certaines méthodes n'offrent aucun moyen de mesurer l'influence des variables

- Lorsqu'on peut les calculer, les pvalue ne sont pas forcément interprétables, les variables peuvent être plus facilement significatives compte tenu du nombre élevé d'observations.

- les méthodes ne gèrent pas systématiquement les problèmes d'endogénéité, de multicolinéarité, la significativité d'une variable n'implique pas la causalité….

## Les limites de l'automatisation

… pouvant entraîner une mauvaise spécification des modèles.

- Le fait de disposer d'un grand nombre de variables peut générer un bruit dans la modélisation, surtout si on pense qu'en réalité seul un petit nombre d'entre elles jouent un rôle (parcimonie)

- Plus on prend en compte de variables ou de paramètres, plus on est capable de produire un ajustement parfait du phénomène étudié, sans que cela n'assure de bonnes performances en prévision (surapprentissage)

- même lorsque l'on sélectionne des variables pour réduire la dimension, il y a des risques à l'automatisation complète (exemple d'une procédure automatique de variables sur la base de corrélations empiriques : il est probable d'observer des corrélations artificielles/fortuites d'autant plus qu'on dispose d'un très grand nombre de variables)…

## Exemple : les régressions polynomiales

## Quelques solutions

- La pénalisation de la complexité du modèle (exemple : le degré du polynôme)
- l'utilisation de jeux de données distinct pour l'estimation et la validation (voire de la validation croisée)

## Google Flu, prévoir la grippe grâce aux fans de basket

Mais ces solutions ne suffisent pas à évacuer complètement des questions standards comme celle de la causalité et du rôle joué par les variables dans les modèles : exemple avec Google Flu.

En 2008, Google produit un indicateur avancé de l'épidémie de grippe à partir des requêtes des utilisateurs du moteurs de recherche.

Intuitivement, il est crédible de penser que les requêtes du moteur de recherche Google peuvent être porteuses d'information (comportement d'achats par exemple, recherche d'emploi).

De plus, ces données sont séduisantes car disponibles quasiment en temps réel.

## Google Flu, prévoir la grippe grâce aux fans de basket

A l'origine, cet indicateur s'avère assez performant.

Cependant, parmi les milliers de variables intégrées dans la construction de cet indicateur en raison de leur forte corrélation avec l'indicateur officiel, un certain nombre l'ont été de façon abusive et ont, par conséquent, participé à détériorer les performances de l'indicateur.

## En résumé

En dépit de leur médiatisation actuelle, ces techniques ne constituent pas des solutions miracle, pertinentes pour tous les problèmes.

Elles n'en restent pas moins très populaires dans certains secteurs tels que le marketing (système de recommandation), le web (classement des pages, identification des images, reconnaissance faciale…), génétique…

… elle peuvent s'avérer intéressantes pour nous dans des domaines d'application ciblés (classification, prévision macroéconomique, imputation, outlier detection…).

Mais une utilisation plus large de ces méthodes en lien avec l'économétrie et l'inférence causale devra être davantage encadrée (recherche active sur ces sujets).

## Conclusion

## En conclusion

Il n'y a pas de définition claire des Big Data mais ce sont d'abord des données massives, ou plus largement de nature variée plus ou moins structurée.

Lorsqu'elles sont vraiment volumineuse, la manipulation de ces données peut nécessiter un environnement informatique, une organisation et des compétences multiples. Investir ce champ n'est donc pas toujours neutre et doit être bien pesé dans un environnement en évolution permanente.

Sur le plan statistique, un certain nombre de reflexes doivent être repensés, mais l'abondance de variables ou d'observations ne doit pas encourager l'utilisation systématique de protocoles complètement automatisés.

## Des questions ?