(bottom, outs=128)
return pool_ave, conv_1x1, conv_1x1_bn, conv_1x1_scale, conv_1x1_relu, conv_1x1_2, conv_1x1_2_bn, conv_1x1_2_scale, \
           conv_1x1_2_relu, conv_1x7_reduce, conv_1x7_reduce_bn, conv_1x7_reduce_scale, conv_1x7_reduce_relu, \
           conv_1x7, conv_1x7_bn, conv_1x7_scale, conv_1x7_relu, conv_7x1, conv_7x1_bn, conv_7x1_scale, conv_7x1_relu, \
           conv_7x1_reduce, conv_7x1_reduce_bn, conv_7x1_reduce_scale, conv_7x1_reduce_relu, conv_7x1_2, conv_7x1_2_bn, \
           conv_7x1_2_scale, conv_7x1_2_relu, conv_1x7_2, conv_1x7_2_bn, conv_1x7_2_scale, conv_1x7_2_relu, conv_7x1_3, \
           conv_7x1_3_bn, conv_7x1_3_scale, conv_7x1_3_relu, conv_1x7_3, conv_1x7_3_bn, conv_1x7_3_scale, conv_1x7_3_relu, \
           concat
input:768x17x17
    output:768x17x17
    :param outs: num_outputs
    :param bottom: bottom layer
    :return: layers
input:768x17x17
    output:768x17x17
    :param outs: num_outputs
    :param bottom: bottom layer
    :return: layers
input : 768x17x17 output : 768x17x17 : param outs : num_outputs : param bottom : bottom layer : return : layers
def inception_v3_b(bottom, outs=128):
    """
    input:768x17x17
    output:768x17x17
    :param outs: num_outputs
    :param bottom: bottom layer
    :return: layers
    """
    pool_ave = L.Pooling(bottom, kernel_size=3, stride=1, pad=1, pool=P.Pooling.AVE)  # 768x17x17
    conv_1x1, conv_1x1_bn, conv_1x1_scale, conv_1x1_relu = \
        factorization_conv_bn_scale_relu(pool_ave, num_output=192, kernel_size=1)  # 192x17x17

    conv_1x1_2, conv_1x1_2_bn, conv_1x1_2_scale, conv_1x1_2_relu = \
        factorization_conv_bn_scale_relu(bottom, num_output=192, kernel_size=1)  # 192x17x17

    conv_1x7_reduce, conv_1x7_reduce_bn, conv_1x7_reduce_scale, conv_1x7_reduce_relu = \
        factorization_conv_bn_scale_relu(bottom, num_output=outs, kernel_size=1)  # outsx17x17
    conv_1x7, conv_1x7_bn, conv_1x7_scale, conv_1x7_relu = \
        factorization_conv_mxn(conv_1x7_reduce, num_output=outs, kernel_h=1, kernel_w=7, pad_h=0, pad_w=3)  # outsx17x17
    conv_7x1, conv_7x1_bn, conv_7x1_scale, conv_7x1_relu = \
        factorization_conv_mxn(conv_1x7, num_output=192, kernel_h=7, kernel_w=1, pad_h=3, pad_w=0)  # 192x17x17

    conv_7x1_reduce, conv_7x1_reduce_bn, conv_7x1_reduce_scale, conv_7x1_reduce_relu = \
        factorization_conv_bn_scale_relu(bottom, num_output=outs, kernel_size=1)  # outsx17x17
    conv_7x1_2, conv_7x1_2_bn, conv_7x1_2_scale, conv_7x1_2_relu = \
        factorization_conv_mxn(conv_7x1_reduce, num_output=outs, kernel_h=7, kernel_w=1, pad_h=3, pad_w=0)  # outsx17x17
    conv_1x7_2, conv_1x7_2_bn, conv_1x7_2_scale, conv_1x7_2_relu = \
        factorization_conv_mxn(conv_7x1_2, num_output=outs, kernel_h=1, kernel_w=7, pad_h=0, pad_w=3)  # outsx17x17
    conv_7x1_3, conv_7x1_3_bn, conv_7x1_3_scale, conv_7x1_3_relu = \
        factorization_conv_mxn(conv_1x7_2, num_output=outs, kernel_h=7, kernel_w=1, pad_h=3, pad_w=0)  # outsx17x17
    conv_1x7_3, conv_1x7_3_bn, conv_1x7_3_scale, conv_1x7_3_relu = \
        factorization_conv_mxn(conv_7x1_3, num_output=192, kernel_h=1, kernel_w=7, pad_h=0, pad_w=3)  # 192x17x17

    concat = L.Concat(conv_1x1_2, conv_7x1, conv_1x7_3, conv_1x1)  # 768(192+192+192+192)x17x17

    return pool_ave, conv_1x1, conv_1x1_bn, conv_1x1_scale, conv_1x1_relu, conv_1x1_2, conv_1x1_2_bn, conv_1x1_2_scale, \
           conv_1x1_2_relu, conv_1x7_reduce, conv_1x7_reduce_bn, conv_1x7_reduce_scale, conv_1x7_reduce_relu, \
           conv_1x7, conv_1x7_bn, conv_1x7_scale, conv_1x7_relu, conv_7x1, conv_7x1_bn, conv_7x1_scale, conv_7x1_relu, \
           conv_7x1_reduce, conv_7x1_reduce_bn, conv_7x1_reduce_scale, conv_7x1_reduce_relu, conv_7x1_2, conv_7x1_2_bn, \
           conv_7x1_2_scale, conv_7x1_2_relu, conv_1x7_2, conv_1x7_2_bn, conv_1x7_2_scale, conv_1x7_2_relu, conv_7x1_3, \
           conv_7x1_3_bn, conv_7x1_3_scale, conv_7x1_3_relu, conv_1x7_3, conv_1x7_3_bn, conv_1x7_3_scale, conv_1x7_3_relu, \
           concat
