ai_predict_class funkcja

Dotyczy do:zaznaczyło tak, Databricks SQL zaznaczyło tak, Databricks Runtime 19.3 i nowsze.

Ważna

Ta funkcja jest dostępna w wersji beta. Administratorzy obszaru roboczego mogą kontrolować dostęp do tej funkcji ze strony Podglądy . Zobacz Zarządzanie wersjami zapoznawczami usługi Azure Databricks.

ai_predict_class()trenuje model klasyfikacji z wierszy, gdzie kolumna docelowa nie jest , NULL i przewiduje klasę dla wierszy, gdzie jest .NULL Funkcja zwraca tylko wiersze, które ocenia, i dodaje kolumny predykcji oraz ufności do kolumn wejściowych.

Wymagania

Syntax

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

Arguments

Przekażcie wszystkie argumenty skalarne według nazwy. Możesz przekazywać input się po imieniu lub stanowisku.

  • input to dane wejściowe o wartości tabelowej, które zawierają wiersze treningowe oraz wiersze do punktowania. Wiersze, w których nie jest NULL kolumną docelową, trenują model. Wiersze, w których znajduje NULL się kolumna docelowa, są punktowane.
  • target_col jest stałą STRING nazywającą kolumnę docelową. Celem musi być kolumna liczbowa najwyższej klasy, kolumna Booleowska lub łańcuchowa i nie może pojawiać się w .feature_cols
  • feature_cols jest stałą ARRAY<STRING> niepustą, która nadaje nazwy kolumnom cech. Każda cecha musi być kolumną liczbową najwyższego poziomu, Boolea'a lub ciągiem wierszy.
  • seed (opcjonalnie) to wartość całkowa, która inicjalizuje operacje pseudolosowe używane podczas trenowania modelu. Wartość domyślna to 0.

Zwroty

Funkcja zwraca tabelę zawierającą wiersze wejściowe, gdzie kolumna docelowa to NULL. Wynik zachowuje wszystkie kolumny wejściowe i dodaje następujące kolumny:

  • <target_col>_prediction: Przewidywana klasa, z tym samym typem danych co kolumna docelowa.
  • <target_col>_confidence: A DOUBLE pomiędzy 0 i 1 , która zawiera prawdopodobieństwo modelu dla przewidywanej klasy.

Jeśli żaden wiersz wejściowy nie ma celu NULL , funkcja zwraca pustą tabelę.

Example

Poniższy przykład trenuje na klientach z znanymi wynikami churn i przewiduje, czy klienci z brakującymi wynikami dojdzie do churn:

WITH customers AS (
  SELECT * FROM VALUES
    (1, 3, 'monthly', true),
    (2, 24, 'annual', false),
    (3, 5, 'monthly', true),
    (4, 30, 'annual', false),
    (5, 8, 'monthly', true),
    (6, 36, 'annual', false),
    (7, 6, 'monthly', NULL),
    (8, 28, 'annual', NULL)
  AS customers(customer_id, tenure_months, plan, churned)
)
SELECT customer_id, churned_prediction, churned_confidence
FROM ai_predict_class(
  input => TABLE(customers),
  target_col => 'churned',
  feature_cols => ARRAY('tenure_months', 'plan'),
  seed => 42
)
ORDER BY customer_id;

Ograniczenia

  • Każde wywołanie obsługuje jedną kolumnę docelową i trenuje nowy model. Funkcja ta nie zachowuje modelu do ponownego użycia.
  • Kolumny docelowe i cechy muszą być kolumnami najwyższego poziomu. Pola zagnieżdżone nie są podtrzymywane.
  • Wiersze treningowe muszą zawierać co najmniej dwie wyraźne, niedoceloweNULL wartości.
  • Wejście nie może już zawierać kolumn o nazwie <target_col>_prediction lub <target_col>_confidence.

Warunki błędu

W przypadku nieprawidłowych kolumn, typów lub argumentów zobacz AI_PREDICT_INVALID_PARAMETER warunek błędu. Dla niewystarczających danych treningowych zobacz AI_PREDICT_INSUFFICIENT_TRAINING_DATA warunek błędu.

Aby przewidzieć wartość liczbową, użyj ai_predict_value funkcji. Aby sklasyfikować tekst względem etykiet, które podajesz bez trenowania wierszy tabelarzacyjnych, użyj ai_classify funkcji. W przypadku innych funkcji AI zobacz Przekształcanie danych nieustrukturyzowanych za pomocą funkcji AI.