Skip to content

Commit 86d13fb

Browse files
committed
Add DVC pipeline configuration and lock file
1 parent 1c1d431 commit 86d13fb

3 files changed

Lines changed: 295 additions & 0 deletions

File tree

.gitignore

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,16 @@ Observability.md
33
.venv/
44
uv.lock
55
.__pycache__
6+
7+
8+
# DVC managed artifacts
9+
artifacts/
10+
artifacts/data_ingestion/train_data/
11+
artifacts/data_ingestion/test_data/
12+
artifacts/data_transformation/
13+
artifacts/model_trainer/
14+
artifacts/model_evaluation/
15+
artifacts/feature_engineering/
16+
17+
# Log files
18+
logs/

dvc.lock

Lines changed: 205 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,205 @@
1+
schema: '2.0'
2+
stages:
3+
data_ingestion:
4+
cmd: python -m src.mlpipeline.pipeline.stage_01_data_ingestion
5+
deps:
6+
- path: config/config.yaml
7+
hash: md5
8+
md5: 8bbda01bed45e58a5e88f950af1f24ce
9+
size: 2932
10+
- path: src/mlpipeline/components/data_ingestion.py
11+
hash: md5
12+
md5: 233be097880e161b6ae43486b61b2c80
13+
size: 6535
14+
- path: src/mlpipeline/pipeline/stage_01_data_ingestion.py
15+
hash: md5
16+
md5: fd46f2bd5ab48290377589d3e316e541
17+
size: 1207
18+
outs:
19+
- path: artifacts/data_ingestion/test_data/test.csv
20+
hash: md5
21+
md5: fdcf4fde7c9a331036882c7b828bc0fb
22+
size: 217022
23+
- path: artifacts/data_ingestion/train_data/train.csv
24+
hash: md5
25+
md5: 07fd5beaa2c2ef3c5e208e6cd73f1340
26+
size: 885577
27+
data_validation:
28+
cmd: python -m src.mlpipeline.pipeline.stage_02_data_validation
29+
deps:
30+
- path: artifacts/data_ingestion/test_data/test.csv
31+
hash: md5
32+
md5: fdcf4fde7c9a331036882c7b828bc0fb
33+
size: 217022
34+
- path: artifacts/data_ingestion/train_data/train.csv
35+
hash: md5
36+
md5: 07fd5beaa2c2ef3c5e208e6cd73f1340
37+
size: 885577
38+
- path: config/schema.yaml
39+
hash: md5
40+
md5: 8f4381a0731039dec0dfc07cd6a098dc
41+
size: 339
42+
- path: src/mlpipeline/components/data_validation.py
43+
hash: md5
44+
md5: c4a16f0f9b3252f3371796516003f8b4
45+
size: 10356
46+
- path: src/mlpipeline/pipeline/stage_02_data_validation.py
47+
hash: md5
48+
md5: ee8af675a8d74c90c2d0276acafd3a56
49+
size: 870
50+
outs:
51+
- path: artifacts/data_validation/data_quality_report.json
52+
hash: md5
53+
md5: 588f8dc62592c52967be285c85eb6945
54+
size: 4344
55+
- path: artifacts/data_validation/drift_report.html
56+
hash: md5
57+
md5: 935ac9943d6d00760263e0336b3c45ed
58+
size: 1819
59+
- path: artifacts/data_validation/validation_status.txt
60+
hash: md5
61+
md5: ba5d5451c2acabacd9c5dfc6822a2ef0
62+
size: 245
63+
feature_engineering:
64+
cmd: python -m src.mlpipeline.pipeline.stage_03_feature_engineering
65+
deps:
66+
- path: artifacts/data_ingestion/test_data/test.csv
67+
hash: md5
68+
md5: fdcf4fde7c9a331036882c7b828bc0fb
69+
size: 217022
70+
- path: artifacts/data_ingestion/train_data/train.csv
71+
hash: md5
72+
md5: 07fd5beaa2c2ef3c5e208e6cd73f1340
73+
size: 885577
74+
- path: artifacts/data_validation/validation_status.txt
75+
hash: md5
76+
md5: ba5d5451c2acabacd9c5dfc6822a2ef0
77+
size: 245
78+
- path: config/feature_config.yaml
79+
hash: md5
80+
md5: a82b33c7c2506a6659bc36748cb599b8
81+
size: 625
82+
- path: src/mlpipeline/components/feature_engineering.py
83+
hash: md5
84+
md5: ea21f657a944cdcdd4255e4e78061643
85+
size: 8569
86+
- path: src/mlpipeline/pipeline/stage_03_feature_engineering.py
87+
hash: md5
88+
md5: 03726fff209cdd590002f6bc23a01a75
89+
size: 1293
90+
outs:
91+
- path:
92+
artifacts/feature_engineering/correlation_analysis/correlation_matrix.csv
93+
hash: md5
94+
md5: d3d759b30531e3f78856b0b107242ac6
95+
size: 1003
96+
- path: artifacts/feature_engineering/engineered_features/test_featured.csv
97+
hash: md5
98+
md5: 64a0cf36828f59487d4e10966e94bd0b
99+
size: 432215
100+
- path: artifacts/feature_engineering/engineered_features/train_featured.csv
101+
hash: md5
102+
md5: 26e10446225e164cebbd5a303a260a3e
103+
size: 1748907
104+
- path:
105+
artifacts/feature_engineering/feature_importance/feature_importance.csv
106+
hash: md5
107+
md5: 8f20cc0fa43ab5bda3a8d9dbd31f62fc
108+
size: 1551
109+
- path:
110+
artifacts/feature_engineering/feature_selection_results/selection_report.json
111+
hash: md5
112+
md5: 9ec7ddb660cd7b584c4eff8be532fe25
113+
size: 399
114+
data_transformation:
115+
cmd: python -m src.mlpipeline.pipeline.stage_04_data_transformation
116+
deps:
117+
- path: artifacts/feature_engineering/engineered_features/test_featured.csv
118+
hash: md5
119+
md5: 64a0cf36828f59487d4e10966e94bd0b
120+
size: 432215
121+
- path: artifacts/feature_engineering/engineered_features/train_featured.csv
122+
hash: md5
123+
md5: 26e10446225e164cebbd5a303a260a3e
124+
size: 1748907
125+
- path: config/config.yaml
126+
hash: md5
127+
md5: 8bbda01bed45e58a5e88f950af1f24ce
128+
size: 2932
129+
- path: src/mlpipeline/components/data_transformation.py
130+
hash: md5
131+
md5: f7938cd4b5cab172edb17737d691c5b2
132+
size: 4602
133+
- path: src/mlpipeline/pipeline/stage_04_data_transformation.py
134+
hash: md5
135+
md5: a44079dbfcecaa9cadaaa1b3bbd035be
136+
size: 922
137+
outs:
138+
- path: artifacts/data_transformation/preprocessor.pkl
139+
hash: md5
140+
md5: def0679cb15ed97c4cd7d1e258a3c2d9
141+
size: 2486
142+
- path: artifacts/data_transformation/test.csv
143+
hash: md5
144+
md5: 0b7e8bccf9e068c1dc8b574c2d19f996
145+
size: 602989
146+
- path: artifacts/data_transformation/train.csv
147+
hash: md5
148+
md5: b5e7a28e5c6dc9e11803316949f37d6f
149+
size: 2411251
150+
model_trainer:
151+
cmd: python -m src.mlpipeline.pipeline.stage_05_model_trainer
152+
deps:
153+
- path: artifacts/data_transformation/test.csv
154+
hash: md5
155+
md5: 0b7e8bccf9e068c1dc8b574c2d19f996
156+
size: 602989
157+
- path: artifacts/data_transformation/train.csv
158+
hash: md5
159+
md5: b5e7a28e5c6dc9e11803316949f37d6f
160+
size: 2411251
161+
- path: config/params.yaml
162+
hash: md5
163+
md5: a1513bcc7d4d5c6d46279a0e0a56228f
164+
size: 678
165+
- path: src/mlpipeline/components/model_trainer.py
166+
hash: md5
167+
md5: e790a7f63650530a0cc947641d10ec49
168+
size: 7107
169+
- path: src/mlpipeline/pipeline/stage_05_model_trainer.py
170+
hash: md5
171+
md5: 143d5c5b84afa538aeb452199156314e
172+
size: 833
173+
outs:
174+
- path: artifacts/model_trainer/model.pkl
175+
hash: md5
176+
md5: d5b2cea1f51faa76e770a35e323fef10
177+
size: 277624
178+
model_evaluation:
179+
cmd: python -m src.mlpipeline.pipeline.stage_06_model_evaluation
180+
deps:
181+
- path: artifacts/data_transformation/test.csv
182+
hash: md5
183+
md5: 0b7e8bccf9e068c1dc8b574c2d19f996
184+
size: 602989
185+
- path: artifacts/model_trainer/model.pkl
186+
hash: md5
187+
md5: d5b2cea1f51faa76e770a35e323fef10
188+
size: 277624
189+
- path: config/params.yaml
190+
hash: md5
191+
md5: a1513bcc7d4d5c6d46279a0e0a56228f
192+
size: 678
193+
- path: src/mlpipeline/components/model_evaluation.py
194+
hash: md5
195+
md5: 98da074b30f7c7cf2bba021a1ca5a574
196+
size: 2824
197+
- path: src/mlpipeline/pipeline/stage_06_model_evaluation.py
198+
hash: md5
199+
md5: 2709008a39d751c547523e2a04dcbb8c
200+
size: 876
201+
outs:
202+
- path: artifacts/model_evaluation/metrics.json
203+
hash: md5
204+
md5: 0d7dd5f0e729bd0441ada52638c4acdc
205+
size: 152

