Что такое службы машинного обучения SQL Server (Python и R)?What is SQL Server Machine Learning Services (Python and R)?

ОБЛАСТЬ ПРИМЕНЕНИЯ: даSQL Server нетБаза данных SQL Azure нетAzure Synapse Analytics (хранилище данных SQL) нетParallel Data Warehouse APPLIES TO: yesSQL Server noAzure SQL Database noAzure Synapse Analytics (SQL DW) noParallel Data Warehouse

Службы машинного обучения — это компонент SQL Server, который дает возможность выполнять скрипты Python и R с реляционными данными.Machine Learning Services is a feature in SQL Server that gives the ability to run Python and R scripts with relational data. Вы можете использовать платформы и пакеты с открытым исходным кодом и пакеты Майкрософт Python и R для прогнозной аналитики и машинного обучения.You can use open-source packages and frameworks, and the Microsoft Python and R packages for predictive analytics and machine learning. Скрипты выполняются в базе данных без перемещения данных за пределы SQL Server или по сети.The scripts are executed in-database without moving data outside SQL Server or over the network. В этой статье объясняются основы Служб машинного обучения SQL Server.This article explains the basics of SQL Server Machine Learning Services.

В Базе данных SQL Azure Службы машинного обучения предоставляются в общедоступной предварительной версии.In Azure SQL Database, Machine Learning Services is currently in public preview.

Примечание

Сведения о запуске Java в SQL Server см. в документации по расширениям языков.For executing Java in SQL Server, see the Language Extensions documentation.

Что такое Службы машинного обучения?What is Machine Learning Services?

Службы машинного обучения SQL Server можно использовать для запуска скриптов R или Python в базе данных.SQL Server Machine Learning Services lets you execute Python and R scripts in-database. С их помощью можно подготавливать и очищать данные, выполнять проектирование признаков, а также обучать, оценивать и развертывать модели машинного обучения в базе данных.You can use it to prepare and clean data, do feature engineering, and train, evaluate, and deploy machine learning models within a database. Этот компонент выполняет скрипты там, где хранятся данные, и устраняет необходимость перемещения данных по сети на другой сервер.The feature runs your scripts where the data resides and eliminates transfer of the data across the network to another server.

Базовые распределения Python и R включены в Службы машинного обучения.Base distributions of Python and R are included in Machine Learning Services. Вы можете установить и использовать платформы и пакеты с открытым исходным кодом, такие как PyTorch, TensorFlow и scikit-learn, в дополнение к пакетам Microsoft revoscalepy и microsoftml для Python и RevoScaleR, MicrosoftML, OLAP и sqlrutils для R.You can install and use open-source packages and frameworks, such as PyTorch, TensorFlow, and scikit-learn, in addition to the Microsoft packages revoscalepy and microsoftml for Python, and RevoScaleR, MicrosoftML, olapR, and sqlrutils for R.

Службы машинного обучения используют платформу расширяемости для выполнения скриптов Python и R на SQL Server.Machine Learning Services uses an extensibility framework to run Python and R scripts in SQL Server. Дополнительные сведения о том, как это работает:Learn more about how this works:

Что можно сделать с помощью Служб машинного обучения?What can I do with Machine Learning Services?

Службы машинного обучения можно использовать для создания и обучения моделей машинного обучения и глубокого обучения в SQL Server.You can use Machine Learning Services to build and training machine learning and deep learning models within SQL Server. Можно также развернуть существующие модели в Службах машинного обучения и использовать реляционные данные для прогнозов.You can also deploy existing models to Machine Learning Services and use relational data for predictions.

Примеры типов прогнозов, для которых можно использовать Службы машинного обучения SQL Server:Examples of the type of predictions that you can use SQL Server Machine Learning Services for, include:

Классификация и категоризацияClassification/Categorization Автоматическое разделение отзывов клиентов на положительные и отрицательныеAutomatically divide customer feedback into positive and negative categories
Регрессия/прогнозирование непрерывных значенийRegression/Predict continuous values Прогнозирование стоимости домов на основе размера и расположенияPredict the price of houses based on size and location
Обнаружение аномалийAnomaly Detection Обнаружение мошеннических банковских транзакцийDetect fraudulent banking transactions
РекомендацииRecommendations Предложение продуктов, которые могут понравиться покупателям Интернет-магазина, на основе их предыдущих покупокSuggest products that online shoppers may want to buy, based on their previous purchases

Выполнение скриптов Python и RHow to execute Python and R scripts

