SciTech-BigDataAIML-LLM-Transformer Series系列:
Word Embedding词嵌入详解:
1. 用Corpus预训练出嵌入矩阵\(\large E\)
- Corpus Collecting: 非常重要的工作
先收集一个常用的Corpus(语料库), 能保障大多数的word都在corpus.
有两个特别重要的作用:- Vocabulary Extracting: 词汇表提取
用Corpus(语料库)提取出Vocabulary; - Corpus Context Extracting: Corpus(语料库)的"词上下文"提取。
Context信息包括:- COM(Co-Occurrence Matrix, 词共现矩阵)
- N-Gram,
- MHA(Multi-Head Attention, 多头注意力)可以提取出的更多信息。
- others
- E("Embedding Matrix) Constructing: 建立“嵌入矩阵”
- E的Shape为 VocabSize × DIM:
VocabSize即以上Vocabulary的size, DIM即要训练出的E的“词引向量”维度。 - E对Vocabulary的每一Word的Onehot“词列向量”:
- 不仅唯一的对应一个“Embedded词列向量”;
- 而且有“语义信息”嵌入(还可以自定义Embedding更多信息)。
- 还都统一成DIM维度(矩阵乘法变换, 可将input的Onehot序列, 变换成"统一DIM维度"的"词列向量"序列)。
- 这个训练好的E("Embedding Matrix)就是Embedding嵌入层。
将 Corpus Context 信息 嵌入 E("Embedding Matrix) 的训练方法,
常用的有Word2vec, Glove, Fastext, ...
- E的Shape为 VocabSize × DIM:
- Vocabulary Extracting: 词汇表提取
→Input变长词序列→Onehot"词列向量"序列→矩阵乘"嵌入矩阵E"→Embedded"词列向量"序列"