Example #1
0
def test_solver_load_pretrain():
    #Get net prms
    nPrms = mec.get_default_net_prms(dbFile, **kwargs)
    del nPrms['expStr']
    nPrms.baseNetDefProto = 'doublefc-v1_window_fc6'
    nPrms = mpu.get_defaults(kwargs, nPrms, False)
    nPrms['expStr'] = mec.get_sql_id(dbFile, dArgs, ignoreKeys=['ncpu'])

    dPrms = get_data_prms()
    nwFn = process_net_prms
    ncpu = 0
    nwArgs = {'ncpu': ncpu, 'lrAbove': None, 'preTrainNet': None}
    solFn = mec.get_default_solver_prms
    solArgs = {'dbFile': DEF_DB % 'sol', 'clip_gradients': 10}
    cPrms = mec.get_caffe_prms(nwFn=nwFn,
                               nwPrms=nwArgs,
                               solFn=solFn,
                               solPrms=solArgs)
    exp = mec.CaffeSolverExperiment(dPrms,
                                    cPrms,
                                    netDefFn=make_net_def,
                                    isLog=True)
    if isRun:
        exp.make()
        exp.run()
    return exp
Example #2
0
def simple_euler_dof2_dcv2_smallnetv5(isRun=False,
                                      gradClip=10,
                                      stepsize=20000,
                                      base_lr=0.001,
                                      gamma=0.5,
                                      deviceId=0):
    posePrms = slu.PosePrms(maxRot=90, simpleRot=True, dof=2)
    dPrms = sev2.get_data_prms(lbPrms=posePrms)
    nwFn = sev2.process_net_prms
    nwArgs = {'ncpu': 0, 'baseNetDefProto': 'smallnet-v5_window_siamese_fc5'}
    solFn = mec.get_default_solver_prms
    solArgs = {
        'dbFile': DEF_DB % 'sol',
        'clip_gradients': gradClip,
        'stepsize': stepsize,
        'base_lr': base_lr,
        'gamma': gamma
    }
    cPrms = mec.get_caffe_prms(nwFn=nwFn,
                               nwPrms=nwArgs,
                               solFn=solFn,
                               solPrms=solArgs)
    exp = mec.CaffeSolverExperiment(dPrms,
                                    cPrms,
                                    netDefFn=sev2.make_net_def,
                                    isLog=True)
    if isRun:
        exp.make(deviceId=deviceId)
        exp.run()
    return exp
Example #3
0
def setup_experiment():
    prms = get_mnist_prms()
    nwPrms = {'netName': 'MyNet', 'baseNetDefProto': 'trainval.prototxt'}
    cPrms = mec.get_caffe_prms(mec.get_default_net_prms,
                               nwPrms,
                               mec.get_default_solver_prms,
                               baseDefDir='./test_data/mnist')
    exp = mec.CaffeSolverExperiment(prms, cPrms)
    exp.make()
    return exp
Example #4
0
def setup_experiment():
	prms    = get_mnist_prms()
	nwPrms  = {'netName': 'MyNet', 
						 'baseNetDefProto': 'trainval.prototxt'}
	cPrms   = mec.get_caffe_prms(mec.get_default_net_prms, nwPrms, 
						mec.get_default_solver_prms,
						baseDefDir='./test_data/mnist')	
	exp     = mec.CaffeSolverExperiment(prms, cPrms)
	exp.make()
	return exp
Example #5
0
def scratch_cls_pd36(isRun=False,
                     nAzBins=18,
                     nElBins=18,
                     isLog=True,
                     gradClip=30,
                     stepsize=10000,
                     gamma=0.5,
                     base_lr=0.001,
                     deviceId=0,
                     isDropOut=False,
                     numDrop=1,
                     crpSz=240):
    dPrms = pep.get_data_prms(anglePreProc='classify',
                              nAzBins=nAzBins,
                              nElBins=nElBins)
    nwFn = pep.process_net_prms
    ncpu = 0
    if isDropOut:
        if numDrop == 1:
            baseProto = 'doublefc-v1_window_fc6_dropout'
        else:
            baseProto = 'doublefc-v1_window_fc6_double_dropout'
    else:
        baseProto = 'doublefc-v1_window_fc6'

    nwArgs = {
        'ncpu': ncpu,
        'lrAbove': None,
        'preTrainNet': None,
        'dataNetDefProto': 'data_layer_pascal_cls',
        'baseNetDefProtp': baseProto,
        'lossNetDefProto': 'pascal_pose_loss_classify_layers',
        'crpSz': crpSz
    }
    solFn = mec.get_default_solver_prms
    solArgs = {
        'dbFile': DEF_DB % 'sol',
        'clip_gradients': gradClip,
        ' stepsize': stepsize,
        'base_lr': base_lr,
        'gamma': gamma
    }
    cPrms = mec.get_caffe_prms(nwFn=nwFn,
                               nwPrms=nwArgs,
                               solFn=solFn,
                               solPrms=solArgs)
    exp = mec.CaffeSolverExperiment(dPrms,
                                    cPrms,
                                    netDefFn=pep.make_net_def,
                                    isLog=isLog)
    if isRun:
        exp.make(deviceId=deviceId)
        exp.run()
    return exp
