In this Article
Un modèle de machine learning ne vaut que par les données sur lesquelles il apprend, et, pour la plupart des équipes, ces données viennent du web. La collecte de données pour le machine learning consiste à réunir, nettoyer et structurer des exemples réels dans un dataset d’entraînement. Elle détermine largement la qualité du modèle. Ce guide présente le web scraping appliqué au machine learning, de la création d’un dataset d’entraînement de qualité à son nettoyage, en passant par les limites juridiques et le rôle des proxies dans la collecte à grande échelle.
Je suis Andrii Byzov, AI-Native Fractional CMO, et je conçois des pipelines de données web pour le ML et l’analytics. Vous trouverez ci-dessous les caractéristiques d’un dataset qui améliorent les performances des modèles, un workflow pratique, du scraping au dataset avec du code, et la manière dont les proxies résidentiels rendent la collecte scalable et diversifiée.
Points clés
- La qualité, la déduplication et l’exactitude des libellés comptent souvent davantage que le volume brut. Un jeu de données propre, diversifié et bien étiqueté peut permettre d’entraîner un meilleur modèle qu’un jeu plus volumineux mais bruité, même si l’échelle reste utile une fois la qualité maîtrisée.
- Le web est une source courante pour de nombreux jeux de données ML, notamment des textes, images, prix, avis et annonces, collectés par scraping lorsqu’aucune API, aucun flux sous licence ni aucun jeu de données ouvert ne convient.
- Pour les tâches sensibles à la géolocalisation, utilisez une collecte tenant compte des régions. Lorsque la langue, les prix ou la disponibilité varient selon l’emplacement, extraire des exemples de nombreuses régions (via des proxys géociblés) évite un jeu de données biaisé.
- Le scraping à grand volume de sites soumis à des limites de débit utilise souvent des proxys. Une seule IP finit par être coupée, donc les collectes à grande échelle s’appuient sur des IP résidentielles rotatives. Les proxies ne dispensent toutefois pas de respecter les conditions d’utilisation des sites.
- La manière dont vous avez obtenu les données compte sur le plan juridique. Dans Bartz v. Anthropic (2025), le tribunal a estimé que l’entraînement sur des livres acquis légalement relevait du fair use au vu de ces faits, mais a rejeté le fair use pour la constitution d’une bibliothèque à partir de copies piratées. La provenance fait partie de la conformité.
Qu’est-ce qui fait un bon jeu de données d’entraînement ?
Avant d’extraire quoi que ce soit, sachez ce que vous visez. Un jeu de données d’entraînement de qualité présente cinq caractéristiques :
- Pertinence : les exemples correspondent à la tâche et à la distribution que votre modèle rencontrera en production.
- Diversité : des sources, régions et cas limites variés, afin que le modèle généralise au lieu de mémoriser un seul segment.
- Étiquettes propres : des annotations exactes et cohérentes ; le bruit dans les étiquettes plafonne la précision que vous pouvez atteindre.
- Équilibre : des classes et segments représentés dans des proportions pertinentes, sans être dominés par ce qui était le plus facile à extraire.
- Fraîcheur : suffisamment récent pour que les schémas restent valables, avec un plan de mise à jour à mesure que le monde évolue.
La plupart des cas où « plus de données n’a pas aidé » s’expliquent par une faiblesse sur l’un de ces points, généralement les doublons, le bruit dans les étiquettes ou un jeu de données trop dépendant d’une seule source. C’est sur cet aspect que se concentre ce guide. Pour choisir des proxies, consultez best proxies for ML training, et pour les pièges à éviter, consultez mistakes teams repeat collecting AI training data.
Comment créer un jeu de données d’entraînement par web scraping
Étape 1. Définir le schéma et les étiquettes. Déterminez les champs exacts et l’ensemble d’étiquettes avant la collecte : ce que contient chaque exemple et comment il est balisé. Partir de la tâche du modèle permet d’éviter de collecter des données inutilisables.
Étape 2. Trouver les sources et scraper à grande échelle. Identifiez les sites qui contiennent vos exemples et scrapez-les en acheminant le trafic via des proxies afin d’assurer le volume et la diversité régionale. Associez à chaque exemple sa source et son étiquette au moment de la collecte.
import requests
from bs4 import BeautifulSoup
HEADERS = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) "
"AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36"}
# Rotating residential proxies: scale collection without IP blocks, and pull
# region-diverse examples so the dataset isn't skewed to one location.
proxies = {"http": "http://LOGIN__cr.us;sid.ml1:[email protected]:823",
"https": "http://LOGIN__cr.us;sid.ml1:[email protected]:823"}
def collect(urls, label):
"""Scrape raw text examples and tag each with its source + label."""
rows = []
for url in urls:
try:
r = requests.get(url, headers=HEADERS, proxies=proxies, timeout=30)
r.raise_for_status()
except requests.RequestException:
continue
text = BeautifulSoup(r.text, "html.parser").get_text(" ", strip=True)
rows.append({"text": text, "label": label, "source": url})
return rows
Étape 3. Nettoyez et dédupliquez. Les données brutes extraites sont bruitées et contiennent souvent des doublons, lesquels favorisent rapidement un modèle biaisé et surajusté. Supprimez les échantillons vides ou trop courts, normalisez le texte et retirez les doublons exacts et quasi identiques avant toute autre opération.
import hashlib, re
def clean(t):
return re.sub(r"\s+", " ", t).strip().lower()
def dedup(rows, min_len=40):
"""Drop empties, too-short samples, and exact duplicates — noisy,
duplicated data is the fastest way to a biased, overfit model."""
seen, out = set(), []
for row in rows:
text = row["text"]
if not text or len(text) < min_len:
continue
key = hashlib.sha1(clean(text).encode()).hexdigest()
if key in seen:
continue
seen.add(key)
out.append(row)
return out
urls = ["https://example.com/a", "https://example.com/b"] # your source list
dataset = dedup(collect(urls, label="positive"))
print(f"{len(dataset)} deduplicated examples")
Étape 4. Étiqueter et structurer. Appliquez des étiquettes cohérentes : de façon programmatique lorsque c’est possible (supervision faible, heuristiques), avec une revue humaine sur un échantillon afin de mesurer la qualité des étiquettes. Stockez le dataset dans un format structuré et versionné (JSONL/Parquet) afin de pouvoir reproduire les exécutions d’entraînement.
Étape 5. Valider la qualité. Vérifiez l’équilibre des classes, la distribution des sources et les biais évidents avant l’entraînement. Un audit rapide : nombre d’exemples par classe, par région, par source : permet de détecter les déséquilibres qui nuisent discrètement aux performances du modèle.
Pourquoi les proxies sont essentiels pour la collecte de données ML
Sans proxies, deux problèmes compromettent la collecte de données de machine learning à grande échelle. Le volume : les jeux de données d’entraînement nécessitent des milliers, voire des millions d’exemples, tandis que les sites limitent le débit et bloquent le crawling agressif. Une seule IP est donc vite bloquée. La diversité : si tous les exemples proviennent d’un même emplacement, le jeu de données en reproduit le biais. Il faut donc extraire des exemples dans de nombreuses régions. Les proxies résidentiels DataImpulse ($1/GB, rotatifs, 195 pays) répondent à ces deux besoins : un vaste pool rotatif permet de maintenir le volume, et le ciblage géographique fournit des exemples diversifiés par région pour les tâches sensibles à la géolocalisation. Les proxies facilitent la collecte de données, mais ne l’emportent pas sur les conditions d’utilisation d’un site. Pour une vue d’ensemble plus large des données collectées sur le web, consultez notre guide sur les données alternatives.
Est-il légal de scraper des données pour l’entraînement ML ?
La collecte et l’entraînement sont deux questions juridiques distinctes. Collecte : les règles habituelles s’appliquent : les données publiques et non personnelles présentent généralement moins de risques, mais cela dépend toujours du droit d’auteur, des conditions du site, des contrôles d’accès et du droit de la confidentialité ; évitez les contenus accessibles uniquement après connexion, les données personnelles et le contournement des contrôles d’accès. Entraînement : dans Bartz v. Anthropic (2025), un tribunal américain a jugé que l’entraînement sur des livres acquis légalement relevait du fair use au vu des faits de l’espèce, mais a rejeté le fair use pour la constitution d’une bibliothèque à partir de copies piratées. La manière dont vous avez obtenu les données compte donc autant que l’usage que vous en faites. Gardez une provenance propre, respectez le fichier robots.txt et les conditions des sites, et consultez un conseiller juridique pour un modèle commercial. Pour le cadre complet, consultez notre article sur la légalité du web scraping. Il s’agit d’informations générales, et non d’un avis juridique.
Questions fréquentes
Qu’est-ce que la collecte de données pour le machine learning ?
C’est le processus qui consiste à collecter, nettoyer et structurer des exemples réels dans un jeu de données sur lequel un modèle peut s’entraîner. Pour la plupart des équipes, la source principale est le web public, avec ses textes, images, prix, avis et annonces, collectés par scraping lorsqu’il n’existe ni API ni flux sous licence, puis dédupliqué, étiqueté et validé.
De quelle quantité de données ai-je besoin pour entraîner un modèle ?
Cela dépend de la tâche et du modèle, mais la qualité et la diversité comptent davantage que le volume brut. Un jeu de données plus petit, propre, bien équilibré et bien étiqueté surpasse généralement un jeu plus volumineux mais bruité. Concentrez-vous sur la suppression des doublons et du bruit d’étiquetage, ainsi que sur la couverture des cas que votre modèle rencontrera en production, avant de chercher à augmenter le volume.
Pourquoi la déduplication est-elle si importante pour les données d’entraînement ?
Les doublons surpondèrent ce qui est répété, ce qui biaise le modèle et gonfle les scores d’évaluation (le même exemple peut se retrouver à la fois dans les ensembles d’entraînement et de test). Supprimer les doublons exacts et quasi identiques est l’une des étapes de nettoyage les plus efficaces : cela améliore la généralisation et rend les métriques plus fiables.
Ai-je besoin de proxies pour scraper des données d’entraînement ML ?
Pour scraper à fort volume des sites qui limitent le débit par IP, généralement oui : constituer un jeu de données implique de nombreuses requêtes et une seule IP est rapidement bloquée. Les proxies résidentiels rotatifs maintiennent le volume et permettent d’extraire des exemples diversifiés par région. Ils ne remplacent pas les conditions d’utilisation d’un site ; la collecte doit donc rester responsable. (Les API, les flux sous licence ou les jeux de données ouverts comme Common Crawl peuvent parfois éviter complètement le scraping.)
Est-il légal de scraper des données pour entraîner un modèle ?
La collecte et l’entraînement sont deux questions distinctes. La collecte de données publiques et non personnelles présente généralement moins de risques (sans être automatiquement autorisée : le droit d’auteur, les conditions d’utilisation, les contrôles d’accès et la législation sur la confidentialité s’appliquent toujours) ; évitez les contenus accessibles après connexion, les données personnelles et le contournement des contrôles. Pour l’entraînement, Bartz v. Anthropic (2025) a jugé que l’entraînement sur des livres acquis légalement relevait du fair use dans ce contexte, mais l’a rejeté pour une bibliothèque piratée. La provenance compte. Respectez les conditions des sites et consultez un juriste pour un usage commercial. Ceci ne constitue pas un avis juridique.
Conclusion
Constituer un dataset d’entraînement de qualité est un processus, pas un simple téléchargement : définissez le schéma, scrapez les bonnes sources à grande échelle, dédupliquez et nettoyez sans compromis, annotez de façon cohérente, puis vérifiez l’équilibre et les biais. Le web concentre une grande partie des données ; une couche de collecte géodiversifiée, à fort volume et fiable rend donc le reste possible. C’est ce que fournissent les proxies résidentiels. Conservez une provenance claire et gardez les limites juridiques en tête afin que votre collecte de données pour le machine learning produise des datasets dont un modèle puisse réellement apprendre. Pour l’infrastructure, consultez les meilleurs proxies pour l’entraînement ML et les meilleurs proxies pour le web scraping.
Dernière mise à jour : 25 juin 2026.
