Esempio n. 1
0
def tuning(mode, n_iter, n_gpu, devices, save_interval, n_blocks, block_id):

    if n_gpu == -1:
        n_gpu = len(devices.split(','))

    space = [
        {
            'loss': ['arcface'],
            # 'verifythresh': [20, 30, 40, 50],
            # 'freqthresh': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
        },
    ]

    if mode == 'grid':
        candidate_list = list(ParameterGrid(space))
    elif mode == 'random':
        candidate_list = list(
            ParameterSampler(space, n_iter, random_state=params['seed']))
    else:
        raise ValueError

    n_per_block = math.ceil(len(candidate_list) / n_blocks)
    candidate_chunk = candidate_list[block_id * n_per_block:(block_id + 1) *
                                     n_per_block]

    utils.launch_tuning(mode=mode,
                        n_iter=n_iter,
                        n_gpu=n_gpu,
                        devices=devices,
                        params=params,
                        root=ROOT,
                        save_interval=save_interval,
                        candidate_list=candidate_chunk)
def tuning(mode, n_iter, n_gpu, devices, save_interval, n_blocks, block_id):

    if n_gpu == -1:
        n_gpu = len(devices.split(','))

    space = [
        {
            'loss': ['arcface', 'adacos', 'cosface'],
            'pooling': ['G,G,G,G'],
        },
        {
            'loss': ['arcface'],
            'pooling': ['SMG,MG,G,G'],
        },
    ]

    if mode == 'grid':
        candidate_list = list(ParameterGrid(space))
    elif mode == 'random':
        candidate_list = list(ParameterSampler(space, n_iter, random_state=params['seed']))
    else:
        raise ValueError

    n_per_block = math.ceil(len(candidate_list) / n_blocks)
    candidate_chunk = candidate_list[block_id * n_per_block: (block_id + 1) * n_per_block]

    utils.launch_tuning(mode=mode, n_iter=n_iter, n_gpu=n_gpu, devices=devices,
                        params=params, root=ROOT, save_interval=save_interval,
                        candidate_list=candidate_chunk)
def tuning(mode, n_iter, n_gpu, devices, save_interval, n_blocks, block_id):

    if n_gpu == -1:
        n_gpu = len(devices.split(','))

    space = [
        {
            # 'fc_dim': [512, 1024],
            'epochs': [7],
            'augmentation': ['middle'],
            'verifythresh': [30],
            'freqthresh': [2, 3],
        },
    ]

    if mode == 'grid':
        candidate_list = list(ParameterGrid(space))
    elif mode == 'random':
        candidate_list = list(
            ParameterSampler(space, n_iter, random_state=params['seed']))
    else:
        raise ValueError

    n_per_block = math.ceil(len(candidate_list) / n_blocks)
    candidate_chunk = candidate_list[block_id * n_per_block:(block_id + 1) *
                                     n_per_block]

    utils.launch_tuning(mode=mode,
                        n_iter=n_iter,
                        n_gpu=n_gpu,
                        devices=devices,
                        params=params,
                        root=ROOT,
                        save_interval=save_interval,
                        candidate_list=candidate_chunk)
Esempio n. 4
0
def tuning(mode, n_iter, n_gpu, devices, save_interval, n_blocks, block_id):

    if n_gpu == -1:
        n_gpu = len(devices.split(','))

    space = [{
        'pooling': ['G,G,G,G'],
        'epochs': [5],
        'batch_size': [32],
        # 'fc_dim': [128, 256, 512],
    }]

    if mode == 'grid':
        candidate_list = list(ParameterGrid(space))
    elif mode == 'random':
        candidate_list = list(
            ParameterSampler(space, n_iter, random_state=params['seed']))
    else:
        raise ValueError

    n_per_block = math.ceil(len(candidate_list) / n_blocks)
    candidate_chunk = candidate_list[block_id * n_per_block:(block_id + 1) *
                                     n_per_block]

    utils.launch_tuning(mode=mode,
                        n_iter=n_iter,
                        n_gpu=n_gpu,
                        devices=devices,
                        params=params,
                        root=ROOT,
                        save_interval=save_interval,
                        candidate_list=candidate_chunk)
Esempio n. 5
0
def tuning(mode, n_iter, n_gpu, devices, save_interval, n_blocks, block_id):
    """
    Example:
        python v12.py tuning --devices 0,1,2,3 --n-gpu 2
    """

    if n_gpu == -1:
        n_gpu = len(devices.split(','))

    space = [
        {
            'loss': ['arcface'],
            'freqthresh': [2, 5],
            'margin': [0.3, 0.4],
        },
    ]

    if mode == 'grid':
        candidate_list = list(ParameterGrid(space))
    elif mode == 'random':
        candidate_list = list(ParameterSampler(space, n_iter, random_state=params['seed']))
    else:
        raise ValueError

    n_per_block = math.ceil(len(candidate_list) / n_blocks)
    candidate_chunk = candidate_list[block_id * n_per_block: (block_id + 1) * n_per_block]

    utils.launch_tuning(mode=mode, n_iter=n_iter, n_gpu=n_gpu, devices=devices,
                        params=params, root=ROOT, save_interval=save_interval,
                        candidate_list=candidate_chunk)
def tuning(mode, n_iter, n_gpu, devices, save_interval, n_blocks, block_id):
    """
    Example:
        python v12.py tuning --devices 0,1,2,3 --n-gpu 2
    """

    if n_gpu == -1:
        n_gpu = len(devices.split(','))

    space = [
        {
            'batch_size': [32],
            # 'epochs': [1],
            # 'scaleup_epochs': [0],
            'loss': ['arcface'],
            'verifythresh': [30],
            'freqthresh': [3],
            'margin': [0.3, 0.2],
            's': [30],
            # 'augmentation': ['soft'],
        },

        # for reproduce
        # {
        #     'batch_size': [32],
        #     'loss': ['arcface'],
        #     'verifythresh': [30, 40, 50],
        #     'freqthresh': [2, 3, 5],
        #     'margin': [0.3],
        #     's': [30],
        # },
        # {
        #     'batch_size': [32],
        #     'loss': ['arcface'],
        #     'verifythresh': [30],
        #     'freqthresh': [3],
        #     'margin': [0.2],
        #     's': [30],
        # },
    ]

    if mode == 'grid':
        candidate_list = list(ParameterGrid(space))
    elif mode == 'random':
        candidate_list = list(ParameterSampler(space, n_iter, random_state=params['seed']))
    else:
        raise ValueError

    n_per_block = math.ceil(len(candidate_list) / n_blocks)
    candidate_chunk = candidate_list[block_id * n_per_block: (block_id + 1) * n_per_block]

    utils.launch_tuning(mode=mode, n_iter=n_iter, n_gpu=n_gpu, devices=devices,
                        params=params, root=ROOT, save_interval=save_interval,
                        candidate_list=candidate_chunk)
Esempio n. 7
0
def tuning(mode, n_iter, n_gpu, devices):
    """
    Example:
        python exp0.py tuning --devices 0,1 --n-gpu 1
        python exp0.py tuning --devices 0,1 --n-gpu 1 --mode 'random' --n-iter 4
    """

    if n_gpu == -1:
        n_gpu = len(devices.split(','))
    space = {
        'lr': [1e-5, 1e-4, 1e-3],
        'batch_size': [16, 8],
    }
    utils.launch_tuning(mode, n_iter, n_gpu, devices, params, space, ROOT)