Example #6
0
def alexnet_cls_pd36(isRun=False,
                     nAzBins=18,
                     nElBins=18,
                     isLog=True,
                     gradClip=30,
                     stepsize=10000,
                     gamma=0.5,
                     base_lr=0.001,
                     deviceId=0,
                     crpSz=240,
                     lrAbove=None,
                     meanFile='',
                     resumeIter=None):
    dPrms = pep.get_data_prms(anglePreProc='classify',
                              nAzBins=nAzBins,
                              nElBins=nElBins)
    nwFn = pep.process_net_prms
    ncpu = 0
    preTrainNet = osp.join(cfg.pths.data0,\
                 'caffe_models/bvlc_reference/bvlc_reference_caffenet_upgraded.caffemodel')
    nwArgs = {
        'ncpu': ncpu,
        'lrAbove': lrAbove,
        'preTrainNet': preTrainNet,
        'dataNetDefProto': 'data_layer_pascal_cls',
        'lossNetDefProto': 'pascal_pose_loss_classify_layers',
        'baseNetDefProto': 'alexnet',
        'ipImSz': 227,
        'crpSz': crpSz,
        'opLrMult': 10,
        'meanFile': meanFile
    }
    solFn = mec.get_default_solver_prms
    solArgs = {
        'dbFile': DEF_DB % 'sol',
        'clip_gradients': gradClip,
        ' stepsize': stepsize,
        'base_lr': base_lr,
        'gamma': gamma
    }
    cPrms = mec.get_caffe_prms(nwFn=nwFn,
                               nwPrms=nwArgs,
                               solFn=solFn,
                               solPrms=solArgs,
                               resumeIter=resumeIter)
    exp = mec.CaffeSolverExperiment(dPrms,
                                    cPrms,
                                    netDefFn=pep.make_net_def,
                                    isLog=isLog)
    if isRun:
        exp.make(deviceId=deviceId)
        exp.run()
    return exp
Example #7
0
def setup_experiment_finetune():
	prms        = get_mnist_prms()
	preTrainNet = './test_data/mnist/mnist-test_iter_4000.caffemodel'
	#preTrainNet = None
	baseDefDir   ='./test_data/mnist'
	nwPrms  = {'netName': 'MyNet', 
						 'baseNetDefProto': osp.join(baseDefDir, 'trainval.prototxt'),
             'preTrainNet': preTrainNet}
	cPrms   = mec.get_caffe_prms(mec.get_default_net_prms, nwPrms, 
						mec.get_default_solver_prms)
	exp     = mec.CaffeSolverExperiment(prms, cPrms)
	exp.make()
	return exp
Example #8
0
def setup_experiment_finetune():
    prms = get_mnist_prms()
    preTrainNet = './test_data/mnist/mnist-test_iter_4000.caffemodel'
    #preTrainNet = None
    baseDefDir = './test_data/mnist'
    nwPrms = {
        'netName': 'MyNet',
        'baseNetDefProto': osp.join(baseDefDir, 'trainval.prototxt'),
        'preTrainNet': preTrainNet
    }
    cPrms = mec.get_caffe_prms(mec.get_default_net_prms, nwPrms,
                               mec.get_default_solver_prms)
    exp = mec.CaffeSolverExperiment(prms, cPrms)
    exp.make()
    return exp
