Dela via


Python-självstudie: Kategorisera kunder med k-means-klustring med SQL-maskininlärning

Gäller för: SQL Server 2017 (14.x) och senare versioner Azure SQL Managed Instance

I den här självstudieserien i fyra delar använder du Python för att utveckla och distribuera en K-Means-klustermodell i SQL Server Machine Learning Services eller i stordatakluster för att kategorisera kunddata.

I den här självstudieserien i fyra delar använder du Python för att utveckla och distribuera en K-Means-klustermodell i SQL Server Machine Learning Services för att klustra kunddata.

I den här självstudieserien i fyra delar använder du Python för att utveckla och distribuera en K-Means-klustermodell i Azure SQL Managed Instance Machine Learning Services för att klustra kunddata.

I den första delen av den här serien ställer du in förutsättningarna för handledningen och återställer sedan en exempel datauppsättning i en databas. Senare i den här serien använder du dessa data för att träna och distribuera en klustermodell i Python med SQL-maskininlärning.

I del två och tre i den här serien utvecklar du vissa Python-skript i en Azure Data Studio-notebook-fil för att analysera och förbereda dina data och träna en maskininlärningsmodell. Kör sedan Python-skripten i en databas i del fyra med hjälp av lagrade procedurer.

Klustring kan förklaras som att organisera data i grupper där medlemmar i en grupp på något sätt liknar dem. Anta att du äger ett detaljhandelsföretag i den här självstudieserien. Använd K-Means-algoritmen för att utföra klustring av kunder i en datauppsättning med produktinköp och returer. Genom att segmentera kunder kan du fokusera marknadsföring mer effektivt genom att rikta in dig på specifika grupper. K-Means-klustring är en oövervakad inlärningsalgoritm som söker efter mönster i data baserat på likheter.

I den här artikeln lär du dig att:

  • Återställa en exempeldatabas

I del två får du lära dig hur du förbereder data från en databas för att utföra klustring.

I del tre får du lära dig hur du skapar och tränar en K-Means-klustermodell i Python.

I del fyra får du lära dig hur du skapar en lagrad procedur i en databas som kan utföra klustring i Python baserat på nya data.

Förutsättningar

  • Azure Data Studio. använd en notebook-fil i Azure Data Studio för både Python och SQL. Mer information om notebook-filer finns i Använda notebook-filer i Azure Data Studio.

  • Ytterligare Python-paket – Exemplen i den här självstudieserien använder Python-paket som du kanske eller kanske inte har installerat.

    Öppna en Administrativ Kommandoprompt och navigera till installationsmappen för den version av Python som du använder i Azure Data Studio. Till exempel cd %LocalAppData%\Programs\Python\Python37-32. Kör sedan följande kommandon för att installera något av de här paketen som inte redan är installerade. Kontrollera att dessa paket är installerade på rätt Plats för Python-installationen. Du kan använda alternativet -t för att ange målkatalogen.

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

Kör följande icacls-kommandon för att ge READ & EXECUTE-åtkomst till de installerade biblioteken till SQL Server Launchpad Service och 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

Återställa exempeldatabasen

Exempeldatauppsättningen som används i den här självstudien har sparats i en .bak databassäkerhetskopieringsfil som du kan ladda ned och använda. Den här datamängden härleds från tpcx-bb-datamängden som tillhandahålls av TPC (Transaction Processing Performance Council).

Anmärkning

Om du använder Machine Learning Services på stordatakluster kan du läsa om hur du återställer en databas till SQL Server-huvudinstansen för stordatakluster.

  1. Ladda ned filen tpcxbb_1gb.bak.

  2. Följ anvisningarna i Återställa en databas från en säkerhetskopia i Azure Data Studio med hjälp av följande information:

    • Importera från filen tpcxbb_1gb.bak som du laddade ned.
    • Ge måldatabasen namnet tpcxbb_1gb.
  3. Du kan kontrollera att datamängden finns när du har återställt databasen genom att fråga tabellen dbo.customer :

    USE tpcxbb_1gb;
    SELECT * FROM [dbo].[customer];
    
  1. Ladda ned filen tpcxbb_1gb.bak.

  2. Följ anvisningarna i Återställa en databas till en SQL Managed Instance i SQL Server Management Studio med hjälp av följande information:

    • Importera från filen tpcxbb_1gb.bak som du laddade ned.
    • Ge måldatabasen namnet tpcxbb_1gb.
  3. Du kan kontrollera att datamängden finns när du har återställt databasen genom att fråga tabellen dbo.customer :

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

Rensa resurser

Om du inte ska fortsätta med den här självstudien, bör du ta bort databasen tpcxbb_1gb.

Nästa steg

I del ett av den här självstudieserien har du slutfört följande steg:

  • Återställa en exempeldatabas

Om du vill förbereda data för maskininlärningsmodellen följer du del två i den här självstudieserien: