Ejemplo n.º 1
0
def get_wb_from_convnet2_checkpoint(name, sp, params, item_type):
    """
    params = [check_point_path, layer_name, ]
    """
    sys.path.append('/home/grads/sijinli2/Projects/cuda-convnet2/')
    checkpath = params[0]
    layer_name = name if len(params) == 1 else params[1]
    filepath = os.path.join(
        checkpath,
        sorted(os.listdir(checkpath), key=alphanum_key)[-1])
    saved = mio.unpickle(filepath)
    model_state = saved['model_state']
    layer = model_state['layers'][layer_name]
    if item_type == 'weights':
        # weights
        n_w = len(sp)
        print '    init from convnet {}--------'.format(checkpath)
        idx_list = range(n_w) if len(params) < 3 else iu.get_int_list_from_str(
            params[2])
        print ','.join(
            ['{}'.format(layer['weights'][k].shape) for k in idx_list])
        print '--------------\n---------\n'
        return [layer['weights'][k] for k in idx_list]
    else:
        return [layer['biases']]
Ejemplo n.º 2
0
def gwfp(name, sp_list, params):
    """
    get weights from saved model
    params = [model_path, layer_name, [idx,...]]
    """
    n_w = len(sp_list)
    model_path = params[0]
    layer_name = name if len(params) == 1 else params[1]
    model = Solver.get_saved_model(model_path)
    layers = get_layers(model)
    lay = layers[layer_name][2]
    if len(params) < 3:
        idx_list = range(n_w)
    else:
        idx_list = iu.get_int_list_from_str(params[2])
    return [lay['weights'][k] for k in idx_list]
Ejemplo n.º 3
0
def gwfp(name, sp_list, params):
    """
    get weights from saved model
    params = [model_path, layer_name, [idx,...]]
    """
    n_w = len(sp_list)
    model_path = params[0]
    layer_name = name if len(params) == 1 else params[1]
    model = Solver.get_saved_model(model_path)
    layers = get_layers(model)
    lay = layers[layer_name][2]
    if len(params) < 3:
        idx_list = range(n_w)
    else:
        idx_list = iu.get_int_list_from_str(params[2])
    return [lay['weights'][k] for k in idx_list]
Ejemplo n.º 4
0
def get_wb_from_convnet2_checkpoint(name, sp, params, item_type):
    """
    params = [check_point_path, layer_name, ]
    """
    sys.path.append('/home/grads/sijinli2/Projects/cuda-convnet2/')
    checkpath= params[0]
    layer_name= name if len(params) == 1 else params[1]
    filepath = os.path.join(checkpath, sorted(os.listdir(checkpath), key=alphanum_key)[-1])
    saved = mio.unpickle(filepath)
    model_state = saved['model_state']
    layer = model_state['layers'][layer_name]
    if item_type == 'weights':
        # weights
        n_w = len(sp)
        print '    init from convnet {}--------'.format(checkpath)
        idx_list = range(n_w) if len(params) < 3 else iu.get_int_list_from_str(params[2])
        print ','.join(['{}'.format(layer['weights'][k].shape) for k in idx_list])
        print '--------------\n---------\n'
        return [layer['weights'][k] for k in idx_list]  
    else:
        return [layer['biases']]