序列模型(二)- 自然语言处理与词嵌套

本次学习笔记主要记录学习深度学习时的各种记录,包括吴恩达老师视频学习、花书。作者能力有限,如有错误等,望联系修改,非常感谢!


第一版       2022-07-21        初稿

一、词汇表征(Word Representation)

在这里插入图片描述
词嵌入,可以让算法自动的理解一些类似的词。
序列模型中的词汇字典,缺点就是每个单词孤立起来,使得算法对相关词的泛化能力不强。单词间内积都是0,很难知道那两个的相似度程度。

在这里插入图片描述
若不用one-hot表示,而是用特征化的表示。这些词与gender等的关系。

为了说明,假设有300个特征,会得到如图一列数据,用e5391表示Man。
在这里插入图片描述
把300维数据嵌入到一个二维空间里,可视化(t-SNE算法),然后聚类,最终映射为相似的特征向量。
之所叫嵌入,是因为可以想象一个300维空间,这里画三维空间,如此apple等被嵌入到空间中一个点上。t-SNE算法把空间映射到低微空间上,可画二维图观察。

二、使用词嵌入(Using Word Embeddings)

在这里插入图片描述
假设找人名,已知Sally是人名,orange和apple相似,因此判断Robert是人名。但若是稀缺水果,如榴莲(durian),可能稀缺或没有,还有培育家(cultivator)。

学习词嵌入的算法会考虑非常大的文本集,大量无标签的文本的训练集。可使用迁移学习,把网上这些获得的大量信息和知识迁移到一个任务上。
在这里插入图片描述
词嵌入做迁移学习:
1.先从大量的文本集中学习词嵌入,或从网上下载预训练好的词嵌入模型;
2.可用这些词嵌入模型,把它迁移到自己的新的只有少量标注训练集的任务中。
3.可自行选择微调,通常2中数据集很大才选择微调。
若任务A迁移到任务B,A有大量数据,B有少量数据,迁移过程才有用。
在这里插入图片描述
词嵌入和人脸编码有奇妙的关系:
如Siamese网络,通过比较编码结果来判断两个图片是否是同一个人。

人脸识别领域和词嵌入有不同
人脸识别中训练一个网络,给一个人脸照,甚至没见过的照片,神经网络都会计算出相应的编码结果;
词嵌入则会有个固定的词汇表,未出现的单词标为UNK。

三、词嵌入的特性(Properties of Word Embeddings)

在这里插入图片描述
词嵌入还能帮助类比推理。向量e_man和e_woman只有思维,进行减法运算。那么man和woman主要差异在性别上,king和queen差异也在性别上,这就能回答man对woman相当于king对queen。
在这里插入图片描述
找到单词w来最大化e_w和e_king-e_man+e_woman的相似度。但这种方法准确率只有30%-75%。

在进行t-SNE映射后,不能总是期望使等式成立的关系。
在这里插入图片描述
此相似度函数叫做余弦相似度sim(u,v),分子是u和v的内积,公式就是计算俩向量夹角的余弦cos∅,如图下方余弦图像。

四、嵌入矩阵(Embedding Matrix)

在这里插入图片描述
假设词汇表含10000个单词,学习一个嵌入矩阵E,它将是一个300x10000的矩阵。

本次是学习一个嵌入矩阵E,下节随机初始化矩阵E。

五、学习词嵌入(Learning Word Embeddings)

在这里插入图片描述
若想预测句子中的下一个词,每个单词都写上了单词对应词汇表中的索引。

如图一个one-hot向量,然后生成参数矩阵E,E(同用1个)乘以O,得到嵌入向量e,其他同理,然后全部放进神经网络中,然后通过softmax层。此算法下,apple和orange会学到相似的嵌入。
在这里插入图片描述
假设训练集有更长的句子,juice是目标词,通过上下文推导出来的。可把目标词左右各四个词作为上下文,或许只提供一个orange来预测其后的单词,这将是不同的学习问题。
可用邻近的词做上下文,是一种Skip-Gram模型的思想。

研究发现,若建立一个语言模型,用目标词的前四个单词作为上下文是常见做法。若是学习词嵌入,可用这些其他类型的上下文。

六、Word2Vec

在这里插入图片描述
如图句子,在Skip-grams中,要抽取上下文和目标词配对,来构造一个监督学习问题。要做的是随机在一定此距内选另一个词作为上下文词。要解决的基本的监督学习问题是学习一种映射关系。
在这里插入图片描述
可以先从ont-hot向量Oc开始,给出softmax函数(省略了偏差项): P ( t ∣ c ) = e θ t T e c Σ j = 1 10000 e θ j T e c P\left( t|c \right) =\frac{e^{\theta _{t}^{T}e_c}}{\varSigma _{j=1}^{10000}e^{\theta _{j}^{T}e_c}} P(tc)=Σj=110000eθjTeceθtTec
然后求得损失函数:
在这里插入图片描述
若优化这个关于所有这些参数的损失函数,就会得到一个较好的嵌入向量集,叫Skip-Gram模型。
在这里插入图片描述
上述模型计算速度慢,这里有个解决方案:分级的softmax分类器 和 负采样。
分级的softmax分类器
想像有个分类器,告知这个词在前5000个词中还是后5000个,被告知前5000后,从2500分界判断,直到最后找到一个词准确所在的分类器。但实际上,分级softmax不会使用一颗完美平衡的分类树 或 一颗左右分支词数相同的对称树,常用词在顶部。

