Поделиться через


Новые возможности служб машинного обучения SQL Server

Область применения: SQL Server 2016 (13.x) и более поздних версий

В этих статьях описываются новые возможности и функции, включенные в различные версии служб машинного обучения SQL Server. Возможности машинного обучения добавляются в SQL Server в каждом выпуске, так как мы продолжаем расширять и углублять интеграцию между платформой данных, расширенной аналитикой и обработкой и анализом данных.

Примечание.

Возможности компонентов и параметры установки зависят от версии SQL Server. Используйте селектор, чтобы выбрать соответствующую версию SQL Server.

Новые возможности в SQL Server 2022

Начиная с SQL Server 2022 (16.x), среды выполнения для R, Python и Java больше не устанавливаются с помощью программы установки SQL. Вместо этого желаемые пользовательские среды и пакеты R необходимо устанавливать самостоятельно. Дополнительные сведения см. в разделе Установка Служб машинного обучения SQL Server 2022 (Python и R) в Windows или Установка Служб машинного обучения SQL Server (Python и R) в Linux.

Новые возможности в SQL Server 2019

В этом выпуске добавляются наиболее востребованные возможности для операций машинного обучения Python и R в SQL Server. Дополнительные сведения обо всех возможностях этого выпуска см. в статьях Новые возможности SQL Server 2019 и Заметки о выпуске SQL Server 2019.

Документацию с описанием новых возможностей Java и C# в SQL Server 2019 см. в статье Новые возможности расширений языка SQL Server.

Ниже описаны новые возможности Служб машинного обучения SQL Server, доступные в Windows и Linux.

Новые возможности в SQL Server 2017

В этом выпуске добавляется поддержка Python и ведущие в отрасли алгоритмы машинного обучения. Переименованный в соответствии с новой областью, SQL Server 2017 вводит Службы машинного обучения SQL Server (в базе данных) с языковой поддержкой Python и R.

Объявления о возможностях см. в статье Новые возможности SQL Server 2017.

Усовершенствования R

Компонент R Служб машинного обучения SQL Server является следующим поколением служб SQL Server 2016 R Services с обновленными версиями базовых пакетов R, RevoScaler и других.

Новые возможности для R включают управление пакетами со следующими особенностями:

Библиотеки R

Пакет Description
MicrosoftML В этом выпуске MicrosoftML входит в установку R по умолчанию, поэтому не придется выполнять обновление, как в предыдущей версии SQL Server 2016 R Services. MicrosoftML предоставляет современные алгоритмы машинного обучения и преобразования данных, которые можно масштабировать или запускать в удаленных контекстах вычислений. Алгоритмы включают настраиваемые глубокие нейронные сети, быстрые деревья и леса принятия решений, линейную регрессию и логистическую регрессию.

Интеграция Python для аналитики в базе данных

Python — это язык, обеспечивающий превосходную гибкость и эффективность для выполнения различных задач машинного обучения. Библиотеки с открытым исходным кодом для Python включают несколько платформ для настраиваемых нейронных сетей, а также популярные библиотеки для обработки естественного языка.

Поскольку Python интегрирован с ядром СУБД, аналитику можно приблизить к самим данным, избежав затрат и рисков, связанных с их перемещением. Вы можете развертывать решения для машинного обучения на основе Python с помощью таких средств, как Visual Studio. Рабочие приложения могут получать прогнозы, модели или визуальные элементы из среды выполнения Python 3.5 с помощью методов доступа к данным SQL Server.

Интеграция T-SQL и Python поддерживается с помощью системной хранимой процедуры sp_execute_external_script. С помощью этой хранимой процедуры можно вызвать любой код Python. Код выполняется в безопасной двойной архитектуре, которая позволяет развертывать модели и сценарии Python корпоративного класса, вызываемые из приложения с помощью простой хранимой процедуры. Повышение производительности осуществляется с помощью потоковой передачи данных из SQL в процессы Python и параллелизации кольца MPI.

Вы можете использовать функцию T-SQL PREDICT, чтобы выполнить собственную оценку в предварительно обученной модели, которая ранее сохранялась в требуемом двоичном формате.

Библиотеки Python

