MMTransE.py 文件源码

python
阅读 28 收藏 0 点赞 0 评论 0

项目:MTransE 作者: muhaochen 项目源码 文件源码
def kNN_entity_name(self, name, src_lan='en', tgt_lan='fr', topk=10, method=0, replace=True):
        model = self.models.get(src_lan)
        if model == None:
            print "Model for language", src_lan," does not exist."
            return None
        id = model.e2vec.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. However, transfer the vector.          
            pass_vec = np.dot(model.vec_e[id], self.transfer[src_lan + tgt_lan])
            pass_vec /= LA.norm(pass_vec)
            return self.kNN_entity(pass_vec, tgt_lan, topk, method, self_vec_id=None, replace_q=replace)
        return self.kNN_entity(model.vec_e[id], tgt_lan, topk, method, self_vec_id=id, replace_q=replace)

    #return k nearest relations to a given vector (np.array)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号