I want to launch some experiments in DVC. But when I set values of experiment parameters, DVC deletes file 'params.yaml', and experiment doesn't set in queue.
Simplified code for example: Python file 'test.py':
import numpy as np
import json
import yaml
params = yaml.safe_load(open('params.yaml'))["test"]
precision = np.random.random()
recall = params['value']
accuracy = np.random.random()
rows = {'precision': precision,
'recall': recall,
'accuracy': accuracy}
with open(params['metrics_path'], 'w') as outfile:
json.dump(rows, outfile)
fpr = 10*np.random.random((1,10)).tolist()
tpr = 10*np.random.random((1,10)).tolist()
with open('plot.json', 'w') as outfile2:
json.dump(
{
"roc": [ {"fpr": f, "tpr": t} for f, t in zip(fpr, tpr) ]
},
outfile2
)
params.yaml:
test:
metrics_path: "scores.json"
value: 1
dvc.yaml:
stages:
test:
cmd: python test.py
deps:
- test.py
params:
- test.metrics_path
- test.value
metrics:
- scores.json:
cache: false
plots:
- plot.json:
cache: false
x: fpr
y: tpr
It is strange behavior. Is it possible to fix it?