|
@@ 90-112 (lines=23) @@
|
| 87 |
|
return dist |
| 88 |
|
|
| 89 |
|
|
| 90 |
|
def get_ground_truth_l2(topk, idx, vct_nq): |
| 91 |
|
filenames = os.listdir(BASE_FOLDER_NAME) |
| 92 |
|
filenames.sort() |
| 93 |
|
no_dist = {} |
| 94 |
|
k = 0 |
| 95 |
|
for filename in filenames: |
| 96 |
|
vec_list = load_vec_list(BASE_FOLDER_NAME + '/' + filename) |
| 97 |
|
for j in range(len(vec_list)): |
| 98 |
|
dist = calEuclideanDistance(vct_nq, vec_list[j]) |
| 99 |
|
num_j = "%01d%03d%06d" % (8, k, j) |
| 100 |
|
if k==0 and j<topk : |
| 101 |
|
no_dist[num_j] = dist |
| 102 |
|
else: |
| 103 |
|
# sorted by values |
| 104 |
|
max_key = max(no_dist, key=no_dist.get) |
| 105 |
|
max_value = no_dist[max_key] |
| 106 |
|
if dist < max_value: |
| 107 |
|
m = no_dist.pop(max_key) |
| 108 |
|
no_dist[num_j] = dist |
| 109 |
|
k += 1 |
| 110 |
|
no_dist = sorted(no_dist.items(), key=lambda x: x[1]) |
| 111 |
|
print(no_dist) |
| 112 |
|
save_gt_file(no_dist, idx) |
| 113 |
|
|
| 114 |
|
|
| 115 |
|
def get_ground_truth_ip(topk, idx, vct_nq): |
|
@@ 115-136 (lines=22) @@
|
| 112 |
|
save_gt_file(no_dist, idx) |
| 113 |
|
|
| 114 |
|
|
| 115 |
|
def get_ground_truth_ip(topk, idx, vct_nq): |
| 116 |
|
filenames = os.listdir(BASE_FOLDER_NAME) # get the whole file names |
| 117 |
|
filenames.sort() |
| 118 |
|
no_dist = {} |
| 119 |
|
k = 0 |
| 120 |
|
for filename in filenames: |
| 121 |
|
vec_list = load_vec_list(BASE_FOLDER_NAME + '/' + filename) |
| 122 |
|
for j in range(len(vec_list)): |
| 123 |
|
dist = calInnerDistance(vct_nq, vec_list[j]) |
| 124 |
|
num_j = "%03d%06d" % (k, j) |
| 125 |
|
if k==0 and j<topk : |
| 126 |
|
no_dist[num_j] = dist |
| 127 |
|
else: |
| 128 |
|
min_key = min(no_dist, key=no_dist.get) |
| 129 |
|
min_value = no_dist[min_key] |
| 130 |
|
if dist > min_value: |
| 131 |
|
m = no_dist.pop(min_key) |
| 132 |
|
no_dist[num_j] = dist |
| 133 |
|
k += 1 |
| 134 |
|
no_dist = sorted(no_dist.items(), key=lambda x: x[1], reverse=True) |
| 135 |
|
print(no_dist) |
| 136 |
|
save_gt_file(no_dist, idx) |
| 137 |
|
|
| 138 |
|
|
| 139 |
|
def get_ground_truth_tanimoto(topk, idx, vec_nq): |