Deep Learning Specialization 5: Sequence Models - Week 2 - Word Embeddings

本周课程讲的是词向量的生成及简单应用,正如老师所说

在大量学者地不断研究探索下,词向量的生成简单到像魔法。

1.Introduction to word embeddings

1.1 Word Representation

词的表示探讨的是如何从one-hot编码到向量化的过程,完成这一转换之后还能带来一些其它好处。

1-hot representation -> Featurized representation

I want a glass of orange ?

I want a glass of apple ?

t-SNE: 一种可视化高维embedding的方法

1.2 Transfer learning and word embeddings

  1. Learn word embeddings from large text corpus. (1-100B words) (or downlad pre-trained embedding online)
  2. Transfer embedding to new task with smaller trainning set.
  3. Optional: Continue to finetune the word embeddings with new data.

网上有不少预训练的embedding,还是非常赞的。使用也很简单,直接按照作业中的使用就可以了。

1.3 Properties of word embeddings

Analogies Reseaoning: Man → \rightarrow Woman, King → \rightarrow ?
arg ⁡ max ⁡ w sim ( e w , e king − e man + e woman ) \arg \underset{w}{\max}\text{sim} \left( e_w, e_{\text{king}}-e_{\text{man}} + e_{\text{woman}} \right) argwmaxsim(ew,ekingeman+ewoman)
可以选用 cosine sim ( u , v ) = u T v ∥ u ∥ 2 ∥ v ∥ 2 \text{cosine sim}(u, v) = \frac{u^Tv}{\left \| u \right \|_2 \left \| v \right \|_2} cosine sim(u,v)=u2v2uTv

2. Learning Word Embeddings

问题:预测下一个词是什么

先选定target,在target前后选取单个词作为Context
p ( t ∣ c ) = e θ t T e c ∑ j = 1 10 , 000 e θ j T e c p(t|c) = \frac{e^{\theta_t^Te_c}}{\sum_{j=1}^{10,000}e^{\theta_j^Te_c}} p(tc)=j=110,000eθjTeceθtTec

目的:不是为了在监督学习上取得很好的效果,而是要学习embedding

2.1 Word2Vec

Skip-grams:研究发现不使用相邻下一位也能取得很好的效果,只需要在context周围随机选词作为target就好。

Softmax计算整个分母代价非常高,问题可以继续简化为,对于给定context,任意给一个词是否是target。然后一个正例配上数个负例即可。

Negative Sampling:按下面的分布对负例进行采样(玄学,但是确实有效)
P ( w i ) = f ( w i ) 3 / 4 ∑ j = 1 10 , 000 f ( w j ) 3 / 4 P\left( w_i \right) = \frac{f(w_i)^{3/4}}{\sum_{j=1}^{10,000}f(w_j)^{3/4}} P(wi)=j=110,000f(wj)3/4f(wi)3/4

2.2 GloVe

Gloable vectors for word representation

x i j x_{ij} xij为context i与target j共同出现的频次
min ⁡ ∑ i = 1 10,000 ∑ j = 1 10,000 f ( x i j ) ( θ i T e j + b i + b j ′ − log ⁡ x i j ) 2 \min \sum_{i=1}^\text{10,000} \sum_{j=1}^\text{10,000} f(x_{ij}) \left( \theta_i^Te_j + b_i + b^\prime_j - \log x_{ij} \right)^2 mini=110,000j=110,000f(xij)(θiTej+bi+bjlogxij)2
f ( x i j ) f(x_{ij}) f(xij)是加权函数,至少要保证在 x i j = 0 x_{ij} = 0 xij=0时, f ( x i j ) = 0 f(x_{ij}) = 0 f(xij)=0.

相当于先总结出来学习目标的统计形式,再求解。

3. Applications using Word Embeddings

应用是在输入层面的改变,可以把字词的one-hot输入,直接替换成词向量输入,可以在样本量不大的情况下在同义词/类比上面获得一些泛化性能。

比如:可以如下直接输入到softmax或者RNN做一个情感分析。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4WQjfxTC-1575121121056)(evernotecid://3AE75992-3E67-4628-8ACC-2F41C6246321/appyinxiangcom/2727652/ENResource/p1642)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WWMYbBad-1575121121060)(evernotecid://3AE75992-3E67-4628-8ACC-2F41C6246321/appyinxiangcom/2727652/ENResource/p1643)]

也可以做一些人文关怀的事情,在算法层面去消除一些性别歧视什么的。方法非常直接,不列了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
电子图书资源服务系统是一款基于 Java Swing 的 C-S 应用,旨在提供电子图书资源一站式服务,可从系统提供的图书资源中直接检索资源并进行下载。.zip优质项目,资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松copy复刻,拿到资料包后可轻松复现出一样的项目。 本人系统开发经验充足,有任何使用问题欢迎随时与我联系,我会及时为你解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(若有),项目具体内容可查看下方的资源详情。 【附带帮助】: 若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步。 【本人专注计算机领域】: 有任何使用问题欢迎随时与我联系,我会及时解答,第一时间为你提供帮助,CSDN博客端可私信,为你解惑,欢迎交流。 【适合场景】: 相关项目设计中,皆可应用在项目开发、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面中 可借鉴此优质项目实现复刻,也可以基于此项目进行扩展来开发出更多功能 【无积分此资源可联系获取】 # 注意 1. 本资源仅用于开源学习和技术交流。不可商用等,一切后果由使用者承担。 2. 部分字体以及插图等来自网络,若是侵权请联系删除。积分/付费仅作为资源整理辛苦费用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值