Example #1
0
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:
Example #2
0
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)
Example #3
0
File: nmf_np.py Project: MXDC/BNMTF
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)
Example #4
0
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)