noise = lambda : np.random.normal(scale = NoiseScale),
						matrixNoise = lambda : np.random.normal(scale = matrixNoise),
						batchSize = batchSize,
						type_ = "UniformTheta", 
						signature = AM.signature,
						sparseLevel = sparseLevel,
						poolArticleSize = poolSize, NoiseScale = NoiseScale, epsilon = epsilon, Gepsilon =Gepsilon)

	print "Starting for ", simExperiment.simulation_signature

	for i in range(10):
		algorithms = {}
		
		#algorithms['LinUCB'] = N_LinUCBAlgorithm(dimension = dimension, alpha = alpha, lambda_ = lambda_, n = n_users)
		#algorithms['GOBLin'] = GOBLinAlgorithm( dimension= dimension, alpha = G_alpha, lambda_ = G_lambda_, n = n_users, W = simExperiment.getGW() )
		#algorithms['syncCoLinUCB'] = syncCoLinUCBAlgorithm(dimension=dimension, alpha = alpha, lambda_ = lambda_, n = n_users, W = simExperiment.getW())
		#algorithms['AsyncCoLinUCB_100'] = AsyCoLinUCBAlgorithm(dimension=dimension, alpha = alpha, lambda_ = lambda_, n = n_users, W = simExperiment.getW())
		
		#algorithms['UniformLinUCB'] = Uniform_LinUCBAlgorithm(dimension = dimension, alpha = alpha, lambda_ = lambda_)
		#algorithms['WCoLinUCB'] =  WAlgorithm(dimension = dimension, alpha = alpha, lambda_ = lambda_, eta_ = eta_, n = n_users)
		#algorithms['WknowTheta'] = WknowThetaAlgorithm(dimension = dimension, alpha = alpha, lambda_ = lambda_, eta_ = eta_, n = n_users, theta = simExperiment.getTheta())
		#algorithms['W_W0'] = W_W0_Algorithm(dimension = dimension, alpha = alpha, lambda_ = lambda_, eta_ = eta_, n = n_users, W0 = simExperiment.getW0())

		#algorithms['eGreedy'] = eGreedyAlgorithm(epsilon = eGreedy)
		#algorithms['UCB1'] = UCB1Algorithm()
		userReorderAlgorithms = {}
		userReorderAlgorithms['CoLinReorder_var_noise0.1_100/10'] = AsyCoLinUCBAlgorithm(dimension=dimension, alpha = alpha, lambda_ = lambda_, n = n_users, W = simExperiment.getW())
		#userReorderAlgorithms['LinUCBReorder'] = N_LinUCBAlgorithm(dimension=dimension, alpha = alpha, lambda_ = lambda_, n = n_users)

		
		simExperiment.runAlgorithms(algorithms)
Exemplo n.º 2
0
 fileNameWriteCluster = os.path.join(Kmeansdata_address, '10kmeans_model160.dat.'+str(clusterNum)+ '.max_observation')
 userFeatureVectors = getClusters(fileNameWriteCluster)    
 userNum = clusterNum
 if DiagType == 'Orgin':
     W = initializeW(userFeatureVectors, SparsityLevel)
 elif DiagType == 'Opt':
     W = initializeW_opt(userFeatureVectors, SparsityLevel)   # Generate user relation matrix
 GW = initializeGW(W , epsilon)
  
 articles_random = randomStruct()
 algorithms = {}
 runCoLinUCB = runGOBLin = runLinUCB = run_M_LinUCB = run_Uniform_LinUCB= run_CFUCB = run_CFEgreedy = run_SGDEgreedy = run_PTS = run_TCF = False
 if args.alg:
     if args.alg == 'CoLinUCB' or args.alg == 'CoLin':
         runCoLinUCB = True
         algorithms['CoLin'] = AsyCoLinUCBAlgorithm(dimension=context_dimension, alpha = alpha, lambda_ = lambda_, n = userNum, W = W)
     elif args.alg == 'GOBLin':
         runGOBLin = True
         algorithms['GOBLin'] = GOBLinAlgorithm(dimension=context_dimension, alpha = alpha, lambda_ = lambda_, n = userNum, W = GW)
     elif args.alg == 'LinUCB':
         runLinUCB = True
         algorithms['LinUCB'] = N_LinUCBAlgorithm(dimension = context_dimension, alpha = alpha, lambda_ = lambda_, n = clusterNum)
     elif args.alg =='M_LinUCB':
         run_M_LinUCB = True
     elif args.alg == 'Uniform_LinUCB':
         run_Uniform_LinUCB = True
     elif args.alg == 'factorLinUCB':
         run_factorLinUCB = True
         if not args.dimension:
             dimension = 5
         else:
Exemplo n.º 3
0
    # algorithms['CFEgreedy'] = CFEgreedyAlgorithm(context_dimension = context_dimension, latent_dimension = latent_dimension, alpha = alpha, lambda_ = lambda_, n = n_users, itemNum=n_articles, init='random')

    # algorithms['UCBPMF0.1'] = UCBPMFAlgorithm(dimension = 10, n = n_users, itemNum=n_articles, sigma = np.sqrt(.5), sigmaU = 1, sigmaV = 1, alpha = 0.1)
    algorithms['CFUCB'] = CFUCBAlgorithm(context_dimension=context_dimension,
                                         latent_dimension=5,
                                         alpha=0.1,
                                         alpha2=0.1,
                                         lambda_=lambda_,
                                         n=n_users,
                                         itemNum=n_articles,
                                         init='zero',
                                         window_size=-1)

    algorithms['AsyncCoLinUCB'] = AsyCoLinUCBAlgorithm(
        dimension=context_dimension,
        alpha=alpha,
        lambda_=lambda_,
        n=n_users,
        W=simExperiment.getW())

    algorithms['FactorLinUCBAlgorithm'] = FactorLinUCBAlgorithm(
        context_dimension=context_dimension,
        latent_dimension=5,
        alpha=0.1,
        alpha2=0.1,
        lambda_=lambda_,
        n=n_users,
        itemNum=n_articles,
        W=simExperiment.getW(),
        init='zero',
        window_size=-1)