欢迎使用CSDN-markdown编辑器
来源:互联网 发布:韦德生涯数据更新 编辑:程序博客网 时间:2024/06/08 09:57
word2vec 核心简记
Huffman编码:
用词频作为词权重,构造 Huffman 树生成的 Huffman 编码,满足语料库总编码长度的期望最短。(频率高的编码短,频率低的编码长)
n-gram:
(n-1)阶Markov假设:词概率只与它前面 n-1 个词有关。复杂度
O(Nn) 。需要平滑(类似 Bayes)
n=1 即是 unigram
2 Hierarchical Softmax
n-gram下词
wi 的上下文Context(wi ):C(wi)=(wi−n,⋯,wi−1,wi+1,⋯,wi+n) 每个词的词向量:
v(w)
2.1 CBOW(continuous bag of word):
概率模型及其对数似然函数:
p(w|C(w))=∑w∈logp(w|C(w)) 输入层:
C(w) - 投影层的构造:
x(w)=∑w′∈C(w)v(w′) - 输出层:
Huffman 树,叶子节点N (词个数)个,非叶子节点N−1 个。
从根节点向下找到词w 的叶节点有唯一路径j ,到每一层j 的结点(有一个权重θj )向下做二分裂,相当于做一次二分类σ(x(w)⋅θj) 。向左为负类(tj+1=0 ),右为正类(tj+1=1 )。
最终找到词w 的概率P 及对数似然函数 :p(w|C(w))=∏j=1→wp(tj+1|x(w),θj)=∏j=1→wσ(x(w)⋅θj)tj+1⋅[1−σ(x(w)⋅θj)]1−tj+1=∑wlog∏j=1→wp(tj+1|x(w),θj)=∑w∑j=1→w(tj+1logσ[x(w)⋅θj]+(1−tj+1)log(1−σ[x(w)⋅θj]))
2.2 skip-gram:
- 输入层:
v(w) - 输出层:
Huffman树。从顶层根结点向下找到每个u∈C(w) 。每个结点的二分裂与CBOW 类似。
概率模型及其对数似然函数:p(C(w)|w)=∏u∈C(w)p(u|w)=∏u∈C(w)∏j=1→uσ(v(w)⋅θj)tj+1⋅[1−σ(v(w)⋅θj)]1−tj+1=∑wlog∏u∈C(w)p(u|w)∑w∑u∈C(w)∑j=1→u(tj+1logσ[v(w)⋅θj]+(1−tj+1)log(1−σ[v(w)⋅θj]))
3. Negative sampling(NEG)
用随机负采样替代 Huffman 树,提高效率。
- 词向量:
v(w) ,简写vw - 每个词的上下文Context(w):
C(w) ,xw=x(w)=∑u∈C(w)v(u) - 每个词的负采样集合:
NEG(w) - 每个词的辅助权重:
θw
3.1 CBOW
对每一组样本
3.2 skip gram
对每一组样本
阅读全文
0 0
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- POJ 2316 SPIN 笔记
- MyBatis学习之全局配置文件中各个标签的用途
- Fedora和Ubuntu下安装OpenGL开发环境配置
- Leetcode 485 Max Consecutive Ones
- 单例模式写法
- 欢迎使用CSDN-markdown编辑器
- PHP 7 的几个新特性和使用的代码
- Clonezilla使用指南
- 心率检测仪的设计与实现:stm32视频教程分享
- HTML是啥?
- 理解JMS规范中的持久订阅和非持久订阅
- 事件冒泡原理自我理解以及使用
- tensorflow python windows7 安装
- 用链表实现堆栈