Tutoriel Python : Catégoriser des clients à l’aide de k-moyennes avec l’apprentissage automatique SQL

S’applique à : SQL Server 2017 (14.x) et versions ultérieures Azure SQL Managed Instance

Dans ce tutoriel en quatre parties, utilisez Python pour développer et déployer un modèle de clustering k-moyennes dans SQL Server Machine Learning Services ou sur des Clusters Big Data pour catégoriser les données clients.

Dans ce tutoriel en quatre parties, utilisez Python pour développer et déployer un modèle de clustering k-moyennes dans SQL Server Machine Learning Services pour clusteriser les données clients.

Dans cette série de quatre tutoriels, utilisez Python pour développer et déployer un modèle de clustering k-moyennes dans Azure SQL Managed Instance Machine Learning Services pour clusteriser les données client.

Dans la première partie de cette série, configurez les prérequis pour le tutoriel, puis restaurez un exemple de jeu de données vers une base de données. Ensuite dans cette série, utilisez ces données pour effectuer l’apprentissage et le déploiement d’un modèle de clustering dans Python avec le Machine Learning SQL.

Dans les parties deux et trois de cette série, développez des scripts Python dans un notebook Azure Data Studio pour analyser et préparer vos données et effectuer l’apprentissage d’un modèle Machine Learning. Ensuite, dans la quatrième partie, exécutez ces scripts Python au sein d’une base de données à l’aide de procédures stockées.

Le clustering permet d’organiser les données dans des groupes dont les membres sont similaires. Pour cette série de tutoriels, imaginez que vous êtes une entreprise de vente au détail. Utilisez l’algorithme K-moyennes pour effectuer le clustering des clients dans un jeu de données d’achats et de retours de produits. Lorsque vous effectuez le clustering de clients, vous pouvez concentrer plus efficacement vos efforts marketing en ciblant des groupes spécifiques. Le clustering K-myennes est un algorithme d’apprentissage non supervisé qui recherche des modèles dans les données en fonction de similarités.

Dans cet article, découvrez comment :

  • Restaurer un exemple de base de données

Dans la deuxième partie, découvrez comment préparer les données à partir d’une base de données pour effectuer le clustering.

Dans la troisième partie, découvrez comment créer un modèle de clustering dans Python et effectuer son apprentissage.

Dans la quatrième partie, découvrez comment créer une procédure stockée dans une base de données qui est en mesure d’effectuer un clustering en Python en fonction de nouvelles données.

Prérequis

  • Azure Data Studio Utilisez un notebook dans Azure Data Studio pour Python et SQL. Pour plus d’informations sur les notebooks, consultez Guide pratique pour utiliser des notebooks dans Azure Data Studio.

  • Packages Python supplémentaires : les exemples de cette série de tutoriel utilisent des packages Python qui peuvent déjà être installés.

    Ouvrez une invite de commandes administrative et accédez au chemin d’installation de la version de Python que vous utilisez dans Azure Data Studio. Par exemple : cd %LocalAppData%\Programs\Python\Python37-32. Exécutez ensuite les commandes suivantes pour installer les packages qui ne sont pas déjà installés. Vérifiez que ces packages sont installés à l’emplacement d’installation approprié de Python. Vous pouvez utiliser l’option -t pour spécifier le répertoire de destination.

    pip install matplotlib
    pip install pandas
    pip install pyodbc
    pip install scipy
    pip install scikit-learn
    

Exécutez les commandes icacls suivantes pour accorder les accès LIRE ET EXÉCUTER aux bibliothèques installées à SQL Server Launchpad Service et SID S-1-15-2-1 (ALL_APPLICATION_PACKAGES).

  icacls "C:\Program Files\Python310\Lib\site-packages" /grant "NT Service\MSSQLLAUNCHPAD":(OI)(CI)RX /T
  icacls "C:\Program Files\Python310\Lib\site-packages" /grant *S-1-15-2-1:(OI)(CI)RX /T

Restaurer les exemples de base de données

L’exemple de jeu de données utilisé dans ce tutoriel a été enregistré dans un fichier de sauvegarde de base de données .bak que vous pouvez télécharger et utiliser. Ce jeu de données est dérivé du jeu de données TPCX-BB fourni par le TPC (Transaction Processing Performance Council).

Notes

Si vous utilisez Machine Learning Services sur des clusters Big Data, consultez Restaurer une base de données dans l’instance principale du cluster Big Data SQL Server.

  1. Téléchargez le fichier tpcxbb_1gb. bak.

  2. Suivez les instructions dans Restaurer une base de données à partir d’un fichier de sauvegarde dans Azure Data Studio, en utilisant les informations suivantes :

    • Importez à partir du fichier tpcxbb_1gb.bak que vous avez téléchargé
    • Nommez la base de données cible « tpcxbb_1gb ».
  3. Vous pouvez vérifier que le jeu de données existe après la restauration de la base de données en interrogeant la table dbo.customer :

    USE tpcxbb_1gb;
    SELECT * FROM [dbo].[customer];
    
  1. Téléchargez le fichier tpcxbb_1gb. bak.

  2. Suivez les instructions de Restauration d’une base de données sur SQL Managed Instance dans SQL Server Management Studio, en utilisant les informations suivantes :

    • Importez à partir du fichier tpcxbb_1gb.bak que vous avez téléchargé
    • Nommez la base de données cible « tpcxbb_1gb ».
  3. Vous pouvez vérifier que le jeu de données existe après la restauration de la base de données en interrogeant la table dbo.customer :

    USE tpcxbb_1gb;
    SELECT * FROM [dbo].[customer];
    

Nettoyer les ressources

Si vous ne poursuivez pas ce tutoriel, supprimez la base de données tpcxbb_1gb.

Étapes suivantes

Dans la première partie de cette série de tutoriels, vous avez effectué les étapes suivantes :

  • Restaurer un exemple de base de données

Pour préparer les données pour le modèle Machine Learning, suivez la deuxième partie de cette série de tutoriels :