lambdaV = numpy.ones((J,K))/10. priors = { 'alpha':alpha, 'beta':beta, 'lambdaU':lambdaU, 'lambdaV':lambdaV } metrics = ['MSE', 'R^2', 'Rp'] #''' # Load in data R = numpy.loadtxt(input_folder+"R.txt") # Seed all of the methods the same numpy.random.seed(3) # Generate matrices M - one list of M's for each fraction M_attempts = 100 all_Ms = [ [try_generate_M(I,J,fraction,M_attempts) for r in range(0,repeats)] for fraction in fractions_unknown ] all_Ms_test = [ [calc_inverse_M(M) for M in Ms] for Ms in all_Ms ] # Make sure each M has no empty rows or columns def check_empty_rows_columns(M,fraction): sums_columns = M.sum(axis=0) sums_rows = M.sum(axis=1) for i,c in enumerate(sums_rows): assert c != 0, "Fully unobserved row in M, row %s. Fraction %s." % (i,fraction) for j,c in enumerate(sums_columns): assert c != 0, "Fully unobserved column in M, column %s. Fraction %s." % (j,fraction) for Ms,fraction in zip(all_Ms,fractions_unknown): for M in Ms:
priors = {"alpha": alpha, "beta": beta, "lambdaU": lambdaU, "lambdaV": lambdaV} init_UV = "random" minimum_TN = 0.1 metrics = ["MSE", "R^2", "Rp"] # Load in data R_true = numpy.loadtxt(input_folder + "R_true.txt") # For each noise ratio, generate mask matrices for each attempt M_attempts = 100 all_Ms = [[try_generate_M(I, J, fraction_unknown, M_attempts) for r in range(0, repeats)] for noise in noise_ratios] all_Ms_test = [[calc_inverse_M(M) for M in Ms] for Ms in all_Ms] # Make sure each M has no empty rows or columns def check_empty_rows_columns(M, fraction): sums_columns = M.sum(axis=0) sums_rows = M.sum(axis=1) for i, c in enumerate(sums_rows): assert c != 0, "Fully unobserved row in M, row %s. Fraction %s." % (i, fraction) for j, c in enumerate(sums_columns): assert c != 0, "Fully unobserved column in M, column %s. Fraction %s." % (j, fraction) for Ms in all_Ms: for M in Ms: check_empty_rows_columns(M, fraction_unknown)
init_UV = 'exponential' expo_prior = 1 / 10. metrics = ['MSE', 'R^2', 'Rp'] #''' # Load in data R = numpy.loadtxt(input_folder + "R.txt") # Seed all of the methods the same numpy.random.seed(3) # Generate matrices M - one list of M's for each fraction M_attempts = 100 all_Ms = [[ try_generate_M(I, J, fraction, M_attempts) for r in range(0, repeats) ] for fraction in fractions_unknown] all_Ms_test = [[calc_inverse_M(M) for M in Ms] for Ms in all_Ms] # Make sure each M has no empty rows or columns def check_empty_rows_columns(M, fraction): sums_columns = M.sum(axis=0) sums_rows = M.sum(axis=1) for i, c in enumerate(sums_rows): assert c != 0, "Fully unobserved row in M, row %s. Fraction %s." % ( i, fraction) for j, c in enumerate(sums_columns): assert c != 0, "Fully unobserved column in M, column %s. Fraction %s." % ( j, fraction)
lambdaV = numpy.ones((J, K)) / 10. priors = {'alpha': alpha, 'beta': beta, 'lambdaU': lambdaU, 'lambdaV': lambdaV} init_UV = 'random' minimum_TN = 0.1 metrics = ['MSE', 'R^2', 'Rp'] # Load in data R_true = numpy.loadtxt(input_folder + "R_true.txt") # For each noise ratio, generate mask matrices for each attempt M_attempts = 100 all_Ms = [[ try_generate_M(I, J, fraction_unknown, M_attempts) for r in range(0, repeats) ] for noise in noise_ratios] all_Ms_test = [[calc_inverse_M(M) for M in Ms] for Ms in all_Ms] # Make sure each M has no empty rows or columns def check_empty_rows_columns(M, fraction): sums_columns = M.sum(axis=0) sums_rows = M.sum(axis=1) for i, c in enumerate(sums_rows): assert c != 0, "Fully unobserved row in M, row %s. Fraction %s." % ( i, fraction) for j, c in enumerate(sums_columns): assert c != 0, "Fully unobserved column in M, column %s. Fraction %s." % ( j, fraction)