(self)
self.conv2 = nn.Conv2d(
            64, 64, kernel_size=3, stride=1, padding=1, bias=False)
        self.bn2 = nn.BatchNorm2d(64)
        self.relu = nn.ReLU(inplace=True)
self.conv2 = nn.Conv2d(
            64, 64, kernel_size=3, stride=1, padding=1, bias=False)
        self.bn2 = nn.BatchNorm2d(64)
        self.relu = nn.ReLU(inplace=True)
self . conv2 = nn . Conv2d ( 64 64 kernel_size = 3 stride = 1 padding = 1 bias = False ) self . bn2 = nn . BatchNorm2d ( 64 ) self . relu = nn . ReLU ( inplace = True )
def __init__(self):
        super(PFLDInference, self).__init__()

        self.conv1 = nn.Conv2d(
            3, 64, kernel_size=3, stride=2, padding=1, bias=False)
        self.bn1 = nn.BatchNorm2d(64)
        self.relu = nn.ReLU(inplace=True)
        '''
        self.conv2 = nn.Conv2d(
            64, 64, kernel_size=3, stride=1, padding=1, bias=False)
        self.bn2 = nn.BatchNorm2d(64)
        self.relu = nn.ReLU(inplace=True)
        '''
        # use Depth-wise pooling
        self.dw_pool = nn.Conv2d(64, 64, 3, stride=1, padding=1, groups=64, bias=False)
        self.dw_bn = nn.BatchNorm2d(64)
        self.conv1_extra = nn.Conv2d(64, 64, 1, stride=1, padding=0, bias=False)
        self.relu = nn.ReLU(inplace=True)

        self.conv3_1 = InvertedResidual(64, 64, 2, False, 1)

        self.block3_2 = InvertedResidual(64, 64, 1, True, 1)
        self.block3_3 = InvertedResidual(64, 64, 1, True, 1)
        self.block3_4 = InvertedResidual(64, 64, 1, True, 1)
        self.block3_5 = InvertedResidual(64, 64, 1, True, 1)

        self.conv4_1 = InvertedResidual(64, 128, 2, False, 1)

        self.conv5_1 = InvertedResidual(128, 128, 1, False, 2)
        self.block5_2 = InvertedResidual(128, 128, 1, True, 2)
        self.block5_3 = InvertedResidual(128, 128, 1, True, 2)
        self.block5_4 = InvertedResidual(128, 128, 1, True, 2)
        self.block5_5 = InvertedResidual(128, 128, 1, True, 2)
        self.block5_6 = InvertedResidual(128, 128, 1, True, 2)

        self.conv6_1 = InvertedResidual(128, 16, 1, False, 1)  # [16, 14, 14]

        self.conv7 = conv_bn(16, 32, 3, 2)  # [32, 7, 7]
        self.conv8 = nn.Conv2d(32, 128, 7, 1, 0)  # [128, 1, 1]
        self.bn8 = nn.BatchNorm2d(128)

        self.avg_pool1 = nn.AvgPool2d(14)
        self.avg_pool2 = nn.AvgPool2d(7)
        self.fc = nn.Linear(176, 136)
        '''
        self.fc_aux = nn.Linear(176, 3)

        self.conv1_aux = conv_bn(64, 128, 3, 2)
        self.conv2_aux = conv_bn(128, 128, 3, 1)
        self.conv3_aux = conv_bn(128, 32, 3, 2)
        self.conv4_aux = conv_bn(32, 128, 7, 1)
        self.max_pool1_aux = nn.MaxPool2d(3)
        self.fc1_aux = nn.Linear(128, 32)
        self.fc2_aux = nn.Linear(32 + 176, 3)
        '''
def __init__ ( self ) : super ( PFLDInference , self ) . __init__ ( ) self . conv1 = nn . Conv2d ( 3 , 64 , kernel_size = 3 , stride = 2 , padding = 1 , bias = False ) self . bn1 = nn . BatchNorm2d ( 64 ) self . relu = nn . ReLU ( inplace = True ) # use Depth-wise pooling self . dw_pool = nn . Conv2d ( 64 , 64 , 3 , stride = 1 , padding = 1 , groups = 64 , bias = False ) self . dw_bn = nn . BatchNorm2d ( 64 ) self . conv1_extra = nn . Conv2d ( 64 , 64 , 1 , stride = 1 , padding = 0 , bias = False ) self . relu = nn . ReLU ( inplace = True ) self . conv3_1 = InvertedResidual ( 64 , 64 , 2 , False , 1 ) self . block3_2 = InvertedResidual ( 64 , 64 , 1 , True , 1 ) self . block3_3 = InvertedResidual ( 64 , 64 , 1 , True , 1 ) self . block3_4 = InvertedResidual ( 64 , 64 , 1 , True , 1 ) self . block3_5 = InvertedResidual ( 64 , 64 , 1 , True , 1 ) self . conv4_1 = InvertedResidual ( 64 , 128 , 2 , False , 1 ) self . conv5_1 = InvertedResidual ( 128 , 128 , 1 , False , 2 ) self . block5_2 = InvertedResidual ( 128 , 128 , 1 , True , 2 ) self . block5_3 = InvertedResidual ( 128 , 128 , 1 , True , 2 ) self . block5_4 = InvertedResidual ( 128 , 128 , 1 , True , 2 ) self . block5_5 = InvertedResidual ( 128 , 128 , 1 , True , 2 ) self . block5_6 = InvertedResidual ( 128 , 128 , 1 , True , 2 ) self . conv6_1 = InvertedResidual ( 128 , 16 , 1 , False , 1 ) # [16, 14, 14] self . conv7 = conv_bn ( 16 , 32 , 3 , 2 ) # [32, 7, 7] self . conv8 = nn . Conv2d ( 32 , 128 , 7 , 1 , 0 ) # [128, 1, 1] self . bn8 = nn . BatchNorm2d ( 128 ) self . avg_pool1 = nn . AvgPool2d ( 14 ) self . avg_pool2 = nn . AvgPool2d ( 7 ) self . fc = nn . Linear ( 176 , 136 ) '''
        self.fc_aux = nn.Linear(176, 3)

        self.conv1_aux = conv_bn(64, 128, 3, 2)
        self.conv2_aux = conv_bn(128, 128, 3, 1)
        self.conv3_aux = conv_bn(128, 32, 3, 2)
        self.conv4_aux = conv_bn(32, 128, 7, 1)
        self.max_pool1_aux = nn.MaxPool2d(3)
        self.fc1_aux = nn.Linear(128, 32)
        self.fc2_aux = nn.Linear(32 + 176, 3)
        '''