Skip to content

Commit

Permalink
changed acc to tutorial
Browse files Browse the repository at this point in the history
  • Loading branch information
Muhammad Usman committed Jun 13, 2022
1 parent b214b68 commit 08070c8
Show file tree
Hide file tree
Showing 13 changed files with 78 additions and 36 deletions.
7 changes: 7 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,13 @@ in dvc_yaml, we will define all the stages
scores.json stores all the prediction scores
params.json stores all the parameters for those prediction.

dvc metrics show:
to view the results of model.
stored in params.json and scores.json

dvc metrics diff:
to view the difference in results of models with different parameters.

Project Organization
------------

Expand Down
48 changes: 37 additions & 11 deletions dvc.lock
Original file line number Diff line number Diff line change
@@ -1,34 +1,60 @@
schema: '2.0'
stages:
load_data:
cmd: python src/data/load_data.py --config=config/params.yaml
cmd: python src/load_data.py --config=params.yaml
deps:
- path: data_given/winequality.csv
md5: ccc8d3507eb151f53f760d36abdef888
size: 91998
- path: src/data/get_data.py
md5: e93ff6f5120c2884787ed30217cb8afb
size: 730
- path: src/data/load_data.py
md5: 70a392ab799c92f1bc4dc611e2d6a476
size: 735
- path: src/get_data.py
md5: d32db8a35286570c0dd981f0bd7c1a25
size: 726
- path: src/load_data.py
md5: c07904b0e8bf3d72e3c2bf4184aebe47
size: 731
outs:
- path: data/raw/winequality.csv
md5: d98e8f2eca228c11c4de1cc96866a54d
size: 93598
split_data:
cmd: python src/data/split_data.py --config=config/params.yaml
cmd: python src/split_data.py --config=params.yaml
deps:
- path: data/raw/winequality.csv
md5: d98e8f2eca228c11c4de1cc96866a54d
size: 93598
- path: src/data/split_data.py
md5: cea3d5da4e1e583a0620bac5f6512246
size: 1174
- path: src/split_data.py
md5: ab93250c4eb3fbb9b253fb57e93350f6
size: 1170
outs:
- path: data/processed/test_winequality.csv
md5: 01718da3bd6e206060ed00667ca1a389
size: 18831
- path: data/processed/train_winequality.csv
md5: 4bccf4d668cdc60115de42ba74d416ab
size: 74913
train_and_evaluate:
cmd: python src/train_and_evaluate.py --config=params.yaml
deps:
- path: data/processed/test_winequality.csv
md5: 01718da3bd6e206060ed00667ca1a389
size: 18831
- path: data/processed/train_winequality.csv
md5: 4bccf4d668cdc60115de42ba74d416ab
size: 74913
- path: src/train_and_evaluate.py
md5: 6f4add34d08b4be577c4cf184b004cf1
size: 2673
params:
params.yaml:
estimators.ElasticNet.params.alpha: 0.9
estimators.ElasticNet.params.l1_ratio: 0.4
outs:
- path: report/params.json
md5: a4aab0167612f21a6085dd05cfafdbf6
size: 44
- path: report/scores.json
md5: 174868cff0fcd398bcc867bab2ac174f
size: 101
- path: saved_models/model.joblib
md5: 29eccfa32dedc97f770f6b245cd7aa36
size: 1336
20 changes: 10 additions & 10 deletions dvc.yaml
Original file line number Diff line number Diff line change
@@ -1,35 +1,35 @@
stages:
load_data:
cmd: python src/data/load_data.py --config=config/params.yaml
cmd: python src/load_data.py --config=params.yaml
deps:
- src/data/get_data.py
- src/data/load_data.py
- src/get_data.py
- src/load_data.py
- data_given/winequality.csv
outs:
- data/raw/winequality.csv

split_data:
cmd: python src/data/split_data.py --config=config/params.yaml
cmd: python src/split_data.py --config=params.yaml
deps:
- src/data/split_data.py
- src/split_data.py
- data/raw/winequality.csv
outs:
- data/processed/train_winequality.csv
- data/processed/test_winequality.csv

train_and_evaluate:
cmd: python src/models/train_model.py --config=config/params.yaml
cmd: python src/train_and_evaluate.py --config=params.yaml
deps:
- data/processed/train_winequality.csv
- data/processed/test_winequality.csv
- src/models/train_model.py
- src/train_and_evaluate.py
params:
- estimators.ElasticNet.params.alpha
- estimators.ElasticNet.params.l1_ratio
metrics:
- reports/scores.json:
- report/scores.json:
cache: false
- reports/params.json:
- report/params.json:
cache: false
outs:
- models/saved_models/model.joblib
- saved_models/model.joblib
14 changes: 7 additions & 7 deletions config/params.yaml → params.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,14 @@ split_data:
estimators:
ElasticNet:
params:
alpha: 0.88
l1_ratio: 0.89
# alpha: 0.9
# l1_ratio: 0.4
model_dir: models/saved_models
# alpha: 0.88
# l1_ratio: 0.89
alpha: 0.9
l1_ratio: 0.4
model_dir: saved_models

reports:
params: reports/params.json
scores: reports/scores.json
params: report/params.json
scores: report/scores.json

webapp_model_dir: prediction_service/model/model.joblib
4 changes: 4 additions & 0 deletions report/params.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"alpha": 0.9,
"l1_ratio": 0.4
}
5 changes: 5 additions & 0 deletions report/scores.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"rmse": 0.8031192316982253,
"mae": 0.6551462834843993,
"r2": 0.013014969842178092
}
Empty file removed reports/.gitkeep
Empty file.
Empty file removed reports/figures/.gitkeep
Empty file.
1 change: 1 addition & 0 deletions saved_models/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/model.joblib
4 changes: 2 additions & 2 deletions src/data/get_data.py → src/get_data.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ def get_data(config_path):

if __name__=="__main__":
args = argparse.ArgumentParser()
default_config_path = os.path.join("config", "params.yaml")
args.add_argument("--config", default = default_config_path)
# default_config_path = os.path.join("config", "params.yaml")
args.add_argument("--config", default = "params.yaml")
parsed_args = args.parse_args()
data = get_data(config_path=parsed_args.config)
4 changes: 2 additions & 2 deletions src/data/load_data.py → src/load_data.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ def load_and_save(config_path):

if __name__=="__main__":
args = argparse.ArgumentParser()
default_config_path = os.path.join("config", "params.yaml")
args.add_argument("--config", default=default_config_path)
# default_config_path = os.path.join("config", "params.yaml")
args.add_argument("--config", default="params.yaml")
parsed_args = args.parse_args()
load_and_save(config_path=parsed_args.config)
4 changes: 2 additions & 2 deletions src/data/split_data.py → src/split_data.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ def split_and_saved_data(config_path):

if __name__=="__main__":
args = argparse.ArgumentParser()
default_config_path = os.path.join("config", "params.yaml")
args.add_argument("--config", default=default_config_path)
# default_config_path = os.path.join("config", "params.yaml")
args.add_argument("--config", default="params.yaml")
parsed_args = args.parse_args()
split_and_saved_data(config_path=parsed_args.config)
3 changes: 1 addition & 2 deletions src/models/train_model.py → src/train_and_evaluate.py
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,6 @@ def train_and_evaluate(config_path):

if __name__=="__main__":
args = argparse.ArgumentParser()
default_config_path = os.path.join("config", "params.yaml")
args.add_argument("--config", default=default_config_path)
args.add_argument("--config", default="params.yaml")
parsed_args = args.parse_args()
train_and_evaluate(config_path=parsed_args.config)

0 comments on commit 08070c8

Please sign in to comment.