怎样对上下文c进行采样?
可能不想要训练集频繁出现的词,如the、of等,实际上词p©的分布并不是单纯的在训练集语料库上均匀且随机的采样得到的,而是采用不同的分级来平衡更常见的词和不那么常见的词。
在这里插入图片描述
两个不同版本的Word2Vec:Skip-Gram(大型语料库)和CBOW(小型语料库)。
CBOW(连续词袋模型),获得中间词两边的上下文,然后用周围的词去预测中间的词。其从原始语句推测目标词,而Skip-Gram从目标词推测原始语句。

七、负采样(Negative Sampling)

在这里插入图片描述
在此算法中构造一个新的监督学习问题,问题就是给定一对单词,如orange和juice,去预测这是否是一对上下文词-目标词。在此例子中,orange和juice是正样本,而orange和king是负样本。

选上下文词orange,目标词juice,表的第一行,标为1。给定K次,用相同的上下文词,从字典随机选取词,标为0,成为负样本。
接下来构建一个监督学习问题,输入这对词x,去预测目标的标签y。K可在5-20选取,对于大数据集,K选小一点,对于更大的数据集K在2-5之间。
在这里插入图片描述
1.softmax;2.x,y;3.P;4.神经网络
10000个二分类逻辑回归分类器,并不是每次迭代都全训练10000个,只训练其中的5个,其中训练4个随机选取的负样本和1个正样本。
在这里插入图片描述
如何选取负样本,即在选取了上下文词orange后,如何对这些词进行采样生成负样本?
1.对中间这些词进行采样,可根据语料中的经验频率采样;
2.1除以词汇表总词数,均匀随机的抽取负样本。如图公式,f(wi)是预测到的在语料库中的某个英文词的词频,通过3/4次方计算,使其处于完全独立的分布和训练集的观测分布两个极端之间。

八、GloVe词向量(GloVe Word Vectors)

在这里插入图片描述
GloVe做的是使词对关系明确化。X_ij是单词i在单词j上下文中出现的次数。
在这里插入图片描述
Glove模型做的就是进行优化,将它们之间的差距进行最小化处理。

若X_ij等于0,那么log0就是未定义的,是负无穷大,所以要对X_ij为0时进行求和,因此添加额外的加权项f(x_ij),同时约定0log0=0,意思是X_ij为0,就不要进行求和。
f(X_ij)另一作用:有些频繁词如this,is等,有时叫停止词,在频繁词和不常用词之间会有一个连续统。
对称性质如右下角公式。
在这里插入图片描述
如果有某个可逆矩阵A,那么θe可替换如图公式下方。

九、情感分类(Sentiment Classification)

在这里插入图片描述
输入x是一段文本,y为要预测的相应情感。情感分类一个最大挑战是可能标记的训练集没那么多,采用词嵌入能带来更好的效果(尤其很小的训练集)。
在这里插入图片描述
得到4个e,可以求和 或 求平均,把其送入softmax分类器,然后输出yhat

此算法有个问题就是没有考虑词序
在这里插入图片描述
取到评论,找出每个one-hot向量,乘以E,得到词嵌入表达e,然后把它们送进RNN里,在最后一步计算一个特征表示,用来预测yhat,这是个多对一的网络结构。

十、词嵌入除偏(Debiasing Word Embeddings)

在这里插入图片描述
我们想确保它们不受非预期形式偏见的影响,如性别歧视、种族歧视等。
在这里插入图片描述
如图,词嵌入的例子。
1.辨别出想要减少或消除的特定偏见的趋势(集中讨论性别歧视);
(1)对于性别歧视,e_he - e_she,e_male - e_female这些值取平均。如图横轴偏见趋势(1D子空间),竖轴无偏见趋势(299D子空间)。相比于平均值,实际会用SVU(奇异值分解)。
2.中和:对于定义不准确的单词可以处理,避免偏见;
(2)像doctor、babysitter等不确定性别的词,可将它们在轴上进行处理,减少它们在水平方向的距离
3.均衡步,像boy和girl这些只希望性别是其区别。
(3)babysitter和grandmother距离相比其和grandfather要小,要确保距离是相同的。将grandmother和grandfather移动到紫色点(与竖轴等距)。
在这里插入图片描述在这里插入图片描述
均衡算法。

1


  1. 深度学习-吴恩达 ↩︎

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值