def __init__(self,
                 backbone='ResNet',
                 neck='DilatedEncoder',
                 head='YOLOFHead',
                 for_mot=False):
        """
        YOLOF network, see https://arxiv.org/abs/2103.09460

        Args:
            backbone (nn.Layer): backbone instance
            neck (nn.Layer): DilatedEncoder instance
            head (nn.Layer): YOLOFHead instance
            for_mot (bool): whether return other features for multi-object tracking
                models, default False in pure object detection models.
        """
        super(YOLOF, self).__init__()
        self.backbone = backbone
        self.neck = neck
        self.head = head
        self.for_mot = for_mot

        YOLOF network, see https://arxiv.org/abs/2103.09460

        Args:
            backbone (nn.Layer): backbone instance
            neck (nn.Layer): DilatedEncoder instance
            head (nn.Layer): YOLOFHead instance
            for_mot (bool): whether return other features for multi-object tracking
                models, default False in pure object detection models.
        
ppdet/modeling/architectures/yolof.py