HMM模型

HMM模型基础

隐马尔科夫模型(Hidden Markov Model,以下简称HMM)是比较经典的机器学习模型了,它在语言识别,自然语言处理,模式识别等领域得到广泛的应用。当然,随着目前深度学习的崛起,尤其是RNN,LSTM等神经网络序列模型的火热,HMM的地位有所下降。但是作为一个经典的模型,学习HMM的模型和对应算法,对我们解决问题建模的能力提高以及算法思路的拓展还是很好的。


Statistical Machine Translation:IBM Models 1 and 2

Introduction

这部分讲机器翻译,尤其是在统计机器翻译(SMT)系统上,此部分关注IBM翻译模型。这里以翻译法语(源语言)为英语(目标语言)为例,用\(f\)表示法语句子,即\(f_1,f_2...f_m\),其中m为句子的长度;用e表示英语句子,即\(e_1,e_2...e_l\),其中l表示英语句子的长度。用\((f^{(k)},e^{k})\)表示第k个法语句子和英语句子。


Tagging Problems and Hidden Markov Models

概述

对于一个句子,我们要做的是给每一个单词打上词性标记,比如句子the dog saw a cat对应的tag sequence是D N V D N,这个句子的长度是5,对应的输入\(x_1=the,x_2=dog,x_3=saw,x_4=the,x_5=cat\),用\(y_1y_2...y_n\)来表示tagging model的output,对应上面的有\(y_1=D,y_2=N,y_3=V,...\)。匹配句子\(x_1...x_n\)的tag sequence \(y_1...y_n\)的问题叫做 sequence labeling problem 或者是 tagging problem。


Language Modeling

N-Gram

这里首先有个语料库,记录了很多条句子,然后预测给定句子出现的概率。给定一个句子,这里句子的长度为n,也就是\(|V|=n\),第i个单词用字母\(x_i\)表示,那么概率公式表示为:\(P(X_1=x_1,X_2=x_2,...X_n=x_n)\)