Partage
  • Partager sur Facebook
  • Partager sur Twitter

[COURS] Analyse exploratoire de données

ACP et clustering

    21 décembre 2022 à 10:49:15

    @patrickdidier91 : la relation de passage, c'est la normalisation des données : 1/ centrage de la moyenne sur 0 (translation), 2/ division par l'écart type pour obtenir un écart type de 1. C'est pour chaque colonne. Cela se fait par exemple avec le StandardScaler de Scikit-Learn. C'est important pour certains algorithmes qui biaisent leurs prédictions en fonction des ordres de grandeur des variables. Attention, 1/ ce n'est pas le cas pour tous les algorithmes, 2/ l'opération introduit du bruit. Il faut donc lire la documentation de chaque algorithme et sous-peser empiriquement l'avec et sans normalisation. Dernier conseil : coupler la normalisation et ton algo ml dans le cadre d'un pipeline, cela sécurisera ton affaire.
    • Partager sur Facebook
    • Partager sur Twitter

    Dr Pepper

      21 décembre 2022 à 19:31:25

      Bonjour Franck

      Merci pour ta réponse j'ai compris

      scale c'est parfait

      A bientôt

      • Partager sur Facebook
      • Partager sur Twitter
        13 mars 2023 à 11:34:53

        Bonjour,

        dans la partie "En pratique" du chapitre "Comprenez l'enjeu de l'analyse en composantes principales"  si je reproduis le code proposé

        j'obtiens le résultat suivant. je ne comprends pas pourquoi l'écart type n'est pas égal à 1 ?

        Merci

        Benjamin

         0123
        count 3.00 3.00 3.00 3.00
        mean 0.00 0.00 0.00 0.00
        std 1.22 1.22 1.22 1.22
        min -1.41 -0.73 -0.95 -1.41
        25% -0.35 -0.71 -0.69 -0.40
        50% 0.71 -0.69 -0.43 0.60
        75% 0.71 0.36 0.48 0.70
        max 0.71 1.41 1.38

        0.81

        • Partager sur Facebook
        • Partager sur Twitter
          4 avril 2023 à 12:02:36

          Je suis venu chercher ici la même réponse à cette question...

          Patientons !

          • Partager sur Facebook
          • Partager sur Twitter
            6 avril 2023 à 16:52:48

            Après quelques recherches, je crois que c'est une histoire d'écart type biaisé, non-biaisé

            Si tu utilises numpy (np.std(X_scaled)) pour ce calcul tu trouves bien un écart_type de 1.

            • Partager sur Facebook
            • Partager sur Twitter
              24 avril 2023 à 10:41:06

              En fait Numpy et Pandas n'utilisent pas les mêmes conventions pour le calcul de l'écart-type (unbiased/biased)

              Numpy (utilisé par scikit learn) divise par N et Pandas divise par N-1 par défaut

              https://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.StandardScaler.html

              https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.std.html#pandas.DataFrame.std

              -
              Edité par RehahnQureshi 28 avril 2023 à 17:29:58

              • Partager sur Facebook
              • Partager sur Twitter
                14 juillet 2023 à 10:50:02

                un cours vraiment intéressant, bien structuré et compréhensif!! Merci bien pour une opportunité donnée!!! 

                Si vous pouvez m'aider avec les fonctionnalités de Python afin d'exécuter les commandes dans le module. Je me suis familiarisé avec le logiciel R pour travailler . Merci bien pour la compréhension!! 

                • Partager sur Facebook
                • Partager sur Twitter
                  31 juillet 2023 à 18:28:56

                  Concernant l'écart type qui n'est pas égal à 1 avec la fonction describe().

                  Il faut ajouter (ddof =0) pour avoir l'écart type corrigé.

                  -
                  Edité par Sébastien Descampeaux 31 juillet 2023 à 18:30:00

                  • Partager sur Facebook
                  • Partager sur Twitter
                    7 janvier 2024 à 12:58:27

                    Bonjour et merci pour la clarté du cours, 

                    Dans le premier chapitre de la troisième partie, nommé "Recherchez une bonne partition", je soupçonne une coquille dans la formule de l'inertie intraclasse. En effet, si c'est bien la moyenne des inerties propres à chaque cluster, il faudrait ajouter un facteur 1/k (i.e. diviser la somme par le nombre total de clusters).

                    Anthony

                    • Partager sur Facebook
                    • Partager sur Twitter

                    Anthony DAVID, PhD

                      18 janvier 2024 à 19:07:01

                      Bonjour, une petite question:

                      Dans le TP suivant : https://openclassrooms.com/en/courses/4525281-realisez-une-analyse-exploratoire-de-donnees/5345201-tp-realisez-une-acp

                      la base de donnée mystère est censé ressembler à un chat en 3D, donc il devrait y avoir 3 variables dans la base de donné non? Pour que les points soient tridimensionnel. Or ce n'est pas le cas, donc il y a peut être quelquechose que je ne comprends pas.

                      • Partager sur Facebook
                      • Partager sur Twitter
                        19 janvier 2024 à 10:06:22

                        poipoi34 a écrit:

                        Bonjour, une petite question:

                        Dans le TP suivant : https://openclassrooms.com/en/courses/4525281-realisez-une-analyse-exploratoire-de-donnees/5345201-tp-realisez-une-acp

                        la base de donnée mystère est censé ressembler à un chat en 3D, donc il devrait y avoir 3 variables dans la base de donné non? Pour que les points soient tridimensionnel. Or ce n'est pas le cas, donc il y a peut être quelquechose que je ne comprends pas.


                        La base de données mystery.csv est bien une table avec 3 variables.

                        Voici les 5 premiers enregistrement:

                        On te demande d'utiliser PCA pour récupérer les composantes. Tu verras que les composantes 1 et 2 représentent 95% de la variance totale.

                        En prenant les composantes 1 et 2, tu visualiseras un chat en 2 dimensions de côté (la meilleure visualisation en 2D) car en prenant les composantes 1 et 3 par exemple, tu auras le chat vu de derrière qui sera compliqué à voir.

                        Dans la suite du notebook, en bonus, tu vas visualiser les données en 3D avec px.scatter_3d

                        • Partager sur Facebook
                        • Partager sur Twitter

                        [COURS] Analyse exploratoire de données

                        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                        • Editeur
                        • Markdown