# import gensim
# from gensim.models import KeyedVectors
# model = KeyedVectors.load_word2vec_format( \
# os.path.join(300,'wordmodel','sgns.baidubaike.bigram-char'),binary = False, encoding = "utf-8", unicode_errors = "ignore")
import numpy as np
import os
vocab_to_index = {"我":0,"开心":1,"快乐":2}
size_vocab = len(vocab_to_index)#字典大小
embeddings = np.zeros((size_vocab, 300))#初始化数组 为零,300维
found=0#匹配到的词向量个数
with open(r'sgns.baidubaike.bigram-char','r',encoding='utf-8') as f:#读取预训练词向量文件
for line_idx, line in enumerate(f):#遍历索引和值,值格式为:词,词向量
line = line.strip().split()#值
if len(line) != 300 + 1:#保证每个词向量为300维
continue
word = line[0]#词
embedding = line[1:]#词向量
if word in vocab_to_index:
found=found+1#加一
word_idx = vocab_to_index[word]#找到对应索引
embeddings[word_idx] = embedding#该索引位置对应词向量
print("单词",word)
print("单词",embeddings[word_idx])
print('获取到的词向量:'+str(found)+'所有的词:'+str(size_vocab)+'匹配率:{:.2f}%'.format(found/size_vocab*100))
# 保存提取到的词向量数组
np.savez_compressed(r'vec.npz', embeddings=embeddings)
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
sgns.baidubaike.zip (2个子文件)
test_dataset.py 1KB
sgns.baidubaike.bigram-char 1.69GB
共 2 条
- 1
资源评论
Erya_K
- 粉丝: 1
- 资源: 11
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功