SQL Server Machine Learning Services (Python と R) とは

適用対象: はいSQL Server 2017 (14.x) 以降

Machine Learning Services は、リレーショナル データを使用して Python および R スクリプトを実行できるようになる SQL Server の機能です。 オープンソースのパッケージとフレームワーク、および予測分析と機械学習用の Microsoft Python および R パッケージを使用できます。 スクリプトは、SQL Server の外部またはネットワーク経由でデータを移動することなく、データベース内で実行されます。 この記事では、SQL Server Machine Learning Services の基本と開始方法について説明します。

注意

Machine Learning Services は、Azure SQL Managed Instance でもご利用いただけます。 他の SQL プラットフォームの機械学習については、SQL 機械学習のドキュメントを参照してください。

注意

Machine Learning Services は、Azure SQL Managed Instance でもご利用いただけます。 他の SQL プラットフォームの機械学習については、SQL 機械学習のドキュメントを参照してください。

SQL Server で Java を実行する方法については、Java 言語拡張のドキュメントを参照してください。

SQL Server で Python および R スクリプトを実行する

SQL Server Machine Learning Services では、データベース内で Python および R スクリプトを実行できます。 この機能を使用して、データの準備とクリーンアップ、特徴エンジニアリング、およびデータベース内での機械学習モデルのトレーニング、評価、およびデプロイを行うことができます。 この機能により、データが存在する場所でスクリプトが実行され、ネットワークを介して別のサーバーにデータが転送されなくなります。

ストアド プロシージャ sp_execute_external_script を使用して、SQL Server インスタンスで Python および R のスクリプトを実行できます。

Python と R のベース ディストリビューションは Machine Learning Services に含まれています。 Microsoft パッケージに加え、PyTorch、TensorFlow、scikit-learn などのオープンソースのパッケージとフレームワークをインストールして使用できます。

Machine Learning Services では、SQL Server での Python および R スクリプトの実行に拡張フレーム ワークを使用します。 このしくみについては以下を参照してください。

Machine Learning Services の概要

  1. Linuxまたは Windows に SQL Server Machine Learning Services をインストールする。 また、ビッグ データ クラスターで Machine Learning Services を使用したり、Azure SQL Managed Instance で Machine Learning Services を使用したりすることもできます。

  2. 開発ツールを構成します。 「Azure Data Studio のノートブックで Python スクリプトと R スクリプトを実行する」を使用できます。 Azure Data Studio で T-SQL を実行することもできます。

  3. 初めての Python または R スクリプトを作成する。

Python および R のバージョン

以下に、Machine Learning Services に含まれる Python および R のバージョンの一覧を示します。

SQL Server のバージョン 累積的な更新プログラム Python ランタイムのバージョン R ランタイムのバージョン
SQL Server 2019 RTM 以降 3.7.1 3.5.2
SQL Server 2017 CU22 以降 3.5.2 および 3.7.2 3.3.3 および 3.5.2
SQL Server 2017 RTM - CU21 3.5.2 3.3.3

SQL Server 2016 の R バージョンについては、「R Services とは」の「R バージョン」セクションを参照してください。

Python および R パッケージ

Microsoft のエンタープライズ パッケージに加えて、オープンソース パッケージとフレームワークを使用できます。 最も一般的なオープンソースの Python および R パッケージは、Machine Learning Services にプレインストールされています。 Microsoft の次の Python および R パッケージも含まれています。

Language Package 説明
Python revoscalepy スケーラブルな Python 用のプライマリ パッケージ。 データの変換と操作、統計の概要、視覚化、および多くの形式のモデリング。 さらに、このパッケージの関数により、並列処理に使用できるコア全体にワークロードが自動的に分散されます。
Python microsoftml テキスト分析、画像分析、感情分析のカスタム モデルを作成する機械学習アルゴリズムを追加します。
R RevoScaleR スケーラブルな R の主要パッケージ。データの変換と操作、統計の概要、視覚化、多くの形式のモデリング。 さらに、このパッケージの関数により、並列処理に使用できるコア全体にワークロードが自動的に分散されます。
R MicrosoftML (R) テキスト分析、画像分析、感情分析のカスタム モデルを作成する機械学習アルゴリズムを追加します。
R olapR SQL Server Analysis Services OLAP キューブに対する MDX クエリに使用される R 関数。
R sqlrutils T-SQL ストアド プロシージャで R スクリプトを使用し、そのストアド プロシージャをデータベースに登録し、R 開発環境からストアド プロシージャを実行するメカニズム。
R Microsoft R Open Microsoft R Open (MRO) は、Microsoft の R の拡張ディストリビューションです。 これは、統計分析とデータ サイエンスの機能が一式そろったオープンソース プラットフォームです。 R に基づき、100% の互換性があり、パフォーマンスと再現性を向上させる追加機能が含まれています。

Machine Learning Services と共にインストールされるパッケージと、他のパッケージをインストールする方法の詳細については、以下を参照してください。

次のステップ