Руководство по Python. Классификация клиентов с помощью кластеризации k-средних с помощью машинного обучения SQL
Область применения: SQL Server 2017 (14.x) и более поздних версий Управляемый экземпляр SQL Azure
В этом серии учебников с четырьмя частью используйте Python для разработки и развертывания модели кластеризации K-Средних в службах SQL Server Машинное обучение или Кластеры больших данных для классификации данных клиентов.
В этой серии руководств по четырех частей используйте Python для разработки и развертывания модели кластеризации K-Средних в SQL Server Машинное обучение Services для кластеризации данных клиента.
В этой серии учебников с четырьмя частью используйте Python для разработки и развертывания модели кластеризации K-Средних в службах Управляемый экземпляр SQL Azure Машинное обучение для кластеризации данных клиентов.
В одной из этих рядов настройте предварительные требования для руководства и восстановите образец набора данных в базу данных. Далее в этой серии используйте эти данные для обучения и развертывания модели кластеризации в Python с помощью машинного обучения SQL.
В двух и трех частях этой серии вы можете разработать некоторые скрипты Python в записной книжке Azure Data Studio для анализа и подготовки данных и обучения модели машинного обучения. Затем, в четвертой части, запустите эти скрипты Python в базе данных с помощью хранимых процедур.
Кластеризацию можно описать как организацию данных по группам, где члены группы каким-либо образом похожи друг на друга. В рамках этой серии руководств вы можете представить себя владельцем розничного предприятия. Используйте алгоритм K-Средних для выполнения кластеризации клиентов в наборе данных о покупках и возврате продуктов. Благодаря кластеризации клиентов вы можете более эффективно осуществлять маркетинговую деятельность, ориентируясь на конкретные группы. Кластеризация методом k-средних — это алгоритм неконтролируемого обучения, который ищет закономерности в данных на основе сходства.
В этой статье раскрываются следующие темы:
- Восстановление примера базы данных
В первой части вы узнаете, как подготовить данные из базы данных для выполнения кластеризации.
В третьей части вы узнаете, как создать и обучить модель кластеризации K-Средних в Python.
В четвертой части вы узнаете, как создать хранимую процедуру в базе данных, которая может выполнять кластеризацию в Python на основе новых данных.
Необходимые компоненты
- Службы машинного обучения SQL Server с языком Python — следуйте инструкциям по установке в руководстве по установке для Windows или руководстве по установке для Linux.
- Службы машинного обучения SQL Server с языком Python — следуйте инструкциям по установке в руководстве по установке для Windows или руководстве по установке для Linux. Можно также включить Службы машинного обучения в кластерах больших данных SQL Server.
- Службы машинного обучения SQL Server с языком Python — следуйте инструкциям по установке в руководстве по установке для Windows.
Службы машинного обучения в Управляемом экземпляре SQL Azure. Дополнительные сведения см. в статье Общие сведения о службах машинного обучения в управляемом экземпляре SQL Azure.
SQL Server Management Studio для восстановления образца базы данных в Управляемый экземпляр SQL Azure.
Azure Data Studio. используйте записную книжку в Azure Data Studio для Python и SQL. Дополнительные сведения о записных книжках см. в статье Использование записных книжек в Azure Data Studio.
Дополнительные пакеты Python. Примеры в этой серии учебников используют пакеты Python, которые могут быть установлены или не установлены.
Откройте командную строку администрирования и измените путь установки для версии Python, используемой в Azure Data Studio. Например,
cd %LocalAppData%\Programs\Python\Python37-32
. Затем выполните следующие команды, чтобы установить любой из этих пакетов, которые еще не установлены. Убедитесь, что эти пакеты установлены в правильном расположении установки Python. Этот параметр-t
можно использовать для указания целевого каталога.pip install matplotlib pip install pandas pip install pyodbc pip install scipy pip install scikit-learn
Выполните следующие команды icacls , чтобы предоставить доступ READ и EXECUTE к установленным библиотекам службе запуска SQL Server и 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
Восстановление примера базы данных
Пример набора данных, используемый в этом учебнике, был сохранен в файл резервной копии базы данных BAK, чтобы его можно было скачать и использовать. Этот набор данных является производным от набора данных tpcx-bb, предоставляемого Советом по оценке производительности обработки транзакций (TPC).
Примечание.
Если вы используете Службы машинного обучения в Кластерах больших данных, ознакомьтесь со статьей Восстановление базы данных на главном экземпляре кластера больших данных SQL Server.
Скачайте файл tpcxbb_1gb.bak.
Следуйте инструкциям из раздела Восстановление базы данных из файла резервной копии в Azure Data Studio, используя следующие сведения:
- Выполните импорт из скачанного файла
tpcxbb_1gb.bak
. - Присвойте целевой базе данных имя
tpcxbb_1gb
.
- Выполните импорт из скачанного файла
Вы можете убедиться, что набор данных существует после восстановления базы данных, запросив таблицу
dbo.customer
:USE tpcxbb_1gb; SELECT * FROM [dbo].[customer];
Скачайте файл tpcxbb_1gb.bak.
Выполните инструкции по восстановлению базы данных в Управляемый экземпляр SQL в SQL Server Management Studio, используя следующие сведения:
- Выполните импорт из скачанного файла
tpcxbb_1gb.bak
. - Присвойте целевой базе данных имя
tpcxbb_1gb
.
- Выполните импорт из скачанного файла
Вы можете убедиться, что набор данных существует после восстановления базы данных, запросив таблицу
dbo.customer
:USE tpcxbb_1gb; SELECT * FROM [dbo].[customer];
Очистка ресурсов
Если вы не собираетесь продолжать работу с этим учебником, удалите базу данных tpcxbb_1gb
.
Следующий шаг
В первой части этого учебника вы выполнили следующие действия:
- Восстановление примера базы данных
Чтобы подготовить данные из для модели машинного обучения, перейдите ко второй части этого учебника: