dataset = "movielens" saveResults = False prefix = "LearningRate2" outputFile = PathDefaults.getOutputDir() + "ranking/" + prefix + dataset.title() + "Results.npz" X = DatasetUtils.getDataset(dataset) m, n = X.shape k2 = 64 u2 = 5/float(n) w2 = 1-u2 eps = 10**-8 lmbda = 0.01 maxLocalAuc = MaxLocalAUC(k2, w2, eps=eps, lmbdaU=0.1, lmbdaV=0.1, stochastic=True) maxLocalAuc.alpha = 0.5 maxLocalAuc.alphas = 2.0**-numpy.arange(2, 9, 2) maxLocalAuc.beta = 2 maxLocalAuc.bound = False maxLocalAuc.delta = 0.1 maxLocalAuc.eta = 20 maxLocalAuc.folds = 2 maxLocalAuc.initialAlg = "svd" maxLocalAuc.itemExpP = 0.0 maxLocalAuc.itemExpQ = 0.0 maxLocalAuc.ks = numpy.array([4, 8, 16, 32, 64, 128]) maxLocalAuc.lmbdas = 2.0**-numpy.arange(1, 5) maxLocalAuc.loss = "hinge" maxLocalAuc.maxIterations = 500 maxLocalAuc.maxNorm = 100 maxLocalAuc.metric = "f1" maxLocalAuc.normalise = False
w = 1-u testSize = 5 folds = 5 trainTestXs = Sampling.shuffleSplitRows(X, folds, testSize) numRecordAucSamples = 200 k2 = 8 u2 = 0.5 w2 = 1-u2 eps = 10**-4 lmbda = 0.0 maxLocalAuc = MaxLocalAUC(k2, w2, eps=eps, lmbdaU=lmbda, lmbdaV=lmbda, stochastic=True) maxLocalAuc.alpha = 0.05 maxLocalAuc.alphas = 2.0**-numpy.arange(0, 5, 1) maxLocalAuc.folds = 1 maxLocalAuc.initialAlg = "rand" maxLocalAuc.itemExpP = 0.0 maxLocalAuc.itemExpQ = 0.0 maxLocalAuc.ks = numpy.array([k2]) maxLocalAuc.lmbdas = numpy.linspace(0.5, 2.0, 7) maxLocalAuc.maxIterations = 500 maxLocalAuc.metric = "f1" maxLocalAuc.normalise = True maxLocalAuc.numAucSamples = 10 maxLocalAuc.numProcesses = 1 maxLocalAuc.numRecordAucSamples = 100 maxLocalAuc.numRowSamples = 30 maxLocalAuc.rate = "constant" maxLocalAuc.recordStep = 10
if len(sys.argv) > 1: dataset = sys.argv[1] else: dataset = "flixster" saveResults = True prefix = "ModelSelect" outputFile = PathDefaults.getOutputDir() + "ranking/" + prefix + dataset.title() + "Results.npz" u = 0.1 w = 1-u k2 = 64 eps = 10**-6 maxLocalAuc = MaxLocalAUC(k2, w, eps=eps, stochastic=True) maxLocalAuc.alpha = 0.1 maxLocalAuc.alphas = 2.0**-numpy.arange(1, 7, 1) maxLocalAuc.folds = 1 maxLocalAuc.initialAlg = "rand" maxLocalAuc.itemExpP = 0.0 maxLocalAuc.itemExpQ = 0.0 maxLocalAuc.ks = numpy.array([k2]) maxLocalAuc.lmbdas = 2.0**-numpy.arange(1, 6) maxLocalAuc.lmbdaU = 0.25 maxLocalAuc.lmbdaV = 0.25 maxLocalAuc.loss = "hinge" maxLocalAuc.maxIterations = 500 maxLocalAuc.maxNormU = 100 maxLocalAuc.maxNormV = 100 maxLocalAuc.metric = "f1" maxLocalAuc.normalise = True maxLocalAuc.numAucSamples = 10