Modeli verinin yanına götürmek
Bazı platformlar makine öğrenmesi modellerini yalnızca SQL ile eğitip kullanmana izin verir. Veriyi dışarı aktarmadan, analistin bildiği dille tahmin yapılabilir.
BigQuery ML: müşteri kaybı tahmini
-- 1) Eğit
CREATE OR REPLACE MODEL anadolu.churn_model
OPTIONS (model_type = 'logistic_reg', input_label_cols = ['kayip']) AS
SELECT segment, siparis_sayisi, ort_sepet, gun_once, kayip
FROM anadolu.musteri_ozellikleri;
-- 2) Değerlendir
SELECT * FROM ML.EVALUATE(MODEL anadolu.churn_model);
-- 3) Tahmin et
SELECT customer_id, predicted_kayip, predicted_kayip_probs
FROM ML.PREDICT(MODEL anadolu.churn_model,
(SELECT * FROM anadolu.musteri_ozellikleri));
Desteklenen model türleri arasında doğrusal/lojistik regresyon, k-ortalamalar kümeleme, zaman serisi tahmini (ARIMA_PLUS) ve ağaç tabanlı modeller vardır.
SQL içinden büyük dil modeli
-- BigQuery: müşteri yorumlarını tek satırlık Türkçe özetle
SELECT yorum_id,
ml_generate_text_llm_result AS ozet
FROM ML.GENERATE_TEXT(
MODEL anadolu.gemini_model,
(SELECT yorum_id, CONCAT('Bu yorumu tek cümlede özetle: ', yorum) AS prompt FROM anadolu.yorumlar),
STRUCT(TRUE AS flatten_json_output));
| Platform | SQL'den YZ |
|---|---|
| BigQuery | BigQuery ML (CREATE MODEL, ML.PREDICT, ML.GENERATE_TEXT) |
| Snowflake | Cortex fonksiyonları (ör. SNOWFLAKE.CORTEX.COMPLETE, SENTIMENT) |
| Databricks SQL | ai_query() ve hazır ai_* fonksiyonları |
| SQL Server 2025 | Dış modellerle AI_GENERATE_EMBEDDINGS; Machine Learning Services ile R/Python |
| PostgreSQL | pgvector, pgai gibi eklentiler |
SQL'in asıl işi: özellik tablosu
Model hangi platformda eğitilirse eğitilsin, verinin hazırlanması (her müşteri için bir satır, sızıntısız özellikler) SQL ile yapılır. Aşağıdaki alıştırma, yukarıdaki modelin besleneceği tabloyu üretiyor.