Matrices de Corrélation PDF
Document Details
Uploaded by Deleted User
Tags
Related
- Resinas Compuestas: Matrices y Técnicas de Restauración (Black I y II) - Universidad de La Serena - 2024
- Ana Quiroga: El Sujeto en el Proceso de Conocimiento (PDF)
- Examen de Matrices - 2º Bachillerato PDF
- Sesión 11: Tecnología de la Información PDF
- Examen de Robótica P1 PDF
- Matrices symétriques et endomorphismes symétriques (Polytech Nantes)
Summary
Ce document présente différentes techniques d'apprentissage automatique, y compris les matrices de corrélation et l'algorithme k-plus proche voisin (KNN). L'application pratique des matrices de corrélation est expliquée, ainsi que les concepts fondamentaux de KNN. Quelques exemples d'utilisation sont inclus.
Full Transcript
la matrice de corrélation Présente les coefficients de corrélation entre plusieurs variables dans un tableau, ce qui permet de visualiser les relations ou la liaison entre toutes les paires de variables. 6 Le coeffi...
la matrice de corrélation Présente les coefficients de corrélation entre plusieurs variables dans un tableau, ce qui permet de visualiser les relations ou la liaison entre toutes les paires de variables. 6 Le coefficient de corrélation d’une variable avec elle-même va être toujours égale à 1 label Encoding une technique utilisée pour convertir des colonnes catégorielles en colonnes numériques afin qu'elles puissent être ajustées par des modèles d'apprentissage automatique qui ne prennent en compte que des données numériques. La méthode ‘fit_transform’ fit : Il repère les catégories uniques dans la colonne: cat , dog, fish Transforme : Il attribue un entier unique à chaque catégorie et remplace les valeurs dans la colonne : 6 Algorithme 4: Le plus proche voisin (KNN) Exemple explicatif Le Jeu de données d’emails: Variable 1: le nombre de fautes Variable 2: le nombre de liens La représentation des données Variable cible : la catégorie d’email (spam ou non spam) 6 Exemple explicatif Prédire si un email est un spam ou non, en vous basant sur le nombre de liens et le nombre de fautes d’orthographe qu’il contient. Un nouveau email 6 on veut connaître la classe de ce point. Etape 1: On définit en entrée de cet algorithme un nombre entier k qui représente le nombre de voisin les plus proches à considérer pour classer un point. Pour cet exemple, nous prenons K=3 6 Etape 2: Nous calculons la distance entre ce point et tous les autres points du jeu de données. Il existe plusieurs méthodes pour calculer la distance entre deux points , parmi ces méthodes : la distance euclidienne et la distance manhattan 6 la distance euclidienne La distance euclidienne est une mesure de la distance entre deux points dans un espace euclidien. Elle correspond à la longueur du segment de droite qui relie ces deux points Exemple: 6 la distance Manhattan également connue sous le nom de distance L1 ou distance taxi, est une mesure particulièrement utile pour calculer les distances dans des chemins quadrillés ou entre des points dans des espaces multidimensionnels. Mathématiquement, la distance de Manhattan entre deux points dans un espace à n dimensions est la somme des différences absolues de leurs coordonnées cartésiennes. 6 la distance Manhattan Exemple 2D. Exemple 3D. 6 Etape 3: En classant chaque distance de la plus petite à la plus grande, on identifie les k données les plus proches à notre nouvelle donnée(pour cet exemple les trois points les plus proches). L’algorithme choisit enfin à quelle classe appartient la nouvelle donnée, en cherchant la famille majoritaire parmi les k données identifiées. 2 points de la classe Orange 1 point de la classe Gris foncé 6 Définition un algorithme d’apprentissage automatique qui utilise la proximité pour comparer un point de données avec un ensemble d'informations qui a été utilisé pour son entraînement et qu'il a mémorisé pour formuler des prédictions. Cet apprentissage fondé sur des instances a amené les k plus proches voisins. Ils permettent toutefois à l'algorithme de résoudre des problèmes de régression ou de classification. Les k plus proches voisins se débarrassent de la supposition que des points similaires peuvent se trouver à proximité les uns des autres selon le principe de « Qui se ressemble s'assemble ». 6 Le fonctionnement de l'algorithme On définit en entrée de cet algorithme un ensemble de données déjà classifiées (appelé jeu de données), une distance d et un nombre entier k. L’algorithme des k plus proches voisins calcule la distance entre toutes les données déjà classifiées et la nouvelle donnée qui vient d’être entrée. L’algorithme extrait ensuite les k données déjà classifiées les plus « proches » de la nouvelle donnée entrée, c’est-à-dire les données déjà classifiées qui ont la distance d la plus petite avec la nouvelle donnée entrée. L’algorithme choisit enfin à quelle famille appartient la nouvelle donnée, en cherchant la famille majoritaire parmi les k données identifiées. 6 Avantages de l'algorithme des k plus proches voisins Facile à mettre en œuvre: en raison de sa simplicité et de sa précision, le k-NN est l'un des premiers classificateurs appris par les débutants en science des données. S'adapte facilement: au fur et à mesure que de nouveaux échantillons d'entraînement sont ajoutés, l'algorithme s'ajuste pour inclure ces nouvelles données, car toutes les données d'entraînement sont conservées en mémoire. Peu d’hyperparamètres: k-NN ne nécessite qu'une valeur pour k et une métrique de distance, ce qui le rend relativement simple par rapport à d'autres algorithmes de machine learning. 6 la différence entre un paramètre et un hyper paramètre Les paramètres du modèle sont les variables internes du modèle qui sont apprises à partir des données d'entraînement. Ces paramètres sont ajustés pendant le processus de formation dans le but de minimiser l'erreur entre les résultats prédits et les résultats réels. Un exemple de paramètres du modèle inclue les coefficients(B0 et B1) dans un modèle de régression linéaire. Ils sont tirés des données. Pendant l'entraînement, le modèle ajuste ces paramètres de manière itérative pour trouver la ligne la mieux ajustée qui minimise la différence entre les valeurs prédites et les valeurs réelles dans l'ensemble de données d'entraînement 6 la différence entre un paramètre et un hyper paramètre Les hyperparamètres sont les configurations externes définies avant le début du processus d'apprentissage de formation. Ils ne sont pas appris à partir des données d'entraînement mais sont définis manuellement par l’utilisateur. Les hyperparamètres régissent la structure globale et le comportement du modèle. Les hyperparamètres ont un impact significatif sur les performances et le temps de formation du modèle. Le choix du bon ensemble d'hyperparamètres implique souvent un processus appelé réglage des hyperparamètres. Des exemples d'hyperparamètres incluent le nombre de voisin k dans le plus proche voisin (KNN) 6 Application pratique Le web scraping le scraping de données fait référence à une technique grâce à laquelle un programme informatique extrait des données de la sortie générée à partir d'un autre programme. Le scraping de données se manifeste généralement dans l'extraction web, le processus d'utilisation d'une application pour extraire des informations importantes d'un site web. 6 Les étapes du web scraping Le processus de web scraping est assez simple, bien que sa mise en œuvre puisse être complexe. Le web scraping se déroule en trois étapes : Pour commencer, l’élément de code utilisé pour extraire les informations, que nous appelons « bot de scraping », envoie une requête HTTP GET à un site web spécifique. Lorsque le site web répond, le scraper analyse le document HTML en recherchant un modèle particulier de données. Une fois les données extraites, il les convertit dans le format spécifique conçu par l’auteur du bot de scraping. 6 limiter les tentatives de web scraping Des efforts peuvent être faits pour limiter la quantité de web scraping susceptible de se produire. Voici trois méthodes pour limiter l'exposition aux tentatives de scraping de données : Rate limiting des requêtes - lorsqu’un humain clique sur une série de pages internet, la vitesse d’interaction avec le site est relativement prévisible, un humain ne pouvant pas parcourir 100 pages à la seconde par exemple. Les ordinateurs, quant à eux, peuvent lancer des requêtes de grande ampleur, plus rapidement que les humains, et les scrapers de données débutants peuvent utiliser des techniques de scraping non limitées pour tenter d’extraire l’ensemble d’un site très rapidement. En limitant le nombre maximum de requêtes qu'une adresse IP donnée peut effectuer sur une fenêtre de temps donnée, les sites web sont en mesure de se protéger contre les demandes d'exploitation et de limiter la quantité de scraping de données qui peut se produire sur une certaine fenêtre de6 temps. Utilisation de CAPTCHA pour les utilisateurs à l’origine de nombreuses requêtes : en plus d’utiliser une solution de limitation du taux, une autre mesure utile pour ralentir les scrapers de contenu consiste à soumettre les visiteurs des sites Web à un test difficile à surmonter pour un ordinateur. Un humain pourra raisonnablement réussir le test, mais un navigateur headless* qui procède à du scraping de données ne le pourra vraisemblablement pas, et n'arrivera certainement pas à passer de manière cohérente plusieurs instance du test. Cependant, les défis CAPTCHA peuvent avoir un impact négatif sur l’expérience utilisateur. Modification du balisage HTML à intervalles réguliers - les bots de scraping de données s’appuient sur un formatage cohérent afin de parcourir efficacement le contenu d’un site web et pouvoir analyser et enregistrer les données utiles. Pour interrompre ce flux, une méthode consiste à modifier régulièrement les éléments du balisage HTML pour que le scraping cohérent deviennent plus compliqué. En imbriquant les éléments HTML ou en changeant les autres aspects du balisage, les efforts de scraping de données peuvent être entravés ou contrecarrés. Pour certains sites internet, chaque page fois qu’une page est rendue, certaines modifications de la protection du contenu sont randomisées et mises en œuvre. D’autres sites internet modifient de temps en temps leur code de balisage afin d’empêcher les efforts de scraping de données à plus long terme. Avant de faire le web scraping Certains sites offrent des alternatives légales comme des API. Recherchez une API : Les API sont des interfaces dédiées qui permettent d'accéder légalement aux données. Exemple : Les plateformes comme Twitter, YouTube ou OpenWeather offrent des API pour éviter de scraper directement leur contenu. Vérifiez la documentation du site pour voir s’il offre une API publique. Vérification des Termes et Conditions Consultez les Conditions d'utilisation ou la Politique de confidentialité du site. Cherchez des mentions explicites sur la permission ou l'interdiction du scraping. Vérification des Termes et Conditions Première méthode : Exemple : site web indeed Si vous accédez au https://ma.indeed.com/legal Vérification des Termes et Conditions Deuxième méthode : L'erreur 403 correspond à un code de statut HTTP signifiant "Accès interdit" (Forbidden), le serveur refuse de donner accès à la ressource Vérification des Termes et Conditions Troisième méthode : Analyse du fichier robots.txt Le fichier robots.txt d'un site web spécifie les parties du site que les robots (comme les scrapers) peuvent ou ne peuvent pas visiter. Ajoutez /robots.txt à l'URL principale du site, Exemple : https://www.example.com/robots.txt Syntaxe du fichier robots.txt : User-agent : Indique le type de robot concerné. Disallow : Spécifie les parties interdites. Allow : Spécifie les parties autorisées. Vérification des Termes et Conditions Exemple : Le site web utilisé: rekrute Tous les users agents ont un Accès totalement interdit d'explorer toutle site sauf Googlebot qui est autorisé À explorer tout le site, y compris tous les répertoires et pages Pourquoi utiliser les méthodes légales ? Éviter les poursuites judiciaires : Scraper un site sans autorisation peut entraîner des sanctions légales, surtout pour des usages commerciaux. Protéger votre réputation : Être éthique dans vos pratiques montre un respect pour les propriétaires de contenu. Prévenir le blocage IP : Les sites peuvent bloquer votre adresse IP si vous scrapez de manière agressive ou non conforme. Application Pratique L’installation des bibliothèques :Ouvrir Anaconda prompt > tapez les lignes suivantes: pip install requests pip install lxml pip install beautifulsoup4 Pip install pandas 6 La bibliothèque Requests Requests est une bibliothèque HTTP sous licence Apache2, écrite en Python. Elle simplifie les requêtes HTTP vers les serveurs web, et l’exploitation des réponses. Cette bibliothèque fournit une API simple pour interagir avec les opérations HTTP. La méthode implémentée exécute les opérations vers un serveur web spécifié par son URL. Elle prend aussi en charge l’envoi d’informations supplémentaires vers un serveur web par le biais de paramètres et de headers, l’encodage de réponses des serveurs, la détection d’erreurs et les redirections. 6 La bibliothèque Lxml Lxml est une liaison Python mature pour les bibliothèques libxml2 et libxslt. Lxml est une bibliothèque Python puissante et flexible utilisée pour traiter des documents XML et HTML. Elle permet de manipuler, parcourir, analyser et modifier des fichiers structurés grâce à une interface simple, tout en offrant des performances rapides. 6 La bibliothèque BeautifulSoup(contenu statique) Beautiful Soup est une bibliothèque Python utilisée pour le Web Scraping. Elle permet d’extraire des données en provenance de fichiers XML ou HTML. Cette bibliothèque crée un arbre de parsing à partir du code source de la page, pouvant être utilisé pour extraire les données de manière hiérarchique et lisible. À l’origine, Beautiful Soup fut introduite en mai 2006 par Leonard Richardson qui continue à contribuer au projet. En outre, le projet est soutenu par Tidelift et son outil de maintenance open-source proposé par abonnement payant. 6 Application pratique