def inception_v3_b ( bottom , outs = 128 ) : pool_ave = L . Pooling ( bottom , kernel_size = 3 , stride = 1 , pad = 1 , pool = P . Pooling . AVE ) # 768x17x17 conv_1x1 , conv_1x1_bn , conv_1x1_scale , conv_1x1_relu = factorization_conv_bn_scale_relu ( pool_ave , num_output = 192 , kernel_size = 1 ) # 192x17x17 conv_1x1_2 , conv_1x1_2_bn , conv_1x1_2_scale , conv_1x1_2_relu = factorization_conv_bn_scale_relu ( bottom , num_output = 192 , kernel_size = 1 ) # 192x17x17 conv_1x7_reduce , conv_1x7_reduce_bn , conv_1x7_reduce_scale , conv_1x7_reduce_relu = factorization_conv_bn_scale_relu ( bottom , num_output = outs , kernel_size = 1 ) # outsx17x17 conv_1x7 , conv_1x7_bn , conv_1x7_scale , conv_1x7_relu = factorization_conv_mxn ( conv_1x7_reduce , num_output = outs , kernel_h = 1 , kernel_w = 7 , pad_h = 0 , pad_w = 3 ) # outsx17x17 conv_7x1 , conv_7x1_bn , conv_7x1_scale , conv_7x1_relu = factorization_conv_mxn ( conv_1x7 , num_output = 192 , kernel_h = 7 , kernel_w = 1 , pad_h = 3 , pad_w = 0 ) # 192x17x17 conv_7x1_reduce , conv_7x1_reduce_bn , conv_7x1_reduce_scale , conv_7x1_reduce_relu = factorization_conv_bn_scale_relu ( bottom , num_output = outs , kernel_size = 1 ) # outsx17x17 conv_7x1_2 , conv_7x1_2_bn , conv_7x1_2_scale , conv_7x1_2_relu = factorization_conv_mxn ( conv_7x1_reduce , num_output = outs , kernel_h = 7 , kernel_w = 1 , pad_h = 3 , pad_w = 0 ) # outsx17x17 conv_1x7_2 , conv_1x7_2_bn , conv_1x7_2_scale , conv_1x7_2_relu = factorization_conv_mxn ( conv_7x1_2 , num_output = outs , kernel_h = 1 , kernel_w = 7 , pad_h = 0 , pad_w = 3 ) # outsx17x17 conv_7x1_3 , conv_7x1_3_bn , conv_7x1_3_scale , conv_7x1_3_relu = factorization_conv_mxn ( conv_1x7_2 , num_output = outs , kernel_h = 7 , kernel_w = 1 , pad_h = 3 , pad_w = 0 ) # outsx17x17 conv_1x7_3 , conv_1x7_3_bn , conv_1x7_3_scale , conv_1x7_3_relu = factorization_conv_mxn ( conv_7x1_3 , num_output = 192 , kernel_h = 1 , kernel_w = 7 , pad_h = 0 , pad_w = 3 ) # 192x17x17 concat = L . Concat ( conv_1x1_2 , conv_7x1 , conv_1x7_3 , conv_1x1 ) # 768(192+192+192+192)x17x17 return pool_ave , conv_1x1 , conv_1x1_bn , conv_1x1_scale , conv_1x1_relu , conv_1x1_2 , conv_1x1_2_bn , conv_1x1_2_scale , conv_1x1_2_relu , conv_1x7_reduce , conv_1x7_reduce_bn , conv_1x7_reduce_scale , conv_1x7_reduce_relu , conv_1x7 , conv_1x7_bn , conv_1x7_scale , conv_1x7_relu , conv_7x1 , conv_7x1_bn , conv_7x1_scale , conv_7x1_relu , conv_7x1_reduce , conv_7x1_reduce_bn , conv_7x1_reduce_scale , conv_7x1_reduce_relu , conv_7x1_2 , conv_7x1_2_bn , conv_7x1_2_scale , conv_7x1_2_relu , conv_1x7_2 , conv_1x7_2_bn , conv_1x7_2_scale , conv_1x7_2_relu , conv_7x1_3 , conv_7x1_3_bn , conv_7x1_3_scale , conv_7x1_3_relu , conv_1x7_3 , conv_1x7_3_bn , conv_1x7_3_scale , conv_1x7_3_relu , concat