#Device to run on
    'device': '/gpu:1',
    #####ISTA PARAMS######
    'numIterations': 1000000,
    'displayPeriod': 200,
    #Batch size
    'batchSize': 32,
    #Learning rate for optimizer
    'learningRateA': 1e-3,
    'learningRateW': 1,
    #Lambda in energy function
    'thresh': .02,
    #Number of features in V1
    'numV': 256,
    #Stride of V1
    'VStrideY': 2,
    'VStrideX': 2,
    #Patch size
    'patchSizeY': 12,
    'patchSizeX': 12,
}

#Allocate tensorflow object
tfObj = AdamSP(params, trainDataObj)
print("Done init")

tfObj.runModel()
print("Done run")

tfObj.closeSess()
    'device':          '/gpu:1',
    #####ISTA PARAMS######
    'numIterations':   1000000,
    'displayPeriod':   200,
    #Batch size
    'batchSize':       32,
    #Learning rate for optimizer
    'learningRateA':   1e-3,
    'learningRateW':   1,
    #Lambda in energy function
    'thresh':          .02,
    #Number of features in V1
    'numV':            256,
    #Stride of V1
    'VStrideY':        2,
    'VStrideX':        2,
    #Patch size
    'patchSizeY':      12,
    'patchSizeX':      12,
}

#Allocate tensorflow object
tfObj = AdamSP(params, trainDataObj)
print "Done init"

tfObj.runModel()
print "Done run"

tfObj.closeSess()

    'device':          '/gpu:1',
    #####ISTA PARAMS######
    'numIterations':   6250,
    'displayPeriod':   200,
    #Batch size
    'batchSize':       8,
    #Learning rate for optimizer
    'learningRateA':   1e-3,
    'learningRateW':   1,
    #Lambda in energy function
    'thresh':          .02,
    #Number of features in V1
    'numV':            256,
    #Stride of V1
    'VStrideY':        2,
    'VStrideX':        2,
    #Patch size
    'patchSizeY':      12,
    'patchSizeX':      12,
}

#Allocate tensorflow object
tfObj = AdamSP(params, testDataObj)
print "Done init"
outFilename = params["outDir"] + params["runDir"] + "test_adam_cifar_256_eval.pvp"
tfObj.evalSet(testDataObj, outFilename)
print "Done run"

tfObj.closeSess()

    'device': '/gpu:1',
    #####ISTA PARAMS######
    'numIterations': 6250,
    'displayPeriod': 200,
    #Batch size
    'batchSize': 8,
    #Learning rate for optimizer
    'learningRateA': 1e-3,
    'learningRateW': 1,
    #Lambda in energy function
    'thresh': .02,
    #Number of features in V1
    'numV': 256,
    #Stride of V1
    'VStrideY': 2,
    'VStrideX': 2,
    #Patch size
    'patchSizeY': 12,
    'patchSizeX': 12,
}

#Allocate tensorflow object
tfObj = AdamSP(params, testDataObj)
print "Done init"
outFilename = params["outDir"] + params[
    "runDir"] + "test_adam_cifar_256_eval.pvp"
tfObj.evalSet(testDataObj, outFilename)
print "Done run"

tfObj.closeSess()