You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写函数实现基于GloVe模型的单词转向量功能?

实现单词转GloVe向量的函数

你可以通过以下方式实现目标函数,核心利用gensim加载的GloVe模型的下标访问特性,同时加入异常处理避免单词不在词汇表时引发报错:

基础实现版本

def convert_word_to_vec(word, model):
    try:
        # 直接通过模型下标获取单词对应的向量
        return model[word]
    except KeyError:
        # 处理单词不在词汇表的情况
        print(f"警告:单词 '{word}' 不在当前GloVe模型的词汇表中")
        return None

调用注意事项

调用时要确保传入的单词是字符串类型,正确的调用方式是:

convert_word_to_vec("lol", model)

如果像你示例里那样写convert_word_to_vec(lol, model),Python会把lol当成变量而非字符串,会引发NameError,这点需要注意。

可选:返回零向量替代None

如果希望单词不在词汇表时返回一个和模型向量维度一致的零向量,可以修改函数如下(需要提前导入numpy):

import numpy as np

def convert_word_to_vec(word, model):
    try:
        return model[word]
    except KeyError:
        print(f"警告:单词 '{word}' 不在当前GloVe模型的词汇表中")
        # 返回与模型向量维度相同的零向量
        return np.zeros(model.vector_size)

内容的提问来源于stack exchange,提问作者quickhelp

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 21:35:20