针对腾讯AI Lab词向量使用过程中高效读取方式的数字处理

腾讯AI Lab词向量仅词向量的文本文件就达到16G,每次读入时间过长,查找资料有大佬提供高效读入的方法https://blog.csdn.net/sinat_26917383/article/details/83999966#commentBox,但是需要对腾讯词向量清洗一下,本文算是稍稍补充一下清洗数字的过程,先上代码:

#! *-- coding:utf-8 --*
from gensim.models import KeyedVectors
from tqdm import tqdm
n = 0
with open('file.txt', 'a',encoding='utf-8', errors='ignore') as w_f:
    with open('F:\Tencent_AILab_ChineseEmbedding.txt', 'r',encoding='utf-8', errors='ignore')as f:
        for i in tqdm(range(8824330)): #似乎不同时期下载的词向量range并不一样
            data = f.readline()
            a = data.split()
            if i == 0:
                w_f.write('8748463 200\n') #行数的写入也有可能不同
            if len(a) == 201:
                if not a[0].isdigit():
                    n=n+1
                    w_f.write(data)
print(n)  #输出清洗后的range
#model =KeyedVectors.load_word2vec_format('file.txt', binary=False,unicode_errors='ignore')

 

清洗之后,按照高效读取的方法,查询大概两分钟左右。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值