dvc.yaml

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
stages:
2+
data_ingestion:
3+
cmd: python -m src.mlpipeline.pipeline.stage_01_data_ingestion
4+
deps:
5+
- src/mlpipeline/components/data_ingestion.py
6+
- src/mlpipeline/pipeline/stage_01_data_ingestion.py
7+
- config/config.yaml
8+
outs:
9+
- artifacts/data_ingestion/train_data/train.csv
10+
- artifacts/data_ingestion/test_data/test.csv
11+
12+
data_validation:
13+
cmd: python -m src.mlpipeline.pipeline.stage_02_data_validation
14+
deps:
15+
- src/mlpipeline/components/data_validation.py
16+
- src/mlpipeline/pipeline/stage_02_data_validation.py
17+
- artifacts/data_ingestion/train_data/train.csv
18+
- artifacts/data_ingestion/test_data/test.csv
19+
- config/schema.yaml
20+
outs:
21+
- artifacts/data_validation/validation_status.txt
22+
- artifacts/data_validation/data_quality_report.json
23+
- artifacts/data_validation/drift_report.html
24+
25+
feature_engineering:
26+
cmd: python -m src.mlpipeline.pipeline.stage_03_feature_engineering
27+
deps:
28+
- src/mlpipeline/components/feature_engineering.py
29+
- src/mlpipeline/pipeline/stage_03_feature_engineering.py
30+
- artifacts/data_ingestion/train_data/train.csv
31+
- artifacts/data_ingestion/test_data/test.csv
32+
- artifacts/data_validation/validation_status.txt
33+
- config/feature_config.yaml
34+
outs:
35+
- artifacts/feature_engineering/engineered_features/train_featured.csv
36+
- artifacts/feature_engineering/engineered_features/test_featured.csv
37+
- artifacts/feature_engineering/feature_importance/feature_importance.csv
38+
- artifacts/feature_engineering/correlation_analysis/correlation_matrix.csv
39+
- artifacts/feature_engineering/feature_selection_results/selection_report.json
40+
41+
data_transformation:
42+
cmd: python -m src.mlpipeline.pipeline.stage_04_data_transformation
43+
deps:
44+
- src/mlpipeline/components/data_transformation.py
45+
- src/mlpipeline/pipeline/stage_04_data_transformation.py
46+
- artifacts/feature_engineering/engineered_features/train_featured.csv
47+
- artifacts/feature_engineering/engineered_features/test_featured.csv
48+
- config/config.yaml
49+
outs:
50+
- artifacts/data_transformation/train.csv
51+
- artifacts/data_transformation/test.csv
52+
- artifacts/data_transformation/preprocessor.pkl
53+
54+
model_trainer:
55+
cmd: python -m src.mlpipeline.pipeline.stage_05_model_trainer
56+
deps:
57+
- src/mlpipeline/components/model_trainer.py
58+
- src/mlpipeline/pipeline/stage_05_model_trainer.py
59+
- artifacts/data_transformation/train.csv
60+
- artifacts/data_transformation/test.csv
61+
- config/params.yaml
62+
outs:
63+
- artifacts/model_trainer/model.pkl
64+
65+
model_evaluation:
66+
cmd: python -m src.mlpipeline.pipeline.stage_06_model_evaluation
67+
deps:
68+
- src/mlpipeline/components/model_evaluation.py
69+
- src/mlpipeline/pipeline/stage_06_model_evaluation.py
70+
- artifacts/model_trainer/model.pkl
71+
- artifacts/data_transformation/test.csv
72+
- config/params.yaml
73+
outs:
74+
- artifacts/model_evaluation/metrics.json
75+
76+
metrics:
77+
- artifacts/model_evaluation/metrics.json

0 commit comments

Comments
 (0)