From bb3c34691639b2aafb1a1f567e1dfb551a9a2563 Mon Sep 17 00:00:00 2001 From: Glenn Jocher Date: Sat, 4 Jul 2020 17:51:54 -0700 Subject: [PATCH] model.yaml nc inherited from dataset.yaml --- models/yolo.py | 3 ++- train.py | 3 +-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/models/yolo.py b/models/yolo.py index 7cc86b2..5d96c60 100644 --- a/models/yolo.py +++ b/models/yolo.py @@ -52,7 +52,8 @@ class Model(nn.Module): self.md = yaml.load(f, Loader=yaml.FullLoader) # model dict # Define model - if nc: + if nc and nc != self.md['nc']: + print('Overriding %s nc=%g with nc=%g' % (model_cfg, self.md['nc'], nc)) self.md['nc'] = nc # override yaml value self.model, self.save = parse_model(self.md, ch=[ch]) # model, savelist, ch_out # print([x.shape for x in self.forward(torch.zeros(1, ch, 64, 64))]) diff --git a/train.py b/train.py index 1c8ff7d..e07cbb1 100644 --- a/train.py +++ b/train.py @@ -77,8 +77,7 @@ def train(hyp): os.remove(f) # Create model - model = Model(opt.cfg).to(device) - assert model.md['nc'] == nc, '%s nc=%g classes but %s nc=%g classes' % (opt.data, nc, opt.cfg, model.md['nc']) + model = Model(opt.cfg, nc=data_dict['nc']).to(device) # Image sizes gs = int(max(model.stride)) # grid size (max stride)