Coverage for src/deepdraw/configs/models/driu.py: 100%

19 statements  

« prev     ^ index     » next       coverage.py v7.3.1, created at 2023-11-30 15:00 +0100

1# SPDX-FileCopyrightText: Copyright © 2023 Idiap Research Institute <contact@idiap.ch> 

2# 

3# SPDX-License-Identifier: GPL-3.0-or-later 

4 

5"""DRIU Network for Vessel Segmentation. 

6 

7Deep Retinal Image Understanding (DRIU), a unified framework of retinal image 

8analysis that provides both retinal vessel and optic disc segmentation using 

9deep Convolutional Neural Networks (CNNs). 

10 

11Reference: [MANINIS-2016]_ 

12""" 

13 

14from torch.optim.lr_scheduler import MultiStepLR 

15 

16from deepdraw.engine.adabound import AdaBound 

17from deepdraw.models.driu import driu 

18from deepdraw.models.losses import SoftJaccardBCELogitsLoss 

19 

20# config 

21lr = 0.001 

22betas = (0.9, 0.999) 

23eps = 1e-08 

24weight_decay = 0 

25final_lr = 0.1 

26gamma = 1e-3 

27eps = 1e-8 

28amsbound = False 

29 

30scheduler_milestones = [900] 

31scheduler_gamma = 0.1 

32 

33model = driu() 

34 

35optimizer = AdaBound( 

36 model.parameters(), 

37 lr=lr, 

38 betas=betas, 

39 final_lr=final_lr, 

40 gamma=gamma, 

41 eps=eps, 

42 weight_decay=weight_decay, 

43 amsbound=amsbound, 

44) 

45criterion = SoftJaccardBCELogitsLoss(alpha=0.7) 

46 

47scheduler = MultiStepLR( 

48 optimizer, milestones=scheduler_milestones, gamma=scheduler_gamma 

49)