Учебник по Python. Классификация клиентов на основе кластеризации методом k-средних с помощью машинного обучения SQLPython tutorial: Categorizing customers using k-means clustering with SQL machine learning

Применимо к:Applies to: даSQL Server 2017 (14.x);SQL Server 2017 (14.x)yesSQL Server 2017 (14.x);SQL Server 2017 (14.x) и более поздние версии ДаУправляемый экземпляр SQL AzureAzure SQL Managed InstanceYesУправляемый экземпляр SQL AzureAzure SQL Managed InstanceПрименимо к:Applies to: даSQL Server 2017 (14.x);SQL Server 2017 (14.x)yesSQL Server 2017 (14.x);SQL Server 2017 (14.x) and later ДаУправляемый экземпляр SQL AzureAzure SQL Managed InstanceYesУправляемый экземпляр SQL AzureAzure SQL Managed Instance

В этом цикле учебников из четырех частей вы будете использовать Python для разработки и развертывания модели кластеризации методом k-средних в Службах машинного обучения SQL Server или Кластерах больших данных для классификации данных клиентов.In this four-part tutorial series, you'll use Python to develop and deploy a K-Means clustering model in SQL Server Machine Learning Services or on Big Data Clusters to categorize customer data.

В этом учебнике из четырех частей вы будете использовать Python для разработки и развертывания модели кластеризации методом k-средних в Службах машинного обучения SQL Server для кластеризации данных клиентов.In this four-part tutorial series, you'll use Python to develop and deploy a K-Means clustering model in SQL Server Machine Learning Services to cluster customer data.

В этом цикле учебников, состоящем из четырех частей, вы будете использовать Python для разработки и развертывания модели кластеризации методом K-средних в Службах машинного обучения Управляемого экземпляра SQL Azure для кластеризации данных клиентов.In this four-part tutorial series, you'll use Python to develop and deploy a K-Means clustering model in Azure SQL Managed Instance Machine Learning Services to cluster customer data.

В первой части этого цикла учебников вы настроите необходимые компоненты, а затем восстановите пример набора данных в базе данных.In part one of this series, you'll set up the prerequisites for the tutorial and then restore a sample dataset to a database. Далее в этом цикле вы будете использовать полученные данные для обучения и развертывания модели кластеризации в Python с помощью машинного обучения SQL.Later in this series, you'll use this data to train and deploy a clustering model in Python with SQL machine learning.

Во второй и третьей частях вы напишите скрипты Python в записной книжке Azure Data Studio для анализа и подготовки данных и обучения модели машинного обучения.In parts two and three of this series, you'll develop some Python scripts in an Azure Data Studio notebook to analyze and prepare your data and train a machine learning model. Затем, в четвертой части, вы запустите эти сценарии Python в базе данных с помощью хранимых процедур.Then, in part four, you'll run those Python scripts inside a database using stored procedures.

Кластеризацию можно описать как организацию данных по группам, где члены группы каким-либо образом похожи друг на друга.Clustering can be explained as organizing data into groups where members of a group are similar in some way. В рамках этой серии руководств вы можете представить себя владельцем розничного предприятия.For this tutorial series, imagine you own a retail business. Вы будете использовать метод k-средних для кластеризации клиентов в наборе данных о покупках и возвратах продуктов.You'll use the K-Means algorithm to perform the clustering of customers in a dataset of product purchases and returns. Благодаря кластеризации клиентов вы можете более эффективно осуществлять маркетинговую деятельность, ориентируясь на конкретные группы.By clustering customers, you can focus your marketing efforts more effectively by targeting specific groups. Кластеризация методом k-средних — это алгоритм неконтролируемого обучения, который ищет закономерности в данных на основе сходства.K-Means clustering is an unsupervised learning algorithm that looks for patterns in data based on similarities.

В этой статье вы узнаете, как выполнять следующие задачи.In this article, you'll learn how to:

  • Восстановление примера базы данныхRestore a sample database

Во второй части вы узнаете, как подготовить данные из базы данных для выполнения кластеризации.In part two, you'll learn how to prepare the data from a database to perform clustering.

В третьей части вы узнаете, как создать и обучить модель кластеризации на основе k-средних в Python.In part three, you'll learn how to create and train a K-Means clustering model in Python.