Example #9
0
def torchnet_cls_pd36(isRun=False,
                      nAzBins=18,
                      nElBins=18,
                      isLog=True,
                      gradClip=30,
                      stepsize=10000,
                      gamma=0.5,
                      base_lr=0.001,
                      deviceId=0):
    dPrms = pep.get_data_prms(anglePreProc='classify',
                              nAzBins=nAzBins,
                              nElBins=nElBins)
    nwFn = pep.process_net_prms
    ncpu = 0
    preTrainNet = osp.join(cfg.pths.data0,\
                   'caffe_models/streetview/pose-l1-torch7.caffemodel')
    nwArgs = {
        'ncpu': ncpu,
        'lrAbove': None,
        'preTrainNet': preTrainNet,
        'dataNetDefProto': 'data_layer_pascal_cls',
        'lossNetDefProto': 'pascal_pose_loss_classify_layers',
        'baseNetDefProto': 'pose-l1-torch7',
        'ipImSz': 101,
        'opLrMult': 10
    }
    solFn = mec.get_default_solver_prms
    solArgs = {
        'dbFile': DEF_DB % 'sol',
        'clip_gradients': gradClip,
        ' stepsize': stepsize,
        'base_lr': base_lr,
        'gamma': gamma
    }
    cPrms = mec.get_caffe_prms(nwFn=nwFn,
                               nwPrms=nwArgs,
                               solFn=solFn,
                               solPrms=solArgs)
    exp = mec.CaffeSolverExperiment(dPrms,
                                    cPrms,
                                    netDefFn=pep.make_net_def,
                                    isLog=isLog)
    if isRun:
        exp.make(deviceId=deviceId)
        exp.run()
    return exp
Example #10
0
def setup_experiment_demo(debugMode=False, isRun=False):
    dPrms = get_data_prms()
    nwFn = process_net_prms
    ncpu = 0
    nwArgs = {'lrAbove': None, 'preTrainNet': None}
    solFn = mec.get_default_solver_prms
    solArgs = {'dbFile': DEF_DB % 'sol', 'clip_gradients': 10}
    cPrms = mec.get_caffe_prms(nwFn=nwFn,
                               nwPrms=nwArgs,
                               solFn=solFn,
                               solPrms=solArgs)
    exp = mec.CaffeSolverExperiment(dPrms,
                                    cPrms,
                                    netDefFn=make_net_def,
                                    isLog=True)
    if isRun:
        exp.make()
        exp.run()
    return exp
Example #11
0
def simple_quat_dof5_dcv2_doublefcv1_l2loss(isRun=False,
                                            gradClip=10,
                                            stepsize=20000,
                                            base_lr=0.001,
                                            gamma=0.5,
                                            deviceId=0,
                                            readSingleGrp=False,
                                            ncpu=0,
                                            resumeIter=None):
    posePrms = slu.PosePrms(maxRot=90,
                            simpleRot=False,
                            dof=5,
                            nrmlz=True,
                            angleType='quat')
    dPrms = sev2.get_data_prms(lbPrms=posePrms)
    nwFn = sev2.process_net_prms
    nwArgs = {
        'ncpu': ncpu,
        'baseNetDefProto': 'doublefc-v1_window_siamese_fc6',
        'lossNetDefProto': 'pose_loss_layers',
        'readSingleGrp': readSingleGrp
    }
    solFn = mec.get_default_solver_prms
    solArgs = {
        'dbFile': DEF_DB % 'sol',
        'clip_gradients': gradClip,
        'stepsize': stepsize,
        'base_lr': base_lr,
        'gamma': gamma
    }
    cPrms = mec.get_caffe_prms(nwFn=nwFn,
                               nwPrms=nwArgs,
                               solFn=solFn,
                               solPrms=solArgs,
                               resumeIter=resumeIter)
    exp = mec.CaffeSolverExperiment(dPrms,
                                    cPrms,
                                    netDefFn=sev2.make_net_def,
                                    isLog=True)
    if isRun:
        exp.make(deviceId=deviceId)
        exp.run()
    return exp
Example #12
0
def test_solver_load_pretrain():
	#Get net prms
	nPrms = mec.get_default_net_prms(dbFile, **kwargs)
	del nPrms['expStr']
	nPrms.baseNetDefProto = 'doublefc-v1_window_fc6'
	nPrms  = mpu.get_defaults(kwargs, nPrms, False)
	nPrms['expStr'] = mec.get_sql_id(dbFile, dArgs, ignoreKeys=['ncpu'])
	
	dPrms   = get_data_prms()
	nwFn    = process_net_prms
	ncpu = 0
	nwArgs  = {'ncpu': ncpu, 'lrAbove': None, 'preTrainNet':None}
	solFn   = mec.get_default_solver_prms
	solArgs = {'dbFile': DEF_DB % 'sol', 'clip_gradients': 10}
	cPrms   = mec.get_caffe_prms(nwFn=nwFn, nwPrms=nwArgs,
									 solFn=solFn, solPrms=solArgs)
	exp     = mec.CaffeSolverExperiment(dPrms, cPrms,
					  netDefFn=make_net_def, isLog=True)
	if isRun:
		exp.make()
		exp.run() 
	return exp 	 				
