Airflow ile Ölçeklenebilir Makine Öğrenmesi İşlem Hatları
DAG tabanlı iş akışları, görev bağımlılıkları, veri alımı → eğitim → değerlendirme → dağıtım.
Airflow ile Ölçeklenebilir Makine Öğrenmesi İşlem Hatları, CoddyKit'te ücretsiz bir Learn AI with Python dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Learn AI with Python öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Learn AI with Python kursu toplamda 4 dersten oluşur.
İş Akışı Yönetimi Neden Gerekli
Bir makine öğrenimi iş akışının birçok adımı vardır: verileri alma, özellikleri oluşturma, eğitim, değerlendirme ve deploy. Bunları elle çalıştırmak kırılgandır. Apache Airflow, zamanlama, yeniden denemeler, bağımlılıklar ve izleme yerleşik olarak bunları kod biçiminde düzenler.
DAG
Airflow, bir işlem hattını görevlerden oluşan bir DAG (Yönlü Döngüsüz Çizge) olarak modeller. Döngüsüz olması, hiçbir görevin bir döngü içinde kendisine bağlı olamayacağı anlamına gelir; böylece çalıştırma, başlangıçtan sona kadar her zaman iyi tanımlanmış bir sıraya sahip olur.
DAG Tanımlama
Bir DAG'ı bir kimlik, bir zamanlama ve bir başlangıç tarihiyle tanımlarsınız. Zamanlama, DAG'ın ne sıklıkta çalışacağını belirler; örneğin günlük yeniden eğitim.
from airflow import DAG
import datetime
with DAG(
dag_id="ml_pipeline",
schedule="@daily",
start_date=datetime.datetime(2024, 1, 1),
catchup=False,
) as dag:
...İşleçler Görevdir
DAG'daki her düğüm, bir işleçten oluşturulan bir görevdir. Farklı işleçler farklı türde işleri çalıştırır: Python işlevleri, Bash komutları, SQL sorguları ve daha fazlası.
Eğitim için PythonOperator
PythonOperator, çağrılabilir bir Python nesnesini çalıştırır. Eğitim işlevinizi çağıran bir eğitim adımı için idealdir.
from airflow.operators.python import PythonOperator
def train_model():
# load features, fit model, save artifact
...
train = PythonOperator(
task_id="train",
python_callable=train_model,
)Değerlendirme için BashOperator
BashOperator, bir kabuk komutunu çalıştırır; bir değerlendirme betiğini veya CLI aracını çağırmak için kullanışlıdır.
from airflow.operators.bash import BashOperator
evaluate = BashOperator(
task_id="evaluate",
bash_command="python /opt/ml/evaluate.py --model latest",
)Bağımlılıkları Tanımlama
>> işleci görev sırasını belirler: a >> b, b'nin a başarıyla tamamlandıktan sonra çalışacağı anlamına gelir. Bu, DAG'ı birbirine bağlar; böylece değerlendirme yalnızca eğitim tamamlandıktan sonra başlar.
train >> evaluate
# train must succeed before evaluate runsDaha Uzun Bağımlılık Zincirleri
İşlem hattının tamamındaki sırayı ifade etmek için birçok görevi zincirleyebilirsiniz. Airflow, bağımsız dalları paralel çalıştırır ve tanımladığınız her bağımlılığa uyar.
ingest >> features >> train >> evaluate >> deployXCom ile Veri Aktarma
Görevler birbirinden yalıtılmış çalışır; peki biri sonucunu sonrakine nasıl aktarır? XCom (görevler arası iletişim), bir görevin küçük bir değeri (model yolu veya metrik gibi) göndermesine ve sonraki görevin bunu almasına olanak tanır.
def train_model(ti):
path = "/models/run_42.pt"
ti.xcom_push(key="model_path", value=path)
def deploy(ti):
path = ti.xcom_pull(key="model_path", task_ids="train")
# deploy the artifact at pathXCom Küçük Veriler İçindir
XCom, büyük veri kümeleri için değil, küçük üst veriler (yollar, kimlikler, metrikler) için tasarlanmıştır. Büyük yapıtlar nesne depolamada (S3) tutulmalı ve yalnızca konumları XCom üzerinden aktarılmalıdır. Büyük veri yüklerini XCom ile gereğinden fazla taşımak, üst veri veritabanını zorlar.
Zamanlama ve Yeniden Denemeler
Airflow, üretim ortamı için sağlamlığı ek bir çaba gerektirmeden sağlar: zamanlama çalıştırmaları otomatik olarak tetikler, başarısız görevler artan bekleme süreleriyle yeniden denenir ve kullanıcı arayüzü her görevin ve çalıştırmanın durumunu gösterir; başarısızlık durumunda uyarı verir.
Hızlı Kontrol
Airflow bilginizi sınayın.
Özet
Airflow ile ölçeklenebilir makine öğrenimi işlem hatlarını öğrendiniz:
- DAG ve zamanlama, işlem hattını tanımlar
- PythonOperator eğitimi, BashOperator değerlendirmeyi çalıştırır
>>işleci görev bağımlılıklarını belirler- XCom görevler arasında küçük yapıtları aktarır; büyük veriler nesne depolamaya gider
Sıkça Sorulan Sorular
“Airflow ile Ölçeklenebilir Makine Öğrenmesi İşlem Hatları” dersi ücretsiz mi?
Evet — “Airflow ile Ölçeklenebilir Makine Öğrenmesi İşlem Hatları” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Learn AI with Python kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Learn AI with Python kursu toplamda 4 dersten oluşur.
“Airflow ile Ölçeklenebilir Makine Öğrenmesi İşlem Hatları” dersinde ne öğreneceğim?
DAG tabanlı iş akışları, görev bağımlılıkları, veri alımı → eğitim → değerlendirme → dağıtım. Learn AI with Python ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Learn AI with Python öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Learn AI with Python, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.
“Airflow ile Ölçeklenebilir Makine Öğrenmesi İşlem Hatları” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Learn AI with Python dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Learn AI with Python dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Yapay Zeka Sistemi Mimari Kalıpları
- Airflow ile Ölçeklenebilir Makine Öğrenmesi İşlem Hatları
- Özellik Depoları: Feast ve Tecton
- Yapay Zeka Sistemi Gözlemlenebilirliği ve İzleme