Machine Learning için CI/CD
Ravi Bhadauria
Machine Learning Engineer

ML iş akışı ve bağımlılıklarını tanımlayan aşama dizisi
dvc.yaml dosyasında tanımlıdır
deps)cmd)outs)metrics ve plotsGitHub Actions iş akışına benzer
dvc stage add ile aşamalar oluşturundvc stage add \
-n preprocess \
-d raw_data.csv -d preprocess.py \
-o processed_data.csv \
python preprocess.py
dvc.yaml içeriğistages:
preprocess:
cmd: python preprocess.py
deps:
- preprocess.py
- raw_data.csv
outs:
- processed_data.csv
dvc stage add \
-n train \
-d train.py -d processed_data.csv \
-o plots.png -o metrics.txt \
python train.py
stages: preprocess: cmd: python preprocess.py deps: - preprocess.py - raw_data.csv outs: - processed_data.csvtrain: cmd: python train.py deps: - processed_data.csv - train.py outs: - plots.png
dvc repro ile yeniden üretin-> dvc repro Aşama 'preprocess' çalıştırılıyor: > python preprocess.pyAşama 'train' çalıştırılıyor: > python train.py Kilit dosyası 'dvc.lock' güncelleniyor
dvc.lock adlı bir durum dosyası oluşturulur.dvc dosyasına benzer, MD5 karmalarını kaydedergit add dvc.lock && git commit -m "first pipeline repro"`-> dvc repro
Aşama 'preprocess' değişmedi, atlanıyor
' train' aşaması şu komutla çalıştırılıyor: ...
-> dvc dag
+------------+
| preprocess |
+------------+
*
*
*
+-------+
| train |
+-------+
dvc.yaml ve dvc.lock ile yeniden üretilebilirlikdvc stage add ile boru hattı oluşturundvc repro ile yeniden üretin/çalıştırındvc dag ile görselleştirinMachine Learning için CI/CD