ai_predict_value Fonction

S’applique à :coché oui Databricks SQL coché oui Databricks Runtime 19.3 et supérieur

Important

Cette fonctionnalité est en version bêta. Pour l’utiliser, un administrateur d’espace de travail doit activer les fonctions d’IA prédictives depuis la page des aperçus . Consultez Gérer les préversions d’Azure Databricks.

ai_predict_value() entraîne un modèle de régression à partir de lignes où la colonne cible n’est pas NULL et prédit la cible pour les lignes où elle est NULL. La fonction ne renvoie que les lignes qu’elle marque et ajoute une colonne de prédiction aux colonnes d’entrée.

Exigences

  • Un entrepôt SQL Pro ou Serverless, ou un cluster exécutant Databricks Runtime 19.3 ou supérieur
  • Inscrivez votre espace de travail dans l’aperçu des fonctions d’IA prédictives . Consultez Gérer les préversions d’Azure Databricks.

Syntax

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

Arguments

Faites passer tous les arguments scalaires par nom. Vous pouvez passer input par votre nom ou votre position.

  • input est l’entrée à valeurs de table qui contient les lignes d’entraînement et les lignes à noter. Les lignes où se trouve la colonne cible ne s’entraînent NULL pas sur le modèle. Les lignes où se trouve NULL la colonne cible sont notées.
  • target_col est une constante STRING qui nomme la colonne cible numérique. La colonne doit être une colonne de niveau supérieur et ne doit pas apparaître dans feature_cols.
  • feature_cols est une constante ARRAY<STRING> non vide qui nomme les colonnes de caractéristiques. Chaque caractéristique doit être une colonne numérique de premier niveau, booléenne ou de chaîne.
  • seed (optionnel) est une valeur intégrale qui initialise les opérations pseudo-aléatoires utilisées lors de l’entraînement du modèle. La valeur par défaut est 0.

Returns

La fonction renvoie un tableau contenant les lignes d’entrée où la colonne cible est NULL. La sortie conserve toutes les colonnes d’entrée et ajoute <target_col>_prediction en tant que .DOUBLE

Si aucune ligne d’entrée n’a de NULL cible, la fonction retourne une table vide.

Exemple

L’exemple suivant s’entraîne sur des rangées avec des revenus connus et prévoit les revenus pour les magasins où ils manquent :

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

  • Chaque invocation supporte une colonne cible et entraîne un nouveau modèle. La fonction ne fait pas persister le modèle pour la réutilisation.
  • Les colonnes cible et caractéristique doivent être des colonnes de niveau supérieur. Les champs imbriqués ne sont pas supportés.
  • L’entrée doit contenir au moins une ligne avec une non-cibleNULL .
  • L’entrée ne doit pas déjà contenir une colonne nommée <target_col>_prediction.

Conditions de l’erreur

Pour les colonnes, types ou arguments invalides, voir AI_PREDICT_INVALID_PARAMETER condition d’erreur. Pour des données d’entraînement insuffisantes, voir AI_PREDICT_INSUFFICIENT_TRAINING_DATA condition d’erreur.

Pour prédire une étiquette de classe, utilisez ai_predict_class la fonction. Pour d’autres fonctions d’IA, voir Transformer les données non structurées à l’aide des fonctions IA.