CastleJo의 개발일지

Object Detection - Detectron optimizer 설정하기

|

이 부분도 Trainer의 함수를 Override해주면 된다.

class Trainer(DefaultTrainer):
	...

	@classmethod
    def build_optimizer(cls, cfg, model):
        """
        Returns:
            torch.optim.Optimizer:
        It now calls :func:`detectron2.solver.build_optimizer`.
        Overwrite it if you'd like a different optimizer.
        """
        return build_optimizer(cfg, model)

이 부분을 override 해주면 된다.

torch.optimizer 부분을 반환해주는데, cfg와 nn.module을 상속하는 model을 인자로 받으니 원하는 optimizer를 쉽게 설정할 수 있을것이다.