Example #1
0
def compute_ghcm_mdt_one_user(user_id):
    file_name = "ghcm_mdt_user_" + str(user_id)
    print "loading matrix user " + str(user_id) + "..."
    [rfvdata, featuresnames, valuesnames,
     recordsdates] = RVFDataExtractor.load_rvf(user_id)
    print "values" + JsonUtils.dict_as_json_str(valuesnames)
    print "data" + JsonUtils.dict_as_json_str(rfvdata[0])
    vocab_size = [len(valuesnames[f]) for f in range(len(valuesnames.keys()))]
    print "user " + str(user_id) + " has " + str(
        len(featuresnames)) + " features and " + str(len(rfvdata)) + " records"
    print "features names"
    print featuresnames

    print "values" + JsonUtils.dict_as_json_str(valuesnames)
    for k in [10, 20, 30]:
        #compute the ghcm_mdt
        ghcm_mdt_comp = GHCM_MDTComputer(rfvdata, k, vocab_size)
        print "computing SVD for user " + str(user_id) + "..."
        ghcm_mdt_comp.compute()

        print "constructing interpretable output for user " + str(
            user_id) + "..."
        ghcm_mdt_comp.construct_rows_interpretable_output(
            featuresnames, valuesnames, disp_m)
        r_output = ghcm_mdt_comp.rows_interpretable_output

        #write the result
        print "writing SVD result for user " + str(user_id) + "..."
        JsonLogsFileWriter.write(r_output, file_name)
Example #2
0
def compute_lcbmf_one_user(user_id):
    file_name = "lcbmf_user_" + str(user_id)
    print "loading matrix user " + str(user_id) + "..."
    data_matrix = MDataExtractor.load_matrix(user_id)
    rows_labels = MDataExtractor.load_labels_vector(user_id)
    columns_labels = MDataExtractor.load_time_vector(user_id)
    importance_scores = MDataExtractor.load_importance_scores(user_id)

    print "user " + str(user_id) + " has " + str(
        len(rows_labels)) + " features (rows) and " + str(
            len(columns_labels)) + " realization (columns)"

    #compute the lcbmf
    lcbmf_comp = LCBMFComputer(data_matrix, "idf", "[0,1]", "positive, sum=1",
                               10)
    print "computing LCBMF for user " + str(user_id) + "..."
    lcbmf_comp.compute()

    print "constructing interpretable output for user " + str(user_id) + "..."
    lcbmf_comp.construct_rows_interpretable_output(rows_labels, disp_m)
    r_output = lcbmf_comp.rows_interpretable_output

    #write the result
    print "writing LCBMF result for user " + str(user_id) + "..."
    JsonLogsFileWriter.write(r_output, file_name)
def compute_lcbmf_one_user(user_id):
	file_name = "lcbmf_user_"+str(user_id)
	print "loading matrix user "+str(user_id)+"..."
	data_matrix = MDataExtractor.load_matrix(user_id)
	rows_labels =  MDataExtractor.load_labels_vector(user_id)
	columns_labels = MDataExtractor.load_time_vector(user_id)
	importance_scores = MDataExtractor.load_importance_scores(user_id)
	
	print "user "+str(user_id)+" has "+str(len(rows_labels))+" features (rows) and "+str(len(columns_labels))+" realization (columns)"
	
	#compute the lcbmf
	lcbmf_comp = LCBMFComputer(data_matrix, "idf", "[0,1]", "positive, sum=1", 10)
	print "computing LCBMF for user "+str(user_id)+"..."
	lcbmf_comp.compute()
	
	
	print "constructing interpretable output for user "+str(user_id)+"..."
	lcbmf_comp.construct_rows_interpretable_output(rows_labels, disp_m)
	r_output = lcbmf_comp.rows_interpretable_output
	
	#write the result
	print "writing LCBMF result for user "+str(user_id)+"..."
	JsonLogsFileWriter.write(r_output, file_name)
	
	
	
	
	
		
	
	
	
def compute_ghcm_mdt_one_user(user_id):
	file_name = "ghcm_mdt_user_"+str(user_id)
	print "loading matrix user "+str(user_id)+"..."
	[rfvdata, featuresnames, valuesnames, recordsdates] = RVFDataExtractor.load_rvf(user_id)
	print "values" + JsonUtils.dict_as_json_str(valuesnames)
	print "data" + JsonUtils.dict_as_json_str(rfvdata[0])
	vocab_size = [len(valuesnames[f]) for f in range(len(valuesnames.keys()))]
	print "user "+str(user_id)+" has "+str(len(featuresnames))+" features and "+str(len(rfvdata))+" records"
	print "features names"
	print featuresnames
	
	print "values" + JsonUtils.dict_as_json_str(valuesnames)
	for k in [10,20,30]:
		#compute the ghcm_mdt
		ghcm_mdt_comp = GHCM_MDTComputer(rfvdata, k, vocab_size)
		print "computing SVD for user "+str(user_id)+"..."
		ghcm_mdt_comp.compute()
		
		print "constructing interpretable output for user "+str(user_id)+"..."
		ghcm_mdt_comp.construct_rows_interpretable_output(featuresnames, valuesnames, disp_m)
		r_output = ghcm_mdt_comp.rows_interpretable_output
		
		#write the result
		print "writing SVD result for user "+str(user_id)+"..."
		JsonLogsFileWriter.write(r_output, file_name)
def compute_svd_one_user(user_id):
	file_name = "svd_user_"+str(user_id)
	print "loading matrix user "+str(user_id)+"..."
	data_matrix = MDataExtractor.load_matrix(user_id)
	rows_labels =  MDataExtractor.load_labels_vector(user_id)
	columns_labels = MDataExtractor.load_time_vector(user_id)
	importance_scores = MDataExtractor.load_importance_scores(user_id)
	
	print "user "+str(user_id)+" has "+str(len(rows_labels))+" features (rows) and "+str(len(columns_labels))+" realization (columns)"
	
	#do the idf / or idc transformation before computing the SVD
	print "doing idf transformation for user "+str(user_id)+"..."
	document_transformed_matrix = np.copy(data_matrix)
	[document_transformed_matrix, scores] = Numpy.idf_matrix_transformation(data_matrix, time_dimention, do_laplace_smoothing)
	#[document_transformed_matrix, scores] = Numpy.idc_matrix_transformation(data_matrix, time_dimention, do_laplace_smoothing)
	#[document_transformed_matrix, scores] = Numpy.idf3_matrix_transformation(data_matrix, time_dimention, do_laplace_smoothing)
	#[document_transformed_matrix, scores] = Numpy.ldc_matrix_transformation(data_matrix, time_dimention)
	
	term_transformed_matrix = np.ones(np.shape(data_matrix))
	#term_transformed_matrix = Numpy.ti_matrix_transformation(data_matrix, importance_scores)	
	#term_transformed_matrix = Numpy.nti_matrix_transformation(data_matrix,  importance_scores)
	
	data_matrix = document_transformed_matrix * term_transformed_matrix
	
	#compute the SVD
	svd_comp = SVDComputer(data_matrix, rows_labels, columns_labels)
	print "computing SVD for user "+str(user_id)+"..."
	svd_comp.compute_svd()
	
	print "constructing interpretable output for user "+str(user_id)+"..."
	energy_captured = svd_comp.construct_rows_interpretable_output(disp_k, disp_m)
	r_output = svd_comp.rows_interpretable_output
	
	print "the energy captured with "+str(disp_k)+" concepts is "+str(energy_captured)+" %"
	
	#write the result
	print "writing SVD result for user "+str(user_id)+"..."
	JsonLogsFileWriter.write(r_output, file_name)
	
	
	
	
	
		
	
	
	
Example #6
0
def compute_svd_one_user(user_id):
    file_name = "svd_user_" + str(user_id)
    print "loading matrix user " + str(user_id) + "..."
    data_matrix = MDataExtractor.load_matrix(user_id)
    rows_labels = MDataExtractor.load_labels_vector(user_id)
    columns_labels = MDataExtractor.load_time_vector(user_id)
    importance_scores = MDataExtractor.load_importance_scores(user_id)

    print "user " + str(user_id) + " has " + str(
        len(rows_labels)) + " features (rows) and " + str(
            len(columns_labels)) + " realization (columns)"

    #do the idf / or idc transformation before computing the SVD
    print "doing idf transformation for user " + str(user_id) + "..."
    document_transformed_matrix = np.copy(data_matrix)
    [document_transformed_matrix,
     scores] = Numpy.idf_matrix_transformation(data_matrix, time_dimention,
                                               do_laplace_smoothing)
    #[document_transformed_matrix, scores] = Numpy.idc_matrix_transformation(data_matrix, time_dimention, do_laplace_smoothing)
    #[document_transformed_matrix, scores] = Numpy.idf3_matrix_transformation(data_matrix, time_dimention, do_laplace_smoothing)
    #[document_transformed_matrix, scores] = Numpy.ldc_matrix_transformation(data_matrix, time_dimention)

    term_transformed_matrix = np.ones(np.shape(data_matrix))
    #term_transformed_matrix = Numpy.ti_matrix_transformation(data_matrix, importance_scores)
    #term_transformed_matrix = Numpy.nti_matrix_transformation(data_matrix,  importance_scores)

    data_matrix = document_transformed_matrix * term_transformed_matrix

    #compute the SVD
    svd_comp = SVDComputer(data_matrix, rows_labels, columns_labels)
    print "computing SVD for user " + str(user_id) + "..."
    svd_comp.compute_svd()

    print "constructing interpretable output for user " + str(user_id) + "..."
    energy_captured = svd_comp.construct_rows_interpretable_output(
        disp_k, disp_m)
    r_output = svd_comp.rows_interpretable_output

    print "the energy captured with " + str(disp_k) + " concepts is " + str(
        energy_captured) + " %"

    #write the result
    print "writing SVD result for user " + str(user_id) + "..."
    JsonLogsFileWriter.write(r_output, file_name)