ai_predict_value 函數

適用於:勾選標記為是 Databricks SQL 勾選為 Databricks 執行時間 19.3 及以上版本

Important

這項功能位於 測試版 (Beta) 中。 工作區管理員可以從 「預覽 」頁面控制對此功能的存取。 請參閱 管理 Azure Databricks 預覽。

ai_predict_value() 從目標欄位不 NULL 在的列訓練迴歸模型,並預測目標欄位所在列的目標 NULL。 該函式僅回傳其評分的列,並在輸入欄位後附加預測欄位。

要求

  • 一個 Pro 或 Serverless SQL 倉庫,或是運行 Databricks Runtime 19.3 或以上版本的叢集
  • 請在預測 AI 功能 預覽中註冊您的工作空間。 請參閱 管理 Azure Databricks 預覽。

語法

ai_predict_value(
  input => TABLE(input),
  target_col => target_col,
  feature_cols => feature_cols
  [, seed => seed]
)

Arguments

將所有標量參數都以名稱傳遞。 你可以用名字或位置通過 input 。

  • input 是包含訓練列與評分列的表格值輸入。 目標欄位不在的列則無法 NULL 訓練模型。 目標欄位 NULL 所在的列會被評分。
  • target_col 是一個常數 STRING ,用來命名數值目標欄位。 該欄位必須是頂層欄位,且不得出現在 feature_cols。
  • feature_cols 是一個非空常數 ARRAY<STRING> ,將特徵欄位命名為。 每個特徵必須是頂層的數字、布林或字串欄位。
  • seed (可選)是一個整數值,用於初始化模型訓練期間使用的偽隨機運算。 預設值為 0。

Returns

該函式回傳一個包含輸入列的表格,目標欄位為 NULL。 輸出保留所有輸入欄位,並以 <target_col>_predictionDOUBLE.

若無輸入列有 NULL 目標,函式回傳一個空資料表。

範例

以下範例針對已知營收的行進行訓練,並預測缺少營收的門市營收:

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;

Limitations

  • 每個呼叫支援一個目標欄位,並訓練一個新的模型。 該函式不會持久化模型以便重複使用。
  • 目標欄和特徵欄必須是頂層欄。 巢狀欄位不被支援。
  • 輸入必須包含至少一列非NULL 目標。
  • 輸入中不得已包含名為 <target_col>_prediction的欄位。

錯誤條件

關於無效的欄位、類型或參數,請參見 錯誤條件AI_PREDICT_INVALID_PARAMETER。 關於訓練資料不足,請參見 AI_PREDICT_INSUFFICIENT_TRAINING_DATA錯誤條件。

要預測類別標籤,請使用 ai_predict_class function。 關於其他 AI 函式,請參見 使用 AI 函數轉換非結構化資料。