В четвертой части вы узнаете, как создать в базе данных хранимую процедуру, которая может выполнять кластеризацию в Python на основе новых данных.In part four, you'll learn how to create a stored procedure in a database that can perform clustering in Python based on new data.

Предварительные требованияPrerequisites

  • Azure Data Studio.Azure Data Studio. Записную книжку Azure Data Studio вы будете использовать как для Python, так и для SQL.You'll use a notebook in Azure Data Studio for both Python and SQL. Дополнительные сведения о записных книжках см. в статье Использование записных книжек в Azure Data Studio.For more information about notebooks, see How to use notebooks in Azure Data Studio.

  • Дополнительные пакеты Python — в примерах этой серии учебников используются пакеты Python, которые могут быть как установлены, так и не установлены вами.Additional Python packages - The examples in this tutorial series use Python packages that you may or may not have installed.

    Откройте командную строку и измените путь установки для версии Python, используемой в Azure Data Studio.Open a Command Prompt and change to the installation path for the version of Python you use in Azure Data Studio. Например, cd %LocalAppData%\Programs\Python\Python37-32.For example, cd %LocalAppData%\Programs\Python\Python37-32. Выполните следующие команды, чтобы импортировать пакеты, которые еще не установлены.Then run the following commands to install any of these packages that are not already installed.

    pip install matplotlib
    pip install pandas
    pip install pyodbc
    pip install scipy
    pip install sklearn
    

Восстановление примера базы данныхRestore the sample database

Пример набора данных, используемый в этом учебнике, был сохранен в файл резервной копии базы данных BAK, чтобы его можно было скачать и использовать.The sample dataset used in this tutorial has been saved to a .bak database backup file for you to download and use. Этот набор данных является производным от набора данных tpcx-bb, предоставляемого Советом по оценке производительности обработки транзакций (TPC).This dataset is derived from the tpcx-bb dataset provided by the Transaction Processing Performance Council (TPC).

Примечание

Если вы используете Службы машинного обучения в Кластерах больших данных, ознакомьтесь со статьей Восстановление базы данных на главном экземпляре кластера больших данных SQL Server.If you are using Machine Learning Services on Big Data Clusters, see how to Restore a database into the SQL Server big data cluster master instance.

  1. Скачайте файл tpcxbb_1gb.bak.Download the file tpcxbb_1gb.bak.

  2. Следуйте инструкциям из раздела Восстановление базы данных из файла резервной копии в Azure Data Studio, используя следующие сведения:Follow the directions in Restore a database from a backup file in Azure Data Studio, using these details:

    • Выполните импорт из скачанного файла tpcxbb_1gb.bak.Import from the tpcxbb_1gb.bak file you downloaded
    • Назовите целевую базу данных "tpcxbb_1gb".Name the target database "tpcxbb_1gb"
  3. Чтобы убедиться, что набор данных существует после восстановления базы данных, выполните запрос к таблице dbo.customer:You can verify that the dataset exists after you have restored the database by querying the dbo.customer table:

    USE tpcxbb_1gb;
    SELECT * FROM [dbo].[customer];
    
  1. Скачайте файл tpcxbb_1gb.bak.Download the file tpcxbb_1gb.bak.

  2. Следуйте инструкциям в разделе Восстановление базы данных в Управляемый экземпляр в SQL Server Management Studio, используя следующие сведения.Follow the directions in Restore a database to a Managed Instance in SQL Server Management Studio, using these details:

    • Выполните импорт из скачанного файла tpcxbb_1gb.bak.Import from the tpcxbb_1gb.bak file you downloaded
    • Назовите целевую базу данных "tpcxbb_1gb".Name the target database "tpcxbb_1gb"
  3. Чтобы убедиться, что набор данных существует после восстановления базы данных, выполните запрос к таблице dbo.customer:You can verify that the dataset exists after you have restored the database by querying the dbo.customer table:

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

Очистка ресурсовClean up resources

Если вы не собираетесь продолжать работу с этим учебником, удалите базу данных tpcxbb_1gb.If you're not going to continue with this tutorial, delete the tpcxbb_1gb database.

Дальнейшие действияNext steps

В первой части этого учебника вы выполнили следующие действия:In part one of this tutorial series, you completed these steps:

  • Восстановление примера базы данныхRestore a sample database

Чтобы подготовить данные из для модели машинного обучения, перейдите ко второй части этого учебника:To prepare the data for the machine learning model, follow part two of this tutorial series: