吴恩达-DeepLearning.ai-05 序列模型(二)

吴恩达-DeepLearning.ai-05 序列模型(二)

自然语言处理与词嵌入

1、词汇表征(特指词向量)

one-hot表示方法:没有捕捉相关词之间的特性,而是独立看待。
吴恩达-DeepLearning.ai-05 序列模型(二)_第1张图片
词嵌入(word2vec、glove):能够学习词之间的关系,表示词之间的相似性。
吴恩达-DeepLearning.ai-05 序列模型(二)_第2张图片

吴恩达-DeepLearning.ai-05 序列模型(二)_第3张图片

2、使用词嵌入

学习词嵌入的语料集合要非常的大,这样才会存储更多的信息,有利于对未知信息的理解。
当你的训练集数据量很小(有标签的)时对于词嵌入的训练来说效果不好,这时可以考虑使用“迁移学习“,把从大量互联网得到的文本进行词嵌入训练然后应用到你的数据集上,可以更好地表示词之间的相似性。
吴恩达-DeepLearning.ai-05 序列模型(二)_第4张图片

当你的词嵌入的训练集相对较小时效果一般会很明显(应用在:命名实体识别、文本摘要、文本解析,指代消除。在语言模型:机器翻译应用得少(你有大量的训练数据))。
吴恩达-DeepLearning.ai-05 序列模型(二)_第5张图片
人脸识别和词嵌入都是一个编码的过程:
人脸识别:海量的人脸,没有固定大小。
词嵌入:有一个固定的词汇表,超过范围的无能为力。
吴恩达-DeepLearning.ai-05 序列模型(二)_第6张图片

3.词嵌入的特性

词嵌入的一个重要特性:可以实现类比推理。
吴恩达-DeepLearning.ai-05 序列模型(二)_第7张图片
吴恩达-DeepLearning.ai-05 序列模型(二)_第8张图片
余弦相似度衡量形似性(词嵌入向量)。(内积越大相似度越大)

吴恩达-DeepLearning.ai-05 序列模型(二)_第9张图片

4、嵌入矩阵

大量词向量组成的矩阵。
吴恩达-DeepLearning.ai-05 序列模型(二)_第10张图片

5、学习词嵌入

通过词嵌入的学习可以进行语言模型的建立学习(比如预测句子的下一个词是什么?)
一种简单的语言模型。
吴恩达-DeepLearning.ai-05 序列模型(二)_第11张图片
其他的方法:word2vec(考虑上下文窗口)
吴恩达-DeepLearning.ai-05 序列模型(二)_第12张图片

6、word2vec模型

skip-grams算法:抽取中心词和上下文构建一个监督学习问题(利用给定的目标词预测上下文单词)。
吴恩达-DeepLearning.ai-05 序列模型(二)_第13张图片
吴恩达-DeepLearning.ai-05 序列模型(二)_第14张图片

存在的问题:对于softmax你每次想要计算式分母都会对所有的词进行求和计算(词很多),速度会很慢。
解决方法(加速softmax分类计算):使用分级的softmax分类器(形成了类似于树模型的层层递进方法),不用每次给所有的词进行计算求和,同时会形成常用词在上面,不常用词在底层,的经验法则,会减少分类的计算。
吴恩达-DeepLearning.ai-05 序列模型(二)_第15张图片

7、负采样(提高skip-grams中softmax算法的速度)

你有一个正样本,通过在词表中采样出k个负样本出来(每次迭代随机选择),k的选择一般原则是,数据集越大k越小,数据集越小k越大。
吴恩达-DeepLearning.ai-05 序列模型(二)_第16张图片
吴恩达-DeepLearning.ai-05 序列模型(二)_第17张图片
采样方法的选择:既不会选择词频低的,也不会选择词频高的(停用词问题),通过一个经验性的公式。
吴恩达-DeepLearning.ai-05 序列模型(二)_第18张图片

8、Glove词向量

glove代表用词表示的全局变量。

X_ij表示一个能够获取单词i和单词j出现位置相近时的频数的计数器。Glove模型做的就是将他们之间的距离进行最小化处理,通过下面的公式。
吴恩达-DeepLearning.ai-05 序列模型(二)_第19张图片
吴恩达-DeepLearning.ai-05 序列模型(二)_第20张图片

9、情感分类

引出情感分析问题:
吴恩达-DeepLearning.ai-05 序列模型(二)_第21张图片
传统的情感分析方法:
步骤为:通过词袋得到文本的one-hot表示——训练得到词向量——对句子中词向量进行average得到句子的平均表示词向量——训练一个softmax分类器得到不同情绪的概率
问题为:把每个词向量进行平均,这样就平均了每个词的信息,并且没有考虑词之间的关联信息。
吴恩达-DeepLearning.ai-05 序列模型(二)_第22张图片
基于RNN的方法为:
步骤:通过词袋得到文本的one-hot表示——训练得到词向量——把词向量带入RNN模型中进行训练(many-to-one)得到不同情绪的概率
特点:避免了传统方法的不足,使性能提高,同时捕捉了句子中词的相似性。
吴恩达-DeepLearning.ai-05 序列模型(二)_第23张图片

10、词嵌入除偏

吴恩达-DeepLearning.ai-05 序列模型(二)_第24张图片
吴恩达-DeepLearning.ai-05 序列模型(二)_第25张图片




你可能感兴趣的:(深度学习)