Copy
import torch
import gensim
import torch.nn as nn
wvmodel = gensim.models.KeyedVectors.load_word2vec_format("./data/vector.txt",binary=False,encoding='utf-8')
vocab_size=len(wvmodel)+1
vector_size=wvmodel.vector_size
weight = torch.randn(vocab_size, vector_size)
words=wvmodel.key_to_index
word_to_idx = {word: i+1 for i, word in enumerate(words)}
word_to_idx['<unk>'] = 0
idx_to_word = {i+1: word for i, word in enumerate(words)}
idx_to_word[0] = '<unk>'
for i in range(len(wvmodel.index_to_key)):
try:
index = word_to_idx[wvmodel.index_to_key[i]]
except:
continue
vector=wvmodel.get_vector(idx_to_word[word_to_idx[wvmodel.index_to_key[i]]])
weight[index, :] = torch.from_numpy(vector)
embedding = nn.Embedding.from_pretrained(weight,freeze=True)
embedding
Copy
感谢您的阅读,如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮。本文欢迎各位转载,但是转载文章之后必须在文章页面中给出作者和原文连接。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
2018-03-24 三级网络技术备考