Tutorial Python: Mengategorikan pelanggan menggunakan pengklusteran k-means dengan pembelajaran mesin SQL

Berlaku untuk: SQL Server 2017 (14.x) dan Azure SQL Managed Instance yang lebih baru

Dalam seri tutorial empat bagian ini, gunakan Python untuk mengembangkan dan menyebarkan model pengklusteran K-Means di SQL Server Pembelajaran Mesin Services atau di Kluster Big Data untuk mengategorikan data pelanggan.

Dalam seri tutorial empat bagian ini, gunakan Python untuk mengembangkan dan menyebarkan model pengklusteran K-Means di SQL Server Pembelajaran Mesin Services untuk mengelompokkan data pelanggan.

Dalam seri tutorial empat bagian ini, gunakan Python untuk mengembangkan dan menyebarkan model pengklusteran K-Means di Azure SQL Managed Instance Pembelajaran Mesin Services untuk mengelompokkan data pelanggan.

Di bagian salah satu seri ini, siapkan prasyarat untuk tutorial lalu pulihkan himpunan data sampel ke database. Kemudian dalam seri ini, gunakan data ini untuk melatih dan menyebarkan model pengklusteran di Python dengan pembelajaran mesin SQL.

Di bagian dua dan tiga seri ini, kembangkan beberapa skrip Python di notebook Azure Data Studio untuk menganalisis dan menyiapkan data Anda dan melatih model pembelajaran mesin. Kemudian, di bagian empat, jalankan skrip Python tersebut di dalam database menggunakan prosedur tersimpan.

Pengklusteran dapat dijelaskan sebagai mengatur data ke dalam grup di mana anggota grup serupa dalam beberapa cara. Untuk seri tutorial ini, bayangkan Anda memiliki bisnis ritel. Gunakan algoritma K-Means untuk melakukan pengklusteran pelanggan dalam himpunan data pembelian dan pengembalian produk. Dengan mengelompokkan pelanggan, Anda dapat memfokuskan upaya pemasaran Anda secara lebih efektif dengan menargetkan grup tertentu. Pengklusteran K-Means adalah algoritma pembelajaran tanpa pengawasan yang mencari pola dalam data berdasarkan kesamaan.

Dalam artikel ini, pelajari cara:

  • Memulihkan database sampel

Di bagian dua, pelajari cara menyiapkan data dari database untuk melakukan pengklusteran.

Di bagian ketiga, pelajari cara membuat dan melatih model pengklusteran K-Means di Python.

Di bagian empat, pelajari cara membuat prosedur tersimpan dalam database yang dapat melakukan pengklusteran di Python berdasarkan data baru.

Prasyarat

  • Layanan Pembelajaran Mesin SQL Server dengan opsi bahasa Python - Ikuti instruksi penginstalan dalam panduan penginstalan Windows atau panduan penginstalan Linux.
  • Layanan Pembelajaran Mesin SQL Server dengan opsi bahasa Python - Ikuti instruksi penginstalan di panduan penginstalan Windows.
  • Azure SQL Managed Instance Pembelajaran Mesin Services. Untuk informasi, lihat gambaran umum Azure SQL Managed Instance Pembelajaran Mesin Services.

  • SQL Server Management Studio untuk memulihkan database sampel ke Azure SQL Managed Instance.

  • Azure Data Studio. gunakan notebook di Azure Data Studio untuk Python dan SQL. Untuk informasi selengkapnya tentang buku catatan, lihat Cara menggunakan buku catatan di Azure Data Studio.

  • Paket Python tambahan - Contoh dalam seri tutorial ini menggunakan paket Python yang mungkin atau mungkin belum Anda instal.

    Buka Perintah Administratif dan ubah ke jalur penginstalan untuk versi Python yang Anda gunakan di Azure Data Studio. Contohnya, cd %LocalAppData%\Programs\Python\Python37-32. Kemudian jalankan perintah berikut untuk menginstal salah satu paket ini yang belum diinstal. Pastikan paket ini diinstal di lokasi penginstalan Python yang benar. Anda dapat menggunakan opsi -t untuk menentukan direktori tujuan.

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

Jalankan perintah icacls berikut untuk memberikan akses READ & EXECUTE ke pustaka yang diinstal ke SQL Server Launchpad Service dan 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

Memulihkan database sampel

Sampel himpunan data yang digunakan dalam tutorial ini telah disimpan ke file cadangan database .bak untuk Anda unduh dan gunakan. Himpunan data ini berasal dari himpunan data tpcx-bb yang disediakan oleh Dewan Kinerja Pemrosesan Transaksi (TPC).

Catatan

Jika Anda menggunakan Pembelajaran Mesin Services di Kluster Big Data, lihat cara Memulihkan database ke dalam instans master kluster big data SQL Server.

  1. Unduh file tpcxbb_1gb.bak.

  2. Ikuti petunjuk dalam Memulihkan database dari file cadangan di Azure Data Studio, menggunakan detail berikut:

    • Impor dari file tpcxbb_1gb.bak yang Anda unduh
    • Beri nama database target "tpcxbb_1gb"
  3. Anda dapat memverifikasi bahwa himpunan data ada setelah Memulihkan database dengan mengkueri tabel dbo.customer :

    USE tpcxbb_1gb;
    SELECT * FROM [dbo].[customer];
    
  1. Unduh file tpcxbb_1gb.bak.

  2. Ikuti petunjuk dalam Memulihkan database ke SQL Managed Instance di SQL Server Management Studio, menggunakan detail berikut:

    • Impor dari file tpcxbb_1gb.bak yang Anda unduh
    • Beri nama database target "tpcxbb_1gb"
  3. Anda dapat memverifikasi bahwa himpunan data ada setelah Memulihkan database dengan mengkueri tabel dbo.customer :

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

Membersihkan sumber daya

Jika Anda tidak akan melanjutkan tutorial ini, hapus database tpcxbb_1gb.

Langkah berikutnya

Di bagian salah satu seri tutorial ini, Anda menyelesaikan langkah-langkah berikut:

  • Memulihkan database sampel

Untuk menyiapkan data untuk model pembelajaran mesin, ikuti bagian dua dari seri tutorial ini: