def testGetAllSimilarNodes(self): dummy_sim_matrix_1 = np.array([ [0., 1., 1., 1.], [0., 0., 1., 1.], [0., 0., 0., 1.], [0., 0., 0., 0.]]) dummy_sim_matrix_2 = np.array([ [0., 1., 1., 1.], [0., 0., 0., 1.], [0., 0., 0., 0.], [0., 0., 0., 0.]]) dummy_sim_matrix_3 = np.array([ [0., 1., 0., 0.], [0., 0., 1., 0.], [0., 0., 0., 1.], [0., 0., 0., 0.]]) cols_nodes_map = {0: "a", 1: "b", 2: "c", 3: "d"} # TODO: is this way of similar nodes extraction good? similar_nodes_1_exp = [["a", "b", "c", "d"], ["b", "c", "d"], ["c", "d"]] similar_nodes_2_exp = [["a", "b", "c", "d"], ["b", "d"]] similar_nodes_3_exp = [["a", "b"], ["b", "c"], ["c", "d"]] similar_nodes_1 = similar_nodes_mining.get_all_similar_nodes(dummy_sim_matrix_1, cols_nodes_map) similar_nodes_2 = similar_nodes_mining.get_all_similar_nodes(dummy_sim_matrix_2, cols_nodes_map) similar_nodes_3 = similar_nodes_mining.get_all_similar_nodes(dummy_sim_matrix_3, cols_nodes_map) self.assertEqual(similar_nodes_1_exp, similar_nodes_1, "Wrong similar nodes were extracted.") self.assertEqual(similar_nodes_2_exp, similar_nodes_2, "Wrong similar nodes were extracted.") self.assertEqual(similar_nodes_3_exp, similar_nodes_3, "Wrong similar nodes were extracted.")
def testGetAllSimilarNodes(self): dummy_sim_matrix_1 = np.array([[0., 1., 1., 1.], [0., 0., 1., 1.], [0., 0., 0., 1.], [0., 0., 0., 0.]]) dummy_sim_matrix_2 = np.array([[0., 1., 1., 1.], [0., 0., 0., 1.], [0., 0., 0., 0.], [0., 0., 0., 0.]]) dummy_sim_matrix_3 = np.array([[0., 1., 0., 0.], [0., 0., 1., 0.], [0., 0., 0., 1.], [0., 0., 0., 0.]]) cols_nodes_map = {0: "a", 1: "b", 2: "c", 3: "d"} # TODO: is this way of similar nodes extraction good? similar_nodes_1_exp = [["a", "b", "c", "d"], ["b", "c", "d"], ["c", "d"]] similar_nodes_2_exp = [["a", "b", "c", "d"], ["b", "d"]] similar_nodes_3_exp = [["a", "b"], ["b", "c"], ["c", "d"]] similar_nodes_1 = similar_nodes_mining.get_all_similar_nodes( dummy_sim_matrix_1, cols_nodes_map) similar_nodes_2 = similar_nodes_mining.get_all_similar_nodes( dummy_sim_matrix_2, cols_nodes_map) similar_nodes_3 = similar_nodes_mining.get_all_similar_nodes( dummy_sim_matrix_3, cols_nodes_map) self.assertEqual(similar_nodes_1_exp, similar_nodes_1, "Wrong similar nodes were extracted.") self.assertEqual(similar_nodes_2_exp, similar_nodes_2, "Wrong similar nodes were extracted.") self.assertEqual(similar_nodes_3_exp, similar_nodes_3, "Wrong similar nodes were extracted.")
if __name__ == '__main__': ch_matrix, hypergraph, index_node_map, node_id_map = calculate_ch_matrix() # ch_matrix, hypergraph, index_node_map, node_id_map = load_ch_matrix() sketch_matrix = calculate_sketch_matrix(ch_matrix, hypergraph) # sketch_matrix, index_node_map, node_id_map = load_sketch_matrix() print "Building similarity matrix started at", time.strftime(time_format) start = time.time() sim_mat = similar_nodes_mining.get_node_similarity_matrix(sketch_matrix) print "Building similarity matrix took", time.time() - start, "s" print "-----------------------------------------" print "Extracting similar nodes started at", time.strftime(time_format) start = time.time() similar_nodes = similar_nodes_mining.get_all_similar_nodes( sim_mat, index_node_map) print "Extracting similar nodes took", time.time() - start, "s" print "-----------------------------------------" print "Saving similar nodes started at", time.strftime(time_format) start = time.time() inout.save_to_file(similar_nodes, path + "{0}_similar_nodes".format(dataset)) print "Saving similar nodes took", time.time() - start, "s" print "-----------------------------------------" print "DONE!"
print "-----------------------------------------" return sketch_matrix, index_node_map, node_id_map if __name__ == '__main__': ch_matrix, hypergraph, index_node_map, node_id_map = calculate_ch_matrix() # ch_matrix, hypergraph, index_node_map, node_id_map = load_ch_matrix() sketch_matrix = calculate_sketch_matrix(ch_matrix, hypergraph) # sketch_matrix, index_node_map, node_id_map = load_sketch_matrix() print "Building similarity matrix started at", time.strftime(time_format) start = time.time() sim_mat = similar_nodes_mining.get_node_similarity_matrix(sketch_matrix) print "Building similarity matrix took", time.time() - start, "s" print "-----------------------------------------" print "Extracting similar nodes started at", time.strftime(time_format) start = time.time() similar_nodes = similar_nodes_mining.get_all_similar_nodes(sim_mat, index_node_map) print "Extracting similar nodes took", time.time() - start, "s" print "-----------------------------------------" print "Saving similar nodes started at", time.strftime(time_format) start = time.time() inout.save_to_file(similar_nodes, path + "{0}_similar_nodes".format(dataset)) print "Saving similar nodes took", time.time() - start, "s" print "-----------------------------------------" print "DONE!"