5 词向量迁移
学习目标¶
- 了解什么是词向量迁移.
- 了解fasttext工具中有哪些可迁移的词向量模型.
- 掌握如何使用fasttext进行词向量模型迁移.
1 词向量迁移介绍¶
- 使用在大型语料库上已经进行训练完成的词向量模型.
- fasttext工具中可以提供的可迁移的词向量:
2 使用fasttext进行词向量迁移¶
- 第一步: 下载词向量模型压缩的bin.gz文件
- 第二步: 解压bin.gz文件到bin文件
- 第三步: 加载bin文件获取词向量
- 第四步: 利用邻近词进行效果检验
2.1 下载词向量模型压缩的bin.gz文件¶
# 这里我们以迁移在CommonCrawl和Wikipedia语料上进行训练的中文词向量模型为例:
# 下载中文词向量模型(bin.gz文件)
wget <https://dl.fbaipublicfiles.com/fasttext/vectors-crawl/cc.zh.300.bin.gz>
2.2 解压bin.gz文件到bin文件¶
# 使用gunzip进行解压, 获取cc.zh.300.bin文件
gunzip cc.zh.300.bin.gz
2.3 加载bin文件获取词向量¶
# 加载模型
>>> model = fasttext.load_model("cc.zh.300.bin")
# 查看前100个词汇(这里的词汇是广义的, 可以是中文符号或汉字))
>>> model.words[:100]
[',', '的', '。', '</s>', '、', '是', '一', '在', ':', '了', '(', ')', "'", '和', '不', '有', '我', ',', ')', '(', '“', '”', '也', '人', '个', ':', '中', '.', '就', '他', '》', '《', '-', '你', '都', '上', '大', '!', '这', '为', '多', '与', '章', '「', '到', '」', '要', '?', '被', '而', '能', '等', '可以', '年', ';', '|', '以', '及', '之', '公司', '对', '中国', '很', '会', '小', '但', '我们', '最', '更', '/', '1', '三', '新', '自己', '可', '2', '或', '次', '好', '将', '第', '种', '她', '…', '3', '地', '對', '用', '工作', '下', '后', '由', '两', '使用', '还', '又', '您', '?', '其', '已']
# 使用模型获得'音乐'这个名词的词向量
>>> model.get_word_vector("音乐")
array([-6.81843981e-02, 3.84048335e-02, 4.63239700e-01, 6.11658543e-02,
9.38086119e-03, -9.63955745e-02, 1.28141120e-01, -6.51574507e-02,
...
3.13430429e-02, -6.43611327e-02, 1.68979481e-01, -1.95011273e-01],
dtype=float32)
2.4 利用邻近词进行效果检验¶