Sequence Models-第三周

第三周学得有点懵懵懂懂,教学视频已经看完了,吴恩达老师最后的总结发言还是挺感人的(DL superman)。

1. Sequence to sequence model

从Encoder到decoder
Sequence Models-第三周
看图说话
Sequence Models-第三周

2.选择最有可能的句子

机器翻译和传统的语言模型很像
Sequence Models-第三周
选择最佳的翻译,而不是从候选项中随机选择一个。
Sequence Models-第三周
贪婪搜索法并不能保证整体的概率最大
Sequence Models-第三周

3. Beam Search

Beam search的第一步是选择翻译句子的一个单词,
Sequence Models-第三周
第二步,分别基于每个种子首词(B3)预测下一个单词,留下预测概率最高的前B个选择。
Sequence Models-第三周
后面每一步都执行与第二步相似的操作:
Sequence Models-第三周
因此,Beam Search实际上就是每次总选择前三个概率最高的选择,当B设置为1时,Beam Search就相当于Greedy Search。

4. Refinements to Beam Search

从候选翻译句子中挑选最佳选择时,首先应该对候选句子进行长度标准化,通常的策略是乘以一个包含长度的系数。
Sequence Models-第三周
当把B设置的越大,越有可能找到最佳结果,然而也会导致计算量激增。
Sequence Models-第三周

5. Error analysis in beam search

当你对模型翻译的一个句子不够满意时,你需要怀疑是RNN模型的问题,还是beam search 没找到的问题。
这时你需要比较RNN模型计算的满意翻译的概率P(y)和RNN模型计算的不满意翻译的概率P(y)
Sequence Models-第三周
P(y)>P(y)时,说明是beam search 没有搜索到最佳翻译。
P(y)<P(y)时,说明是RNN有问题。
Sequence Models-第三周
多找几个实例,重复以上错误查找步骤,统计各种出错的比例,以确定下一步优化方向。
Sequence Models-第三周

6. Bleu Score

同一个句子对应多个同样好的翻译(答案)时,怎样评价一个机器翻译的准确性呢?Bleu score就是用来做这样一件事的,简单地说,就是查看机器翻译的词汇是否出现在任意一个人工翻译的句子里。
Sequence Models-第三周
孤立的单词统计意义有限,我们也可以采取统计两个连续词汇是否出现在标准答案里。
Sequence Models-第三周
Sequence Models-第三周
事实上,人们常组合多个grams(如1-gram, 2-gram, 3-gram)共同打分。
Sequence Models-第三周

7. Attention Model Intuition

前面我们学习的模型在做翻译时,采用encoder到decoder的方法,然而这种方法对于翻译较长的句子时效果往往不好。
The problem of long sequences
Sequence Models-第三周

Attention model intuition
Attention model 在做翻译时,会考虑附近的词汇环境。
Sequence Models-第三周

8. Attention Model

Sequence Models-第三周
事实用到的attention系数需要额外建立模型去学习
Sequence Models-第三周

9. Speech recognition

从声音到文字
Sequence Models-第三周
可以采用CTC的策略处理从声音到文字过程中输入、输出长度不一致的问题。
Sequence Models-第三周

10. Trigger Word Detection

采用唤醒词唤醒语音识别系统。
Sequence Models-第三周

Sequence Models-第三周

注:如无特殊说明,以上所有图片均截选自吴恩达在Coursera开设的神经网络系列课程的讲义。