Exemple #1
0
final_mrr = 0.0
final_time = 0

all_metric_file = "./OneCons_eval/embed_all_metric_normal.txt"

print("Start")
for r_name in r_name_list:
    print("Cal {}".format(r_name))
    res_folder = "./OneCons_eval/{}/".format(r_name.split(":")[-1])
    util.createFolder(res_folder)
    metric_file = "{}embed_metric.txt".format(res_folder)

    ht_file = res_folder + "ht.txt"
    h_id_list, t_id_list = load_ht_from_file(ht_file, graph)

    r_id = graph.r_id_by_name(r_name)
    r_id_list = [r_id] * len(h_id_list)

    map_r, mrr_r, hits10_r, mean_rank_r, avg_time = graph.ekg.get_map_mrr_hits10_meanRank_avg_time_embed_1cons(
        h_id_list, r_id_list, t_id_list)

    final_map += map_r
    final_hits10 += hits10_r
    final_mrr += mrr_r
    final_time += avg_time

    print("map:{}\tmrr:{}\thits10:{}\tavg time:{}".format(
        map_r, mrr_r, hits10_r, avg_time))

    with open(metric_file, 'w', encoding="UTF-8") as f:
        f.write("hits10\t{}\n".format(hits10_r))
Exemple #2
0
graph.e2idx_file = search_folder + "entity2id.txt"
graph.r2idx_file = search_folder + "relation2id.txt"
graph.triple2idx_file = search_folder + "triple2id.txt"

graph.load_data()

r_name_list = []
r_idx_list = []

for sparql in eaqs:
    sp = SparqlParser(sparql=sparql)
    sp.parse_sparql()
    for relation in sp.r_name_list:
        r_name_list.append(relation)
    r_name_list = list(set(r_name_list))
r_idx_list = [graph.r_id_by_name(r_name) for r_name in r_name_list]

for r_name in r_name_list:
    res_folder = "./OneCons_eval/{}/".format(r_name.split(":")[-1])
    util.createFolder(res_folder)
    res_file = "{}ht.txt".format(res_folder)

    r_id = graph.r_id_by_name(r_name)
    ht_id_list = random.sample(graph.r2ht[r_id], 1000)
    h_id_list = [ht_id[0] for ht_id in ht_id_list]
    t_id_list_list = []
    for h_id in h_id_list:
        t_id_list_list.append(graph.node_dict[h_id].get_r_value(r_id))

    with open(res_file, 'w', encoding="UTF-8") as f:
        f.write("{}\n".format(r_name))
Exemple #3
0
graph.e2idx_file = search_folder + "entity2id.txt"
graph.r2idx_file = search_folder + "relation2id.txt"
graph.triple2idx_file = search_folder + "triple2id.txt"

graph.load_data()

r_name_list = []
r_idx_list = []

for sparql in eaqs:
    sp = SparqlParser(sparql=sparql)
    sp.parse_sparql()
    for relation in sp.r_name_list:
        r_name_list.append(relation)
    r_name_list = list(set(r_name_list))
r_idx_list = [graph.r_id_by_name(r_name) for r_name in r_name_list]

final_map_r = 0.0
final_hits10_r = 0.0
final_mrr_r = 0.0
final_time = 0

all_metric_file = "./OneCons_eval/pra_all_metric_normal.txt"

for r_name in r_name_list:
    graph.rule_file = "../../MyData/DBO/United_States/model/{}/rule.txt".format(
        r_name.split(":")[-1])
    graph.model_file = "../../MyData/DBO/United_States/model/{}/{}_model.tar".format(
        r_name.split(":")[-1], pca_or_cwa)
    graph.rule_num_to_use_file = "../../MyData/DBO/United_States/model/{}/rule_num_to_use.txt".format(
        r_name.split(":")[-1])