適用対象:
Databricks SQL
ランタイム 19.3 以上
Important
この機能は ベータ版です。 使用するには、ワークスペース管理者がプレビューページから予測AI機能をオンにする必要があります。 Manage Azure Databricks プレビューを参照してください。
ai_predict_value() ターゲット列が NULL でない行から回帰モデルを訓練し、 NULL行の目標を予測します。 関数は得点した行のみを返し、入力列に予測列を付加します。
必要条件
- ProまたはServerless SQLウェアハウス、またはDatabricks Runtime 19.3以上を動かすクラスター
- Predictive AI Functionsプレビューでワークスペースを登録してください。 Manage Azure Databricks プレビューを参照してください。
Syntax
ai_predict_value(
input => TABLE(input),
target_col => target_col,
feature_cols => feature_cols
[, seed => seed]
)
論争
すべてのスカラー引数を名前で渡します。 名前や役職で input をパスできます。
-
inputはトレーニング行とスコアリング行を含むテーブル値入力です。 ターゲット列が入っていない行はモデルを訓練NULL。 ターゲット列がNULLにある行はスコアリングされます。 -
target_colは数値のターゲット列を命名する定数STRINGです。 列は最上層の列でなければならず、feature_colsに表示されてはなりません。 -
feature_colsは特徴列に名前を付ける空でない定数ARRAY<STRING>です。 各特徴は最上位の数値、ブール値、または文字列列でなければなりません。 -
seed(オプション)は、モデルトレーニング中に用いられる擬似乱数操作を初期化する積分値です。 既定値は0です。
返品
関数は、ターゲット列が NULLされる入力行を含むテーブルを返します。 出力はすべての入力列を保持し、 <target_col>_prediction を DOUBLEとして付加します。
入力行に NULL ターゲットがない場合、関数は空のテーブルを返します。
Example
以下の例は、既知の収益がある列で訓練を行い、収益が欠落している店舗の収益を予測しています。
WITH sales AS (
SELECT * FROM VALUES
(1, 10.0, 'east', 120.0),
(2, 12.0, 'east', 135.0),
(3, 15.0, 'west', 160.0),
(4, 18.0, 'west', 190.0),
(5, 20.0, 'east', 205.0),
(6, 24.0, 'west', 240.0),
(7, 16.0, 'east', NULL),
(8, 22.0, 'west', NULL)
AS sales(store_id, advertising_spend, region, revenue)
)
SELECT store_id, revenue_prediction
FROM ai_predict_value(
input => TABLE(sales),
target_col => 'revenue',
feature_cols => ARRAY('advertising_spend', 'region'),
seed => 42
)
ORDER BY store_id;
制限事項
- 各呼び出しは1つのターゲットカラムをサポートし、新しいモデルを訓練します。 この関数はモデルを永続化して再利用しません。
- ターゲットおよびフィーチャーカラムは最上位カラムでなければなりません。 ネストフィールドはサポートされていません。
- 入力には少なくとも1行の非
NULLターゲットが含まれていなければなりません。 - 入力にはすでに「
<target_col>_prediction」という列が含まれてはなりません。
エラー条件
無効な列、型、引数については、 エラー条件AI_PREDICT_INVALID_PARAMETER参照してください。 不十分な訓練データについては、 誤AI_PREDICT_INSUFFICIENT_TRAINING_DATA条件を参照してください。
関連する関数
クラスラベルを予測するには、関数ai_predict_classを使用します。 その他のAI機能については、「 AI関数を使った非構造化データの変換」を参照してください。