Coverage for src/deepdraw/configs/models/driu_od.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 Optic Disc 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_od import driu_od 

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_od() 

34 

35# optimizer 

36optimizer = AdaBound( 

37 model.parameters(), 

38 lr=lr, 

39 betas=betas, 

40 final_lr=final_lr, 

41 gamma=gamma, 

42 eps=eps, 

43 weight_decay=weight_decay, 

44 amsbound=amsbound, 

45) 

46# criterion 

47criterion = SoftJaccardBCELogitsLoss(alpha=0.7) 

48 

49# scheduler 

50scheduler = MultiStepLR( 

51 optimizer, milestones=scheduler_milestones, gamma=scheduler_gamma 

52)