新闻资讯型网站开发,泉州握旗公司网站建设,做盗链网站,竞价排名是什么意思词嵌入#xff08;Word Embedding, WE#xff09;#xff0c;任务是把不可计算、非结构化的词转换为可以计算、结构化的向量#xff0c;从而便于进行数学处理。 一个更官方一点的定义是#xff1a;词嵌入是是指把一个维数为所有词的数量的高维空间#xff08;one-hot形式… 词嵌入Word Embedding, WE任务是把不可计算、非结构化的词转换为可以计算、结构化的向量从而便于进行数学处理。 一个更官方一点的定义是词嵌入是是指把一个维数为所有词的数量的高维空间one-hot形式表示的词【嵌入】到一个维数低得多的连续向量空间中每个单词或词组被映射为实数域上的向量。 Word Embedding 解决了 One-Hot 独热编码的两个问题。参考一、独热编码One-Hot Word Embedding 矩阵给每个单词分配一个固定长度的向量表示这个长度可以自行设定实际上会远远小于字典长度将词向量映射到了一个更低维的空间。Word Embedding 矩阵使两个词向量之间的夹角值最常用到的相似度计算函数是余弦相似度(cosine similarity)作为他们之间关系的一个衡量保持词向量在该低维空间中具备语义相似性越相关的词它们的向量在这个低维空间里靠得越近。 Word Embedding 示例图参考Word Embedding介绍 展示将 “way back into love” 翻译成中文的过程 第一步将 “way back into love” 四个词分别用四个不同的向量表示图中采用 One-Hot 独热编码方式为例 第二步通过 Word2vec/GloVe 等词嵌入Word Embedding 方法提取文本特征并将这四个高维向量进行降维得到四个词各自对应的 embedding图中以 2 维向量作为示例。 第三步需要再经过 Model 之后做进一步的提取文本特征才能得到对 “way back into love” 的翻译结果。 1 Word2Vec
Word2Vec 中有两种基本的模型CBOW 和 Skip-Gram。参考自然语言处理与词嵌入
1.1 连续词袋模型CBOW 连续词袋模型Continuous Bag-of-Words Model, CBOW是通过用环境中的每一个词去预测中心词。相当于一句话中扣掉一个词让你猜这个词是什么。其本质是通过背景词context word来预测一个单词是否是中心词center word。 CBOW 示例参考更详细的示例解析
我XX你...输入输出输入... 在 CBOW 中会定义一个为 window_size 的参数假如 window 的大小为 1那么中心词的前 1 个词和后面 1 个词就被选入了我们的窗口里以 XX 为例上下文的词为 [我, 你] 。 然后模型先将每个字符处理为 One-Hot 形式其中维度大小为词表的大小不同词的个数。例如一篇文章由 1000 个不同的词构成那么词表大小即为1000每个词的 One-Hot 编码大小为 1*1000。接着将 One-Hot 向量进行相加。获得了一个输入向量以及目标向量后将输入向量 X输入全连接层设置好维度参数中进行参数的优化训练。这里优化的目标是让模型能够学的词与词之间的上下文关系我们的代价函数就是使得 sofamax 中预测的分布 y 与真实值 Y 这两个矩阵的交叉熵最小化也可以最小化这两个矩阵的差平方即损失值训练结束后对我们真正有用的是隐藏层中的权重 W这就是我们所需要的词向量。 CBOW 原理图 1.2 Skip-Gram Skip-Gram 是通过用中心词来预测上下文。其本质则是在给定中心词center word的情况下预测一个词是否是它的上下文context word。 CBOW 示例参考网络模型是如何计算的
XX爱XX输出输入输出
Skip-Gram 原理图 输入的中心词 One-Hot 独热编码向量输入乘以 center word 的矩阵 W 得到词向量词向量乘以另一个context word 的矩阵 W(t) 得到对每个词语的相似度对相似度得分取 Softmax 得到概率与答案对比计算损失。 我们提到预测中心词和上下文的最终目的还是通过中心词和上下文去训练得到单词语义上的关系同时还做了降维最终得到想要的 embedding 了。 1.3 缺点 由于词和向量是一对一的关系所以 Word2vec 无法解决多义词的问题。 2 GloVe GloVe 的全称叫 Global Vectors for Word Representation它是一个基于全局词频统计count-based overall statistics的词表征word representation工具它可以把一个单词表达成一个由实数组成的向量这些向量捕捉到了单词之间一些语义特性比如相似性similarity、类比性analogy等。参考GloVe 共现矩阵Co-Occurrence Matrix指的是矩阵中的每一个元素 Xij 代表单词 i 和上下文单词 j 在特定大小的上下文窗口context window内共同出现的次数。 例如语料库corpus中有如下两句话 句子1小唐喜欢看电视剧小王也喜欢看电视剧句子2小唐还喜欢看电影 有以上两句话设置滑窗为2可以得到一个词典为{小唐, 小王, 还, 也, 喜欢, 看, 电视剧, 电影}。这样我们可以得到一个共现矩阵对称矩阵
小唐小王还也喜欢看电视剧电影小唐00101000小王00010000还10001000也01001000喜欢10110300看00003021电视剧00000200电影00000100 GloVe 模型仅对单词共现矩阵中的非零元素训练从而有效地利用全局统计信息并生成有意义的子结构向量空间。给出相同的语料库词汇窗口大小和训练时间它的表现都优于 Word2Vec它可以更快地实现更好的效果并且无论速度如何都能获得最佳效果。