def main(): parser = argparse.ArgumentParser(description='Visualizes a trained StackedLayers model.') parser.add_argument('--name', type = str, default = 'junk', help = 'Name for GitResultsManager results directory (default: junk)') #parser.add_argument('--quick', action='store_true', help = 'Enable quick mode (default: off)') parser.add_argument('--nodiary', action='store_true', help = 'Disable diary (default: diary is on)') parser.add_argument('stackedLayersFilename', type = str, help = 'File where a StackedLayers model was stored, something like stackedLayers.pkl.gz') parser.add_argument('command', type = str, default = 'embed', choices = ['visall', 'embed'], nargs='?', help = 'What to do: one of {visall (save all plots), embed (drop into shell)}. Default: embed.') args = parser.parse_args() resman.start(args.name, diary = not args.nodiary) saveDir = resman.rundir print 'Loading StackedLayers from %s' % args.stackedLayersFilename sl = loadFromPklGz(args.stackedLayersFilename) print 'Loaded these StackedLayers:' sl.printStatus() if args.command == 'embed': embed() elif args.command == 'visall': sl.visAll(saveDir) else: print 'Unknown command:', args.command resman.stop()
def main(): resman.start('junk', diary = True) params = {} randomParams = False if randomParams: params['hiddenISize'] = random.choice((2, 4, 6, 8, 10, 15, 20)) params['hiddenJSize'] = params['hiddenISize'] params['neighborhoodSize'] = random.choice((.1, .3, .5, .7, 1.0, 1.5, 2.0, 2.5, 3.5, 5.0)) lambd = exp(random.uniform(log(.0001), log(10))) # Uniform in log space params['lambd'] = round(lambd, 1-int(floor(log10(lambd)))) # Just keep two significant figures params['randSeed'] = int(random.uniform(0,9999)) #params['dataWidth'] = random.choice((2, 4)) # just quick #params['dataWidth'] = random.choice((2, 3, 4, 6, 10, 15, 20, 25, 28)) params['dataWidth'] = random.choice((2, 3, 4, 6, 10, 15, 20)) # 25 and 28 are incomplete params['nColors'] = random.choice((1, 3)) else: params['hiddenISize'] = 15 params['hiddenJSize'] = params['hiddenISize'] params['neighborhoodSize'] = 1.0 params['lambd'] = .026 params['randSeed'] = 22 #params['dataWidth'] = random.choice((2, 4)) # just quick #params['dataWidth'] = random.choice((2, 3, 4, 6, 10, 15, 20, 25, 28)) params['dataWidth'] = 10 params['nColors'] = 3 params['isColor'] = (params['nColors'] == 3) params['imgShape'] = ((params['dataWidth'], params['dataWidth'], 3) if params['isColor'] else (params['dataWidth'], params['dataWidth'])) params['maxFuncCalls'] = 300 params['whiten'] = True # Just false for Space Invaders dataset... params['dataCrop'] = None # Set to None to not crop data... paramsRand = params.copy() paramsRand['dataLoader'] = 'loadRandomData' paramsRand['dataPath'] = ('../data/random/randomu01_train_%02d_50000_%dc.pkl.gz' % (paramsRand['dataWidth'], paramsRand['nColors'])) paramsData = params.copy() #paramsData['dataLoader'] = 'loadAtariData' #paramsData['dataPath'] = ('../data/atari/space_invaders_train_%02d_50000_%dc.pkl.gz' # % (paramsData['dataWidth'], paramsData['nColors'])) paramsData['dataLoader'] = 'loadUpsonData3' paramsData['dataPath'] = ('../data/upson_rovio_3/train_%02d_50000_%dc.pkl.gz' % (paramsData['dataWidth'], paramsData['nColors'])) doRand = False if doRand: #resultsRand = reliablyRunTest((0, resman.rundir, '00000_rand', paramsRand, os.getcwd(), os.getenv('DISPLAY',''))) randResultsDir = os.makedirs(resman.rundir, 'rand') runTest(randResultsDir, paramsRand) #resultsData = reliablyRunTest((0, resman.rundir, '00000_data', paramsData, os.getcwd(), os.getenv('DISPLAY',''))) runTest(resman.rundir, paramsData) resman.stop()
def main(): parser = argparse.ArgumentParser(description='Trains a StackedLayers model.') parser.add_argument('layerFilename', type = str, help = 'File defining layers, something like tica-10-15.layers') parser.add_argument('trainParamsFilename', type = str, help = 'File defining training parameters, something like tica-10-15.trainparams') parser.add_argument('--name', type = str, default = 'junk', help = 'Name for GitResultsManager results directory (default: junk)') parser.add_argument('--load', type = str, default = '', help = ('Load a previously created StackedLayers object. This can ' + 'be used to resume training a previously checkpointed, ' + 'partially trained StackedLayers object (default: none)')) parser.add_argument('--maxlayer', type = int, default = -1, help = ('Maximum layer to train, -1 to train all. Can be used to train' + 'only a subset of layers in an otherwise deeper model. Default: -1.')) parser.add_argument('--quick', action='store_true', help = 'Enable quick mode (default: off)') parser.add_argument('--nodiary', action='store_true', help = 'Disable diary (default: diary is on)') args = parser.parse_args() resman.start(args.name, diary = not args.nodiary) saveDir = resman.rundir layerDefinitions = importFromFile(args.layerFilename, 'layers') trainParams = importFromFile(args.trainParamsFilename, 'trainParams') shutil.copyfile(args.layerFilename, os.path.join(saveDir, 'params.layers')) shutil.copyfile(args.trainParamsFilename, os.path.join(saveDir, 'params.trainparams')) # Experiment: train a few Stacked Layers with different ticas assert not args.load, 'Loading does not make sense here.' sls = [] for ii, hiddenWidth in enumerate((8,12,16,20,24,28,32,36,40)): treatmentDir = os.path.join(saveDir, 'treatment_%02d_%d' % (ii, hiddenWidth)) os.mkdir(treatmentDir) print '\n' * 4 + '*' * 40 print 'Treatment %d, width %d (results in %s)' % (ii, hiddenWidth, treatmentDir) print '*' * 40 assert layerDefinitions[2]['type'] == 'tica' layerDefinitions[2]['hiddenSize'] = (hiddenWidth, hiddenWidth) print 'Creating new StackedLayers object' sl = StackedLayers(layerDefinitions) sl.printStatus() sl.train(trainParams, saveDir = treatmentDir, quick = args.quick, maxlayer = args.maxlayer) sls.append(sl) fileFinal = os.path.join(saveDir, 'multiStackedLayers.pkl.gz') saveToFile(fileFinal, sls) resman.stop()
def main(): dirs = [name for name in os.listdir('results') if os.path.isdir(os.path.join('results', name))] print 'last few results:' for dir in sorted(dirs)[-10:]: print ' ' + dir resman.start('junk', diary = False) saveDir = resman.rundir embed() resman.stop()
def main(): resman.start('junk', diary = False) #l1tica = loadFromPklGz('results/130402_033310_44cc757_master_psearchTica_UP/00022_data/tica.pkl.gz') l1tica = loadFromPklGz('results/130406_184751_3d90386_rapidhacks_upson3_1c_l1/tica.pkl.gz') # 1c Upson3 #layer1Whitener = loadFromPklGz('../data/upson_rovio_2/white/train_10_50000_1c.whitener.pkl.gz') layer1Whitener = loadFromPklGz('../data/upson_rovio_3/white/train_10_50000_1c.whitener.pkl.gz') layerSizePlan = [10, 15, 23, 35, 53, 80, 120, 180] stackedTica = StackedTICA(l1tica, layer1Whitener, '../data/upson_rovio_3/imgfiles/', layerSizePlan = layerSizePlan, isColor = False, saveDir = resman.rundir) if False: print 'JUST DEBUG...' pdb.set_trace() tica = stackedTica.ticas[0] pdb.set_trace() return #data,labels,strings = loadUpsonData3('../data/upson_rovio_3/train_10_50000_1c.pkl.gz') #data = loadFromPklGz('../data/upson_rovio_3/white/train_10_50000_1c.white.pkl.gz') #stackedTica.plotResults(resman.rundir, stackedTica.ticas[0], data, (10,10), (15,15)) #pdb.set_trace() params = {} params['hiddenISize'] = 15 params['hiddenJSize'] = params['hiddenISize'] params['neighborhoodSize'] = 1.0 params['lambd'] = .026 params['randSeed'] = 0 #params['dataWidth'] = 10 #params['nColors'] = 1 #params['isColor'] = (params['nColors'] == 3) #params['imgShape'] = ((params['dataWidth'], params['dataWidth'], 3) # if params['isColor'] else # (params['dataWidth'], params['dataWidth'])) params['maxFuncCalls'] = 3 #params['whiten'] = True # Just false for Space Invaders dataset... params['dataCrop'] = None # Set to None to not crop data... #params['dataCrop'] = 10000 # Set to None to not crop data... stackedTica.learnNextLayer(params) #print 'HACK FOR DEBUG' saveToFile(os.path.join(resman.rundir, 'stackedTica.pkl.gz'), stackedTica) # save learned model resman.stop()
def main(): print('This is not logged') resman.start('demo-GRM-module-run') for ii in range(3): print('This is logged', ii) print('This is logged (to stderr)', ii, file=sys.stderr) sleep(1) with open(resman.rundir + '/output_file_1.txt', 'w') as ff: ff.write('test output to file in results directory\n') resman.stop() print('Run finished')
def main(): print('This is not logged') resman.start('demo-GRM-module-run') for ii in range(3): print('This is logged', ii) print('This is logged (to stderr)', ii, file=sys.stderr) sleep(1) with open(resman.rundir + '/output_file_1.txt', 'w') as ff: ff.write('test output to file in results directory\n') resman.stop() print('Run finished')
def main(): dirs = [ name for name in os.listdir('results') if os.path.isdir(os.path.join('results', name)) ] print 'last few results:' for dir in sorted(dirs)[-10:]: print ' ' + dir resman.start('junk', diary=False) saveDir = resman.rundir embed() resman.stop()
def main(): parser = argparse.ArgumentParser( description='Visualizes a trained StackedLayers model.') parser.add_argument( '--name', type=str, default='junk', help='Name for GitResultsManager results directory (default: junk)') #parser.add_argument('--quick', action='store_true', help = 'Enable quick mode (default: off)') parser.add_argument('--nodiary', action='store_true', help='Disable diary (default: diary is on)') parser.add_argument( 'stackedLayersFilename', type=str, help= 'File where a StackedLayers model was stored, something like stackedLayers.pkl.gz' ) parser.add_argument( 'command', type=str, default='embed', choices=['visall', 'embed'], nargs='?', help= 'What to do: one of {visall (save all plots), embed (drop into shell)}. Default: embed.' ) args = parser.parse_args() resman.start(args.name, diary=not args.nodiary) saveDir = resman.rundir print 'Loading StackedLayers from %s' % args.stackedLayersFilename sl = loadFromPklGz(args.stackedLayersFilename) print 'Loaded these StackedLayers:' sl.printStatus() if args.command == 'embed': embed() elif args.command == 'visall': sl.visAll(saveDir) else: print 'Unknown command:', args.command resman.stop()
def main(): parser = argparse.ArgumentParser(description='Visualize performance of different human-activity-detection runs using the generated avg_pr.model.c0.1.e0.01.w3 files (or similar)') parser.add_argument('--name', type = str, default = 'junk', help = 'Name for GitResultsManager results directory (default: junk)') parser.add_argument('--quick', action='store_true', help = 'Enable quick mode (default: off)') parser.add_argument('--nodiary', action='store_true', help = 'Disable diary (default: diary is on)') parser.add_argument('avg_pr_model_file', type = str, nargs = '+', help = 'Which avg_pr.model.c0.1.e0.01.w3 (or similar) files to load. Must give at least one.') args = parser.parse_args() resman.start(args.name, diary = not args.nodiary) visPerf(saveDir = resman.rundir, modelFiles = args.avg_pr_model_file) resman.stop()
def main(): parser = argparse.ArgumentParser(description='Makes features for the human activity deteciton dataset. Example usage:\n./humanObjectFeatures.py /path/to/data_obj_feats.txt') parser.add_argument('--name', type = str, default = 'junk', help = 'Name for GitResultsManager results directory (default: junk)') parser.add_argument('--quick', action='store_true', help = 'Enable quick mode (default: off)') parser.add_argument('--nodiary', action='store_true', help = 'Disable diary (default: diary is on)') #parser.add_argument('stackedLayersFilename', type = str, # help = 'File where a StackedLayers model was stored, something like stackedLayers.pkl.gz') #parser.add_argument('command', type = str, default = 'embed', choices = ['visall', 'embed'], nargs='?', # help = 'What to do: one of {visall (save all plots), embed (drop into shell)}. Default: embed.') parser.add_argument('--stackedlayers', type = str, default = '', help = 'Path to a *.pkl.gz file containing a pickeled StackedLayers object to load (default: None)') parser.add_argument('--fdata', type = str, default = '', help = 'Path to a "..../formatted/data/method_name" directory containing files like 0510175829_1.txt. Needed only if adding truth labels. (default: None)') parser.add_argument('--outfile', type = str, default = 'data_objs_feats_plus.txt', help = 'What to name the output file (default: data_objs_feats_plus.txt)') parser.add_argument('dataDir', type = str, default = 'data', help = 'Where to look for the "by_id" directory') parser.add_argument('data_obj_feats_file', type = str, help = 'Which data_objs_feats.txt file to load') args = parser.parse_args() resman.start(args.name, diary = not args.nodiary) saveDir = resman.rundir #print 'Loading StackedLayers from %s' % args.stackedLayersFilename #sl = loadFromPklGz(args.stackedLayersFilename) #print 'Loaded these StackedLayers:' #sl.printStatus() stackedLayers = None if args.stackedlayers: stackedLayers = loadFromPklGz(args.stackedlayers) makeFeats(dataDir = args.dataDir, featsFilename = args.data_obj_feats_file, saveDir = saveDir, outputFilename = args.outfile, quick = args.quick, stackedLayers = stackedLayers, formattedDataDir = args.fdata, featsBase = True, featsConst = 0, featsRand = 0, featsSL = False, featsTruth = False) resman.stop()
def main(): resman.start('junk', diary = False) stica = loadFromPklGz('results/130407_132841_76b6586_rapidhacks_upson3_1c_l2_first/stackedTica_mod.pkl.gz') layer1Whitener = loadFromPklGz('../data/upson_rovio_3/white/train_10_50000_1c.whitener.pkl.gz') layerSizePlan = [10, 15, 23, 35, 53, 80, 120, 180] visLayer = 1 largeSampleMatrix, labelMatrix, labelStrings = cached(randomSampleMatrixWithLabels, trainFilter, seed = 0, color = False, Nw = layerSizePlan[visLayer], Nsamples = 50000) seed = 0 Nw = layerSizePlan[visLayer-1] # e.g. 10 Nwbig = layerSizePlan[visLayer] # e.g. 15 Nwshift = Nwbig - Nw # e.g. 15 - 10 = 5 Nsamples = 1000 temp = getBigAndSmallerSamples(trainFilter, layer1Whitener, seed, False, Nw, Nwshift, Nsamples) largeSampleMatrix, stackedSmall, stackedSmallWhite, labelMatrix, labelStrings = temp pooled = stica.getRepresentation(largeSampleMatrix) plotTopActivations(pooled, largeSampleMatrix, (Nwbig,Nwbig), resman.rundir, nActivations = 50, nSamples = 20) pl = (pooled.T - pooled.mean(1)).T for ii in range(len(labelStrings)): print 'finding top for', labelStrings[ii] if labelMatrix[ii,:].sum() == 0: print ' skipping, no examples' continue avgActivationForClass = (pl * labelMatrix[ii,:]).mean(1) sortIdx = argsort(avgActivationForClass) topNeurons = sortIdx[-1:-(50+1):-1] plotTopActivations(pooled[topNeurons,:], largeSampleMatrix, (Nwbig,Nwbig), resman.rundir, nActivations = 50, nSamples = 20, prefix = 'topfor_%s' % labelStrings[ii]) resman.stop()
def main(): parser = argparse.ArgumentParser(description='Trains a StackedLayers model.') parser.add_argument('layerFilename', type = str, help = 'File defining layers, something like tica-10-15.layers') parser.add_argument('trainParamsFilename', type = str, help = 'File defining training parameters, something like tica-10-15.trainparams') parser.add_argument('--name', type = str, default = 'junk', help = 'Name for GitResultsManager results directory (default: junk)') parser.add_argument('--load', type = str, default = '', help = ('Load a previously created StackedLayers object. This can ' + 'be used to resume training a previously checkpointed, ' + 'partially trained StackedLayers object (default: none)')) parser.add_argument('--quick', action='store_true', help = 'Enable quick mode (default: off)') parser.add_argument('--nodiary', action='store_true', help = 'Disable diary (default: diary is on)') args = parser.parse_args() resman.start(args.name, diary = not args.nodiary) saveDir = resman.rundir layerDefinitions = importFromFile(args.layerFilename, 'layers') trainParams = importFromFile(args.trainParamsFilename, 'trainParams') shutil.copyfile(args.layerFilename, os.path.join(saveDir, 'params.layers')) shutil.copyfile(args.trainParamsFilename, os.path.join(saveDir, 'params.trainparams')) if args.load: print 'Loading StackedLayers object from %s' % args.load sl = loadFromPklGz(args.load) else: print 'Creating new StackedLayers object' sl = StackedLayers(layerDefinitions) sl.printStatus() sl.train(trainParams, saveDir = saveDir, quick = args.quick) resman.stop()
from util.plotting import tile_raster_images from util.dataLoaders import loadFromPklGz, saveToFile if __name__ == '__main__': resman.start('junk', diary = False) data = loadFromPklGz('../data/upson_rovio_2/train_10_50000_1c.pkl.gz') data = data.T # Make into one example per column #data = data[:,:5000] # HACK!!!!!!!!! nFeatures = 100 lambd = .05 neighborhoodSize = 1.5 print '\nChosen TICA parameters' for key in ['nFeatures', 'lambd']: print ' %20s: %s' % (key, locals()[key]) random.seed(0) rica = RICA(imgShape = (10, 10), nFeatures = nFeatures, lambd = lambd, epsilon = 1e-5, saveDir = resman.rundir) rica.run(data, maxFun = 300, whiten = True, plotEvery = 50) resman.stop()
def main(): resman.start('junk', diary=False) useIpython = True if useIpython: client = Client(profile='ssh') #client = Client() print 'IPython worker ids:', client.ids balview = client.load_balanced_view() resultsFilename = os.path.join(resman.rundir, 'allResults.pkl.gz') NN = 1000 allResults = [[None, None] for ii in range(NN)] experiments = [] cwd = os.getcwd() disp = os.environ['DISPLAY'] for ii in range(NN): params = {} random.seed(ii) params['hiddenISize'] = random.choice((2, 4, 6, 8, 10, 15, 20)) params['hiddenJSize'] = params['hiddenISize'] params['neighborhoodSize'] = random.choice( (.1, .3, .5, .7, 1.0, 1.5, 2.0, 2.5, 3.5, 5.0)) lambd = exp(random.uniform(log(.0001), log(10))) # Uniform in log space params['lambd'] = round( lambd, 1 - int(floor(log10(lambd)))) # Just keep two significant figures params['randSeed'] = ii params['maxFuncCalls'] = 300 #params['dataWidth'] = random.choice((2, 4)) # just quick #params['dataWidth'] = random.choice((2, 3, 4, 6, 10, 15, 20, 25, 28)) params['dataWidth'] = random.choice( (2, 3, 4, 6, 10, 15, 20)) # 25 and 28 are incomplete params['nColors'] = random.choice((1, 3)) params['isColor'] = (params['nColors'] == 3) params['imgShape'] = ((params['dataWidth'], params['dataWidth'], 3) if params['isColor'] else (params['dataWidth'], params['dataWidth'])) params['whiten'] = False # Just false for Space Invaders dataset... params['dataCrop'] = None # Set to None to not crop data... paramsRand = params.copy() paramsRand['dataLoader'] = 'loadRandomData' paramsRand['dataPath'] = ( '../data/random/randomu01_train_%02d_50000_%dc.pkl.gz' % (paramsRand['dataWidth'], paramsRand['nColors'])) paramsData = params.copy() paramsData['dataLoader'] = 'loadAtariData' paramsData['dataPath'] = ( '../data/atari/space_invaders_train_%02d_50000_%dc.pkl.gz' % (paramsData['dataWidth'], paramsData['nColors'])) #paramsData['dataLoader'] = 'loadUpsonData' #paramsData['dataPath'] = ('../data/upson_rovio_2/train_%02d_50000_%dc.pkl.gz' # % (paramsData['dataWidth'], paramsData['nColors'])) if not useIpython: resultsRand = reliablyRunTest(resman.rundir, '%05d_rand' % ii, paramsRand) allResults[ii][0] = {'params': paramsRand, 'results': resultsRand} tmpFilename = os.path.join(resman.rundir, '.tmp.%f.pkl.gz' % time.time()) saveToFile(tmpFilename, allResults) os.rename(tmpFilename, resultsFilename) resultsData = reliablyRunTest(resman.rundir, '%05d_data' % ii, paramsData) allResults[ii][1] = {'params': paramsData, 'results': resultsData} tmpFilename = os.path.join(resman.rundir, '.tmp.%f.pkl.gz' % time.time()) saveToFile(tmpFilename, allResults) os.rename(tmpFilename, resultsFilename) else: experiments.append(((ii, 0), resman.rundir, '%05d_rand' % ii, paramsRand, cwd, disp)) experiments.append(((ii, 1), resman.rundir, '%05d_data' % ii, paramsData, cwd, disp)) # Start all jobs jobMap = balview.map_async(reliablyRunTest, experiments, ordered=False) #jobMap = balview.map_async(reliablyRunTest, range(10), ordered = False) for ii, returnValues in enumerate(jobMap): testId, params, results = returnValues print ii, 'Job', testId, 'finished.' allResults[testId[0]][testId[1]] = { 'params': params, 'results': results } tmpFilename = os.path.join(resman.rundir, '.tmp.%f.pkl.gz' % time.time()) saveToFile(tmpFilename, allResults) os.rename(tmpFilename, resultsFilename) #pdb.set_trace() print 'Finished all jobs.' resman.stop()
def main(): parser = argparse.ArgumentParser( description='Trains a StackedLayers model.') parser.add_argument( 'layerFilename', type=str, help='File defining layers, something like tica-10-15.layers') parser.add_argument( 'trainParamsFilename', type=str, help= 'File defining training parameters, something like tica-10-15.trainparams' ) parser.add_argument( '--name', type=str, default='junk', help='Name for GitResultsManager results directory (default: junk)') parser.add_argument( '--load', type=str, default='', help=('Load a previously created StackedLayers object. This can ' + 'be used to resume training a previously checkpointed, ' + 'partially trained StackedLayers object (default: none)')) parser.add_argument( '--maxlayer', type=int, default=-1, help=( 'Maximum layer to train, -1 to train all. Can be used to train' + 'only a subset of layers in an otherwise deeper model. Default: -1.' )) parser.add_argument('--quick', action='store_true', help='Enable quick mode (default: off)') parser.add_argument('--nodiary', action='store_true', help='Disable diary (default: diary is on)') args = parser.parse_args() resman.start(args.name, diary=not args.nodiary) saveDir = resman.rundir layerDefinitions = importFromFile(args.layerFilename, 'layers') trainParams = importFromFile(args.trainParamsFilename, 'trainParams') shutil.copyfile(args.layerFilename, os.path.join(saveDir, 'params.layers')) shutil.copyfile(args.trainParamsFilename, os.path.join(saveDir, 'params.trainparams')) # Experiment: train a few Stacked Layers with different ticas assert not args.load, 'Loading does not make sense here.' sls = [] for ii, hiddenWidth in enumerate((8, 12, 16, 20, 24, 28, 32, 36, 40)): treatmentDir = os.path.join(saveDir, 'treatment_%02d_%d' % (ii, hiddenWidth)) os.mkdir(treatmentDir) print '\n' * 4 + '*' * 40 print 'Treatment %d, width %d (results in %s)' % (ii, hiddenWidth, treatmentDir) print '*' * 40 assert layerDefinitions[2]['type'] == 'tica' layerDefinitions[2]['hiddenSize'] = (hiddenWidth, hiddenWidth) print 'Creating new StackedLayers object' sl = StackedLayers(layerDefinitions) sl.printStatus() sl.train(trainParams, saveDir=treatmentDir, quick=args.quick, maxlayer=args.maxlayer) sls.append(sl) fileFinal = os.path.join(saveDir, 'multiStackedLayers.pkl.gz') saveToFile(fileFinal, sls) resman.stop()
def main(): parser = argparse.ArgumentParser( description= 'Makes features for the human activity deteciton dataset. Example usage:\n./humanObjectFeatures.py /path/to/data_obj_feats.txt' ) parser.add_argument( '--name', type=str, default='junk', help='Name for GitResultsManager results directory (default: junk)') parser.add_argument('--quick', action='store_true', help='Enable quick mode (default: off)') parser.add_argument('--nodiary', action='store_true', help='Disable diary (default: diary is on)') #parser.add_argument('stackedLayersFilename', type = str, # help = 'File where a StackedLayers model was stored, something like stackedLayers.pkl.gz') #parser.add_argument('command', type = str, default = 'embed', choices = ['visall', 'embed'], nargs='?', # help = 'What to do: one of {visall (save all plots), embed (drop into shell)}. Default: embed.') parser.add_argument( '--stackedlayers', type=str, default='', help= 'Path to a *.pkl.gz file containing a pickeled StackedLayers object to load (default: None)' ) parser.add_argument( '--fdata', type=str, default='', help= 'Path to a "..../formatted/data/method_name" directory containing files like 0510175829_1.txt. Needed only if adding truth labels. (default: None)' ) parser.add_argument( '--outfile', type=str, default='data_objs_feats_plus.txt', help='What to name the output file (default: data_objs_feats_plus.txt)' ) parser.add_argument('dataDir', type=str, default='data', help='Where to look for the "by_id" directory') parser.add_argument('data_obj_feats_file', type=str, help='Which data_objs_feats.txt file to load') args = parser.parse_args() resman.start(args.name, diary=not args.nodiary) saveDir = resman.rundir #print 'Loading StackedLayers from %s' % args.stackedLayersFilename #sl = loadFromPklGz(args.stackedLayersFilename) #print 'Loaded these StackedLayers:' #sl.printStatus() stackedLayers = None if args.stackedlayers: stackedLayers = loadFromPklGz(args.stackedlayers) makeFeats(dataDir=args.dataDir, featsFilename=args.data_obj_feats_file, saveDir=saveDir, outputFilename=args.outfile, quick=args.quick, stackedLayers=stackedLayers, formattedDataDir=args.fdata, featsBase=True, featsConst=0, featsRand=0, featsSL=False, featsTruth=False) resman.stop()