Существует два способа выполнения скриптов Python и R в Службах машинного обучения:There are two ways to execute Python and R scripts in Machine Learning Services:

  • Наиболее распространенным способом является использование хранимой процедуры T-SQL sp_execute_external_script.The most common way is to use the T-SQL stored procedure sp_execute_external_script.

  • Вы также можете использовать предпочтительный клиент Python или R и написать скрипты, которые принудительно отправляют выполнение (так называемый удаленный контекст вычислений) на удаленный SQL Server.You can also use your preferred Python or R client and write scripts that push the execution (referred to as a remote compute context) to a remote SQL Server. Дополнительные сведения о настройке обработки и анализа данных см. в статьях Разработки на Python и Разработки на R.See how to set up a data science client for Python development and R development for more information.

Пакеты Python и RPython and R packages

В дополнение к корпоративным пакетам Майкрософт можно использовать платформы и пакеты с открытым кодом.You can use open-source packages and frameworks, in addition to Microsoft's enterprise packages. Наиболее распространенные пакеты Python и R с открытым кодом предварительно установлены в Службах машинного обучения.Most common open-source Python and R packages are pre-installed in Machine Learning Services. Также включены следующие пакеты Python и R от Майкрософт:The following Python and R packages from Microsoft are also included:

ЯзыкLanguage ПакетPackage ОписаниеDescription
PythonPython revoscalepyrevoscalepy Основной пакет для масштабируемого Python.The primary package for scalable Python. Преобразования и обработка данных, статистическая сводка, визуализация и многие виды моделирования.Data transformations and manipulation, statistical summarization, visualization, and many forms of modeling. Кроме того, функции в этом пакете автоматически распределяют рабочие нагрузки между доступными ядрами для параллельной обработки.Additionally, functions in this package automatically distribute workloads across available cores for parallel processing.
PythonPython microsoftmlmicrosoftml Добавляет алгоритмы машинного обучения для создания пользовательских моделей для анализа текста, анализа изображений и анализа тональности.Adds machine learning algorithms to create custom models for text analysis, image analysis, and sentiment analysis.
ЧтениеR RevoScaleRRevoScaleR Основной пакет для масштабируемого R. Преобразования и обработка данных, статистическая сводка, визуализация и многие виды моделирования.The primary package for scalable R. Data transformations and manipulation, statistical summarization, visualization, and many forms of modeling. Кроме того, функции в этом пакете автоматически распределяют рабочие нагрузки между доступными ядрами для параллельной обработки.Additionally, functions in this package automatically distribute workloads across available cores for parallel processing.
ЧтениеR MicrosoftML (R)MicrosoftML (R) Добавляет алгоритмы машинного обучения для создания пользовательских моделей для анализа текста, анализа изображений и анализа тональности.Adds machine learning algorithms to create custom models for text analysis, image analysis, and sentiment analysis.
ЧтениеR olapRolapR Функции R, используемые для запросов многомерных выражений к кубу OLAP SQL Server Analysis Services.R functions used for MDX queries against a SQL Server Analysis Services OLAP cube.
ЧтениеR sqlrutilssqlrutils Механизм для использования скриптов R в хранимой процедуре T-SQL, регистрации этой хранимой процедуры в базе данных и ее запуска из среды разработки R.A mechanism to use R scripts in a T-SQL stored procedure, register that stored procedure with a database, and run the stored procedure from an R development environment.
ЧтениеR Microsoft R OpenMicrosoft R Open Microsoft R Open (MRO) — это улучшенная версия R от Майкрософт.Microsoft R Open (MRO) is the enhanced distribution of R from Microsoft. Это полная платформа с открытым кодом для статистического анализа и обработки и анализа данных.It is a complete open-source platform for statistical analysis and data science. Она основана на R, полностью совместима с ним и включает дополнительные возможности для повышения производительности и воспроизводимости.It is based on and 100% compatible with R, and includes additional capabilities for improved performance and reproducibility.

Дополнительные сведения о том, какие пакеты устанавливаются со Службами машинного обучения и как устанавливать другие пакеты, см. в следующих статьях:For more information on which packages are installed with Machine Learning Services and how to install other packages, see:

Как начать работу со Службами машинного обучения?How do I get started with Machine Learning Services?

  1. Установка служб машинного обучения SQL ServerInstall SQL Server Machine Learning Services

  2. Настройте средства разработки.Configure your development tools. Вы можете использовать:You can use:

  3. Написание первого скрипта Python или RWrite your first Python or R script

Следующие шагиNext steps