def synonyms_by_synset(self, synset_name, topn=3):
ssid = self.id_table[synset_name]
doc = self.doc_matrix[ssid]
found_indices = set([ssid])
synonyms = []
for _ in range(topn):
min_index = 0
min_val = 10
for i in range(self.doc_matrix.shape[0]):
cos_dist = cosine(self.doc_matrix[i], doc)
if i not in found_indices and cos_dist < min_val:
min_index = i
min_val = cos_dist
found_indices.add(min_index)
synonyms.append((self.definitions[min_index], min_val))
return synonyms
评论列表
文章目录