次の方法で共有


sp_rxPredict

適用対象: SQL Server 2016 (13.x) 以降 - Windows のみ

SQL Server データベースのバイナリ形式で格納された機械学習モデルで構成される、特定の入力の予測値を生成します。

R と Python の機械学習モデルのスコアリングをほぼリアルタイムで提供します。 sp_rxPredict は、 のラッパーとして提供されるストアド プロシージャです。

モデルは R または Python を使用して作成する必要がありますが、ターゲット データベース エンジン インスタンスでシリアル化してバイナリ形式で格納すると、R または Python の統合がインストールされていない場合でも、そのデータベース エンジン インスタンスから使用できます。 詳細については、「 sp_rxPredictを使用したリアルタイム スコアリング」を参照してください。

構文

sp_rxPredict  ( @model, @input )

引数

model

サポートされている形式の事前トレーニング済みモデル。

input

有効な SQL クエリ

戻り値

スコア列と、入力データ ソースからのパススルー列が返されます。 アルゴリズムでそのような値の生成がサポートされている場合は、信頼区間などの追加のスコア列を返すことができます。

注釈

ストアド プロシージャの使用を有効にするには、インスタンスで SQLCLR を有効にする必要があります。

注意

このオプションを有効にすることには、セキュリティ上の影響があります。 サーバーで SQLCLR を有効にできない場合は、 Transact-SQL PREDICT 関数などの別の実装を使用します。

ユーザーにはデータベースに対するアクセス許可が必要 EXECUTE です。

サポートされているアルゴリズム

モデルを作成してトレーニングするには、SQL Server Machine Learning Services (R または Python)、SQL Server2016 R Services、SQL Server Machine Learning Server(スタンドアロン) (R または Python)、または SQL Server で提供される R または Python でサポートされているアルゴリズムのいずれかを使用します。 2016 R Server (スタンドアロン)

R: RevoScaleR モデル

* でマークされたモデルでは、 関数を使用 PREDICT したネイティブ スコアリングもサポートされます。

R: MicrosoftML モデル

R: MicrosoftML によって提供される変換

Python: revoscalepy モデル

* でマークされたモデルでは、 関数を使用 PREDICT したネイティブ スコアリングもサポートされます。

Python: microsoftml モデル

Python: microsoftml によって提供される変換

サポートされていないモデルの種類

次のモデルの種類はサポートされていません。

  • RevoScaleR で rxGlm または rxNaiveBayes アルゴリズムを使用するモデル。
  • R の PMML モデル。
  • 他のサード パーティ製ライブラリを使用して作成されたモデル。
  • 変換関数または変換を含む数式を使用するモデル (A ~ log(B など) は、リアルタイム スコアリングではサポートされていません。 この種類のモデルを使用するには、データをリアルタイム スコアリングに渡す前に、入力データに対して変換を実行することをお勧めします。

リアルタイム スコアリングではインタープリターが使用されないため、インタープリターを必要とする可能性のある機能は、スコアリング 手順ではサポートされません。

DECLARE @model = SELECT @model 
FROM model_table 
WHERE model_name = 'rxLogit trained';

EXEC sp_rxPredict @model = @model,
@inputData = N'SELECT * FROM data';

有効な SQL クエリであることに加えて、 @inputData の入力データには、格納されているモデルの列と互換性のある列を含める必要があります。

sp_rxPredict では、double、float、short、ushort、long、ulong、string の .NET 列型のみがサポートされています。 リアルタイム スコアリングに使用する前に、入力データでサポートされていない型を除外することが必要な場合があります。

対応する SQL 型の詳細については、「SQL と CLR 型のマッピング」または「CLR パラメーター データのマッピング」を参照してください。