La volumétrie est un des enjeux clés du big data analytics. Des technologies spécifiques sont développées à cet effet. Mais d’autres stratégies existent. L’échantillonnage en est une. Dans le cadre de l’apprentissage supervisé par exemple, l’idée serait de modéliser à partir d’une fraction des données, choisies plus ou moins judicieusement, tout en s’assurant un niveau de performances équivalent au modèle qui aurait été élaboré à partir de la totalité des observations.
Mais avant d’en arriver à ce stade, il faut déjà pouvoir extraire l’échantillon à partir des données initiales. Ce support présente différents algorithmes permettant de traiter un fichier texte CSV (comma-separated value) de grande taille en accès séquentiel qu’il n’est pas possible de charger entièrement en mémoire vive. Deux grandes variantes sont explicitées : la première, plus simple, suppose connue la taille de la base initiale ; la seconde, nécessitant le chargement en mémoire de l’échantillon ou l’utilisation d’une structure intermédiaire autorisant un accès indexé, traite des fichiers où le nombre de lignes n’est pas connu à l’avance.
Des exemples de codes sources en R et Python permettent d’illustrer concrètement les solutions.
Mots-clés : échantillon, méthode de sélection rejet, reservoir sampling, fichier CSV, fichier texte avec séparateur tabulation, modélisation prédictive, logiciel R, python
Support de cours : Algorithmes d'échantillonnage
Références :
Wikipedia, "Reservoir sampling".
Ce blog recense les supports de cours et didacticiels consacrés à la pratique de la data science, machine learning et big data analytics. Les outils mis en avant sont les logiciels Tanagra, R et Python. [04 nov. 2022] Suite à la panne du serveur d'hébergement des fichiers, les posts antérieurs à mai 2015 ont été perdus, de nombreux liens sont cassés. J'ai dû créer un site à part avec les archives, complet, avec les liens corrigés. Voir l'item "Archives" ci-dessous. Bonne lecture à tous. Ricco.