动手学深度学习 22.嵌入向量,词嵌入,子词嵌入,全局向量的词嵌入 中文教材:zh.d2a 英文教材:w.d2Lai 教学视频:https://courses.d2l.ai/berkeley.-stat-157/units/.word2yec.html D2L.ai
动手学深度学习 22.嵌入向量, 词嵌入, 子词嵌入, 全局向量的词嵌入 中文教材:zh.d2l.ai 英文教材:www.d2l.ai 教学视频:https://courses.d2l.ai/berkeley-stat-157/units/word2vec.html
概要 。1 嵌入向量(Embeddings) ·词嵌入(Word2vec) ·Skip-gram ·CBOW ·子词嵌入(fastText) 全局向量的词嵌入(GloVe) D2L.ai
概要 • 嵌入向量(Embeddings) • 词嵌入(Word2vec) • Skip-Gram • CBOW • 子词嵌入(fastText) • 全局向量的词嵌入(GloVe)
GAME OF HRONESIN WORDS This viz shows the most unique words by character for each chapter in the 5 Game of Thrones books Legend Daenerys 2edUy以alfreouer 词嵌入 The motscemmon word actoss all 3 charattars are king,hlooe dead Word2vec e指中wodm0 Cerser'stin4aot国 Cersei viz by godamemccann at DuelingData.com data from "A Song of Fir ice" Jon Snow provideit by fedMebata
词嵌入 (Word2vec)
动机 。上 单热向量法将目标对象/单词 X Z 映射到固定长度向量 R 0 ·这些向量仅包含身份信息,而 1 0 不包含语义含义,例如: (xy〉=(z,y〉=0 00 1 D2L.ai
动机• 单热向量法将目标对象 /单词 映射到固定长度向量 • 这些向量仅包含身份信息,而 不包含语义含义 ,例如 : ⟨ 𝐱 , 𝐲 ⟩ = ⟨ 𝐳 , 𝐲 ⟩ = 0 100… x 010… 001… y z
词嵌入(Word2vec) 。9 学习每个单词的嵌入向量 ·用于(x,y〉衡量相似性 1 0 (xy〉>(z,y〉 微 1 0 ·建立概率模型 ·最大化似然函数优化 1 D2L.ai
词嵌入(Word2vec ) • 学习每个单词的嵌入向量 • 用于 ⟨𝐱, 𝐲⟩ 衡量相似性 • 建立概率模型 • 最大化似然函数优化 100… x 010… 001… y z ⟨ 𝐱 , 𝐲 ⟩ > ⟨ 𝐳 , 𝐲 ⟩
Skip-Gram模型 ·一个单词可用于生成它周围的单词 ·给定中心词,每个上下文词是独立生成的 the man his son P("the","man","his","son"|"loves") -P("the"l "loves").P("man"I "loves") P("his"I "Toves").P("son"I "loves") loves D2L.ai
Skip-Gram 模型 • 一个单词可用于生成它周围的单词 • 给定中心词,每个上下文词是独立生成的 ℙ("the","man","his","son" ∣ "loves") = ℙ("the" ∣ "loves") ⋅ ℙ("man" ∣ "loves") ⋅ ℙ("his" ∣ "loves") ⋅ ℙ("son" ∣ "loves")
似然函数 全部概率求和非常昂贵 词 嵌入 P(Wo I Wc)= exp(uovc) 中心词 Wc Vc∈Rd ∑iev exp(uVc) 上下文 Wo uo∈Rd V:所有上下文 ·给定长度为T的序列,上下文窗口长度为,似然函数: T Π,P(w(+DIw) t=1-m≤j≤m,j≠0 D2L.ai
似然函数 • 给定长度为 T 的序列,上下文窗口长度为 m,似然函数: 𝑤𝑜 𝐯𝑐 ∈ ℝ 𝑤 𝑑 𝑐 𝐮𝑜 ∈ ℝ 𝑑 中心词 上下文 词 嵌入 ℙ(𝑤𝑜 ∣ 𝑤𝑐 ) = exp(𝐮𝑜 ⊤𝐯𝑐 ) ∑𝑖∈𝒱exp(𝐮𝑖 ⊤𝐯𝑐 ) 𝒱: 所有上下文 ∏ 𝑡=1 𝑇 ∏ −𝑚≤𝑗≤𝑚,𝑗≠0 ℙ(𝑤 (𝑡+𝑗) ∣ 𝑤 (𝑡) ) 全部概率求和非常昂贵
负采样 ·将中心词和上下文词同时出现在相同窗口中作为一个“事件” 1 P(D 1Wc,Wo)=a(ucvo) (x)=1+eXp(-x) ·将似然函数从nPw1w网更改为 T Π Π P(D=1Iw(9,w(+) t=1-m≤j≤m,j≠0 最简单的解决方案:无限 D2L.ai
负采样 • 将中心词和上下文词同时出现在相同窗口中作为一个“事件” • 将似然函数从∏ 𝑡=1 𝑇 ∏ −𝑚≤𝑗≤𝑚,𝑗≠0 ℙ(𝑤 (𝑡+𝑗) ∣ 𝑤 (𝑡) )更改为 ℙ 𝐷 = 1|𝑤𝑐 ,𝑤𝑜 = 𝜎 𝐮𝑐 𝑇𝐯𝑜 𝜎(𝑥) = 1 1 + exp(−𝑥) ∏ 𝑡=1 𝑇 ∏ −𝑚≤𝑗≤𝑚,𝑗≠0 ℙ(𝐷 = 1 ∣ 𝑤 (𝑡) , 𝑤 (𝑡+𝑗) ) 最简单的解决方案:无限
负抽样 ·样本噪音词wm在窗口中未显示的概率 P(D =0/Wc,Wn)=1-o(unvc) ·加入似然函数 ·最大化似然函数相当于用二元逻辑回归损失求解二元分类 问题 D2L.ai
负抽样 • 样本噪音词 𝑤𝑛 在窗口中未显示的概率 • 加入似然函数 • 最大化似然函数相当于用二元逻辑回归损失求解二元分类 问题 ℙ 𝐷 = 0|𝑤𝑐 ,𝑤𝑛 = 1 − 𝜎 𝐮𝑛 𝑇𝐯𝑐
CBOW模型 CBOW-Continuous Bag Of Words ·基于上下文词生成中心词 loves P("loves"|"the""man""his","son") the man his son D2L.ai
CBOW 模型 • CBOW - Continuous Bag Of Words • 基于上下文词生成中心词 ℙ("loves" ∣ "the","man","his","son")