Example #13
0
def setup_experiment_demo(debugMode=False, isRun=False):
    posePrms = slu.PosePrms()
    dPrms = get_data_prms(lbPrms=posePrms)
    nwFn = process_net_prms
    if debugMode:
        ncpu = 0
    else:
        ncpu = 2
    nwArgs = {'ncpu': ncpu}
    solFn = mec.get_default_solver_prms
    solArgs = {'dbFile': DEF_DB % 'sol', 'clip_gradients': 10}
    cPrms = mec.get_caffe_prms(nwFn=nwFn,
                               nwPrms=nwArgs,
                               solFn=solFn,
                               solPrms=solArgs)
    exp = mec.CaffeSolverExperiment(dPrms,
                                    cPrms,
                                    netDefFn=make_net_def,
                                    isLog=True)
    if isRun:
        exp.make()
        exp.run()
    return exp
Example #14
0
def simple_euler_dof2_dcv2_doublefcv1_diff_no_common_fc(
        isRun=False,
        gradClip=30,
        stepsize=60000,
        base_lr=0.001,
        gamma=0.1,
        deviceId=0,
        resumeIter=None):
    posePrms = slu.PosePrms(maxRot=90, simpleRot=True, dof=2)
    dPrms = sev2.get_data_prms(lbPrms=posePrms)
    nwFn = sev2.process_net_prms
    nwArgs = {
        'ncpu': 0,
        'baseNetDefProto': 'doublefc-v1_window_siamese_fc6_diff_no-common-fc'
    }
    solFn = mec.get_default_solver_prms
    solArgs = {
        'dbFile': DEF_DB % 'sol',
        'clip_gradients': gradClip,
        'stepsize': stepsize,
        'base_lr': base_lr,
        'gamma': gamma
    }
    cPrms = mec.get_caffe_prms(nwFn=nwFn,
                               nwPrms=nwArgs,
                               solFn=solFn,
                               solPrms=solArgs,
                               resumeIter=resumeIter)
    exp = mec.CaffeSolverExperiment(dPrms,
                                    cPrms,
                                    netDefFn=sev2.make_net_def,
                                    isLog=True)
    if isRun:
        exp.make(deviceId=deviceId)
        exp.run()
    return exp
Example #15
0
def doublefcv1_dcv2_dof2net_cls_pd36(isRun=False,
                                     nAzBins=18,
                                     nElBins=18,
                                     isLog=True,
                                     gradClip=30,
                                     stepsize=10000,
                                     gamma=0.5,
                                     base_lr=0.001,
                                     deviceId=0,
                                     crpSz=240,
                                     lrAbove=None,
                                     isDropOut=False,
                                     numDrop=1):
    '''
		isDropout: if dropouts should be used
		numDrop  : number of dropout layers
	'''
    #Source net
    srcExp = mepg.simple_euler_dof2_dcv2_doublefcv1(gradClip=30,
                                                    stepsize=60000,
                                                    base_lr=0.001,
                                                    gamma=0.1)
    srcIter = 182000
    preTrainNet = srcExp.get_snapshot_name(srcIter)
    #PASCAL Settings
    dPrms = pep.get_data_prms(anglePreProc='classify',
                              nAzBins=nAzBins,
                              nElBins=nElBins)
    nwFn = pep.process_net_prms
    ncpu = 0
    if isDropOut:
        if numDrop == 1:
            baseProto = 'doublefc-v1_window_fc6_dropout'
        else:
            baseProto = 'doublefc-v1_window_fc6_double_dropout'
    else:
        baseProto = 'doublefc-v1_window_fc6'
    nwArgs = {
        'ncpu': ncpu,
        'lrAbove': lrAbove,
        'preTrainNet': preTrainNet,
        'dataNetDefProto': 'data_layer_pascal_cls',
        'lossNetDefProto': 'pascal_pose_loss_classify_layers',
        'baseNetDefProto': baseProto,
        'ipImSz': 101,
        'crpSz': crpSz,
        'opLrMult': 10
    }
    solFn = mec.get_default_solver_prms
    solArgs = {
        'dbFile': DEF_DB % 'sol',
        'clip_gradients': gradClip,
        ' stepsize': stepsize,
        'base_lr': base_lr,
        'gamma': gamma
    }
    cPrms = mec.get_caffe_prms(nwFn=nwFn,
                               nwPrms=nwArgs,
                               solFn=solFn,
                               solPrms=solArgs)
    exp = mec.CaffeSolverExperiment(dPrms,
                                    cPrms,
                                    netDefFn=pep.make_net_def,
                                    isLog=isLog)
    if isRun:
        exp.make(deviceId=deviceId)
        exp.run()
    return exp