def kNN_relation_name(self, name, src_lan='en', tgt_lan='fr', topk=10, method=0):
model = self.models.get(src_lan)
if model == None:
print "Model for language", src_lan," does not exist."
return None
id = model.r2vec.get(name)
if id == None:
print name," is not in vocab"
return None
if src_lan != tgt_lan:#if you're not quering the kNN in the same language, then no need to get rid of the "self" point
pass_vec = np.dot(model.vec_r[id], self.transfer[src_lan + tgt_lan])
pass_vec /= LA.norm(pass_vec)
return self.kNN_relation(pass_vec, tgt_lan, topk, method, self_vec_id=None)
return self.kNN_relation(model.vec_r[id], tgt_lan, topk, method, self_vec_id=id)
#entity name to vector
评论列表
文章目录