使用在大型语料库上已经训练好的词向量。
fasttext提供了157种语言的在CommonCrawl和Wikipedia语料上进行训练的可迁移词向量模型, 它们采用CBOW模式进行训练, 词向量维度为300维.
可通过该地址查看具体语言词向量模型:
https://fasttext.cc/docs/en/crawl-vectors.html
fasttext提供了294种语言的在Wikipedia语料上进行训练的可迁移词向量模型, 它们采用skipgram模式进行训练, 词向量维度同样是300维.
https://fasttext.cc/docs/en/pretrained-vectors.html
# 这里我们以迁移在CommonCrawl和Wikipedia语料上进行训练的中文词向量模型为例:
# 下载中文词向量模型(bin.gz文件)
wget https://dl.fbaipublicfiles.com/fasttext/vectors-crawl/cc.zh.300.bin.gz
# 使用gunzip进行解压, 获取cc.zh.300.bin文件
gunzip cc.zh.300.bin.gz
def fast_text_model():"""从fastext官网下载的中文词向量,来测试一下中文的相似度情况:return:"""wiki_chinese = fasttext.load_model(r"D:\Downloads\cc.zh.300.bin\cc.zh.300.bin")print(wiki_chinese.words[:100])# 利用邻近词检查res1 = wiki_chinese.get_nearest_neighbors("音乐")for val in res1:print("邻近词语: ", val)[',', '的', '。', '', '、', '是', '一', '在', ':', '了', '(', ')', "'", '和', '不', '有', '我', ',', ')', '(', '“', '”', '也', '人', '个', ':', '中', '.', '就', '他', '》', '《', '-', '你', '都', '上', '大', '!', '这', '为', '多', '与', '章', '「', '到', '」', '要', '?', '被', '而', '能', '等', '可以', '年', ';', '|', '以', '及', '之', '公司', '对', '中国', '很', '会', '小', '但', '我们', '最', '更', '/', '1', '三', '新', '自己', '可', '2', '或', '次', '好', '将', '第', '种', '她', '…', '3', '地', '對', '用', '工作', '下', '后', '由', '两', '使用', '还', '又', '您', '?', '其', '已']
邻近词语: (0.6703276634216309, '乐曲')
邻近词语: (0.6569967269897461, '音乐人')
邻近词语: (0.6565821170806885, '声乐')
邻近词语: (0.6557438373565674, '轻音乐')
邻近词语: (0.6536258459091187, '音乐家')
邻近词语: (0.6502416133880615, '配乐')
邻近词语: (0.6501686573028564, '艺术')
邻近词语: (0.6437276005744934, '音乐会')
邻近词语: (0.639589250087738, '原声')
邻近词语: (0.6368917226791382, '音响')
将加载的中文词向量测试,可以看到词语的相似度。后续在NLP的相关任务中是可以直接使用fasttext的预训练词向量模型。
下一篇:循环语句(循环结构)——“C”