Sdílet prostřednictvím


Kurz Pythonu: Kategorizace zákazníků pomocí clusteringu K-Means s využitím strojového učení SQL

Platí pro: SQL Server 2017 (14.x) a novější verze Azure SQL Managed Instance

V této čtyřdílné sérii kurzů můžete pomocí Pythonu vyvíjet a nasazovat model clusteringu K-Means ve službě SQL Server Machine Learning Services nebo v clusterech s velkými objemy dat a kategorizovat zákaznická data.

V této čtyřdílné sérii kurzů využijte Python k vývoji a nasazení modelu clusteringu K-Means ve službě SQL Server Machine Learning Services pro clusterování zákaznických dat.

V této čtyřdílné sérii kurzů můžete pomocí Pythonu vyvíjet a nasazovat model clusteringu K-Means ve službě Azure SQL Managed Instance Machine Learning Services ke clusterování zákaznických dat.

V první části této série nastavte požadavky pro kurz a pak obnovte ukázkovou datovou sadu do databáze. Později v této sérii využijte tato data k trénování a nasazení modelu clusteringu v Pythonu pomocí strojového učení SQL.

Ve dvou a třech částech této řady vyvíjejte v poznámkovém bloku Azure Data Studio některé skripty Pythonu, které analyzují a připraví vaše data a vytrénují model strojového učení. Potom ve čtyřech částech spusťte tyto skripty Pythonu uvnitř databáze pomocí uložených procedur.

Clustering je možné vysvětlit tak, že data uspořádáte do skupin, kde jsou členové skupiny podobným způsobem. V této sérii kurzů si představte, že vlastníte maloobchodní firmu. Pomocí algoritmu K-Means můžete provádět clustering zákazníků v datové sadě nákupů produktů a jejich vrácení. Díky clusteringu zákazníků se můžete efektivněji zaměřit na marketingové úsilí tím, že cílíte na konkrétní skupiny. Clustering K-Means je algoritmus učení bez dohledu , který hledá vzory v datech na základě podobností.

V tomto článku se dozvíte, jak:

  • Obnovení ukázkové databáze

V druhé části se dozvíte, jak připravit data z databáze k provádění clusteringu.

Ve třetí části se naučíte vytvářet a trénovat model clusteringu K-Means v Pythonu.

Ve 4. části se dozvíte, jak vytvořit uloženou proceduru v databázi, která může provádět clustering v Pythonu na základě nových dat.

Požadavky

  • Azure Data Studio. Použijte poznámkový blok v Azure Data Studiu pro Python i SQL. Další informace o poznámkových blocích najdete v tématu Použití poznámkových bloků v nástroji Azure Data Studio.

  • Další balíčky Pythonu – příklady v této sérii kurzů používají balíčky Pythonu, které jste mohli nebo nenainstalovali.

    Otevřete příkazový řádek pro správu a přejděte na instalační cestu pro verzi Pythonu, kterou používáte v Nástroji Azure Data Studio. Například: cd %LocalAppData%\Programs\Python\Python37-32. Potom spusťte následující příkazy a nainstalujte všechny tyto balíčky, které ještě nejsou nainstalované. Ujistěte se, že jsou tyto balíčky nainstalované ve správném umístění instalace Pythonu. Tuto možnost -t můžete použít k určení cílového adresáře.

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

Spuštěním následujících příkazů icacls udělte ČTENÍ a SPUŠTĚNÍ přístup k nainstalovaným knihovnám pro službu Launchpad systému SQL Server a 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

Obnovení ukázkové databáze

Ukázková datová sada použitá v tomto kurzu byla uložena do záložního souboru .bak databáze, který můžete stáhnout a použít. Tato datová sada je odvozena z datové sady tpcx-bb, kterou poskytuje Rada výkonu zpracování transakcí (TPC).

Poznámka:

Pokud používáte službu Machine Learning Services v clusterech s velkými objemy dat, podívejte se, jak obnovit databázi do hlavní instance clusteru SQL Serveru pro velké objemy dat.

  1. Stáhněte soubor tpcxbb_1gb.bak.

  2. Postupujte podle pokynů v části Obnovení databáze ze záložního souboru v Nástroji Azure Data Studio pomocí těchto podrobností:

    • Importujte ze staženého tpcxbb_1gb.bak souboru.
    • Pojmenujte cílovou databázi tpcxbb_1gb.
  3. Dotazem na dbo.customer tabulku můžete ověřit, že datová sada existuje po obnovení databáze:

    USE tpcxbb_1gb;
    SELECT * FROM [dbo].[customer];
    
  1. Stáhněte soubor tpcxbb_1gb.bak.

  2. Postupujte podle pokynů v části Obnovení databáze do spravované instance SQL v aplikaci SQL Server Management Studio pomocí těchto podrobností:

    • Importujte ze staženého tpcxbb_1gb.bak souboru.
    • Pojmenujte cílovou databázi tpcxbb_1gb.
  3. Dotazem na dbo.customer tabulku můžete ověřit, že datová sada existuje po obnovení databáze:

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

Vyčistěte zdroje

Pokud nebudete pokračovat v tomto kurzu, odstraňte tpcxbb_1gb databázi.

Další krok

V první části této série kurzů jste dokončili tyto kroky:

  • Obnovení ukázkové databáze

Pokud chcete připravit data pro model strojového učení, postupujte podle druhé části této série kurzů: