word2vec
看吴恩达老师的视频学习到的,记个笔记。
word2vec 的目标是根据两个词之间的关联训练 嵌入矩阵 E(Embedding Matrix),比如 orange-juice,这是一对,他们的关联-target就为1,orange-king的target-0。
这样一对词,orange-juice,其中orange叫做 上下文 (context),它们之间的关联叫做target,非1则0.
如上图,训练嵌入矩阵的过程是这样的,输入是一个单词-context的one-hot,如字典是10000个单词,输入就是10000维的one-hot向量。E*context后,得到一个 词向量-
e
6257
e_{6257}
e6257,
e
6257
e_{6257}
e6257经过一个10000个输出的 softmax 分类器,得到输出,之后做逻辑回归对嵌入矩阵进行训练,损失函数的 标签 就是context对字典中每个单词的target。
诸如skip-gram、负采样就是对这个模型某些地方进行更改,但本质是不变的:
- context-target 模型
- 目标是训练嵌入矩阵