Пакет Description
revoscalepy Эквивалент RevoScaleR в Python. Вы можете создавать модели Python для линейных и логистических регрессий, деревьев принятия решений, улучшенных деревьев и случайных лесов, которые подлежат параллелизации и могут выполняться в удаленных контекстах вычислений. Этот пакет поддерживает использование нескольких источников данных и удаленных контекстов вычислений. Специалист по анализу и обработке данных или разработчик может выполнять код Python на удаленном SQL Server, чтобы исследовать данные или создавать модели без перемещения данных.
microsoftml Эквивалент пакета MicrosoftML R в Python.

Предварительно обученная модель

Предварительно обученные модели доступны как для Python, так и для R. Используйте эти модели для распознавания изображений и анализа положительной и отрицательной тональности, чтобы создавать прогнозы на основе собственных данных.

Изолированный сервер как общий компонент в установке SQL Server

В этом выпуске также добавлен Сервер машинного обучения SQL Server (изолированный) — полностью независимый сервер обработки и анализа данных, поддерживающий статистический и прогнозирующий анализ в R и Python. Как и в случае со службами R, этот сервер является следующей версией SQL Server 2016 R Server (изолированный). С помощью изолированного сервера можно распространять и масштабировать решения R или Python без зависимостей от SQL Server.

Новые возможности SQL Server 2016

В этом выпуске появились возможности машинного обучения в SQL Server с помощью SQL Server 2016 R Services — модуля аналитики в базе данных для обработки скрипта R в данных, хранящихся в экземпляре ядра СУБД.

Кроме того, был выпущен SQL Server 2016 R Server (изолированный) как способ установки R Server на Windows Server. Изначально установка SQL Server предоставляла только один способ установки R Server для Windows. В более поздних выпусках разработчики и специалисты по обработке и анализу данных, которым требовался R Server в Windows, могли использовать другой изолированный установщик для достижения той же цели. Изолированный сервер в SQL Server функционально эквивалентен изолированному серверному продукту, Microsoft R Server для Windows.

Объявления о возможностях см. в статье Новые возможности SQL Server 2016.

Выпуск Обновление компонента
Добавление единиц емкости Оценка в реальном времени использует собственные библиотеки C++ для чтения модели, хранящейся в оптимизированном двоичном формате, а затем создает прогнозы без вызова среды выполнения R. Это значительно ускоряет операции оценки. С помощью оценки в реальном времени можно запустить хранимую процедуру или выполнить оценку в реальном времени в коде R. Оценка в режиме реального времени также доступна для SQL Server 2016, если экземпляр обновляется до последнего выпуска Microsoft R Server.
Первый выпуск Интеграция R для аналитики в базе данных.

Пакеты R для вызова функций R в T-SQL и наоборот. Функции RevoScaleR предоставляют аналитику R в масштабе путем разделения данных на части компонентов, координации и управления распределенной обработкой, а затем агрегирования результатов. В SQL Server 2016 R Services (в базе данных) подсистема RevoScaleR интегрирована с экземпляром ядра СУБД, объединяя данные и аналитику в одном контексте обработки.

Интеграция T-SQL и R с помощью sp_execute_external_script. С помощью этой хранимой процедуры можно вызвать любой код R. Эта безопасная инфраструктура позволяет развертывать модели и сценарии R корпоративного класса, вызываемые из приложения с помощью простой хранимой процедуры. Повышение производительности осуществляется с помощью потоковой передачи данных из SQL в процессы R и параллелизации кольца MPI.

Вы можете использовать функцию T-SQL PREDICT, чтобы выполнить собственную оценку в предварительно обученной модели, которая ранее сохранялась в требуемом двоичном формате.

Поддержка Linux

SQL Server 2019 добавляет поддержку Linux для R и Python при установке пакетов машинного обучения с помощью экземпляра ядра СУБД. Дополнительные сведения см. в статье Установка служб машинного обучения SQL Server на Linux.

В Linux SQL Server 2017 не имеет интеграции с R или Python, но вы можете использовать собственную оценку в Linux, так как эта функция доступна через T-SQL PREDICT в Linux. Собственная оценка обеспечивает высокий уровень производительности для предварительно обученной модели без вызова или даже необходимости среды выполнения R.

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