import pickle import socket import datetime import numpy ### import sys import os sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)),os.pardir)) ### import helperFunctions import datasetAcquisition ### if len(sys.argv) != 2: raise Exception('No config file given!') print '' print ' -- config -- ' print '' defaultFname = os.path.join(os.path.dirname(sys.argv[1]),os.pardir,'setup.cfg') if not os.path.isfile(defaultFname): defaultFname = sys.argv[1] expSetup = helperFunctions.getConfig(sys.argv[1], 'experiment', 'extExpSetup', defaultFname, 'str', True) numRndInits = helperFunctions.getConfig(expSetup, 'experiment', 'numRndInits', None, 'int', True) numInitSamples = helperFunctions.getConfig(expSetup, 'experiment', 'numInitSamples', None, 'int', True) numTestSamples = helperFunctions.getConfig(expSetup, 'experiment', 'numTestSamples', None, 'int', True) indicesFileName = helperFunctions.getConfig(expSetup, 'experiment', 'indicesFileName', None, 'str', True) print '' print 'host:', socket.gethostname() print 'pid:', os.getpid() print 'now:', datetime.datetime.strftime(datetime.datetime.now(), '%d.%m.%Y %H:%M:%S') print 'git:', helperFunctions.getGitHash() print '' sys.stdout.flush() ### #trainIdxs = numpy.empty((numTasks,numRndInits,numInitCls*numInitSamplesPerCls), dtype=numpy.int) #testIdxs = numpy.empty((numTasks,numRndInits,numCls*numTestSamplesPerCls), dtype=numpy.int) trainIdxs = list() testIdxs = list() ### x,y = datasetAcquisition.readData(expSetup) for rndIdx in range(numRndInits): rndIdxs = numpy.random.permutation(y.shape[0]) trainIdxs.append(rndIdxs[:numInitSamples]) testIdxs.append(rndIdxs[numInitSamples+1:numInitSamples+numTestSamples+1]) ### out = open(indicesFileName, 'w') pickle.dump({'trainIdxs': trainIdxs, 'testIdxs': testIdxs}, out) out.close() print '' print 'done'