一. 什么是建模?模型又是什么?
建模,是人们为了理解事物而对事物做出的一种抽象,是对事务进行书面无歧义的描述。
模型就是对实际问题或者是客观规律进行的形式化的表达。
二. 关于语言模型
长久以来,人们一直希望计算机可以理解我们人类的语言,从而进行一系列其他的应用,比如机器翻译,语音识别,分词,输入法,搜
索引擎的自动补全等。以前人们是进行基于规则的语言模型的研究方向,遇到了很大的问题,后来便出现了基于统计的语言模型,这些
在《数学之美》中吴军老师有进行详细的介绍。那么,当下人们使用最多,应用最广的便是n元语言模型。其实这个模型本质上就是在
判断一个句子是句子的概率.
三. N-gram model
1. 定义
假设一个句子是由 {
w1,w2,w3,...wn} { w 1 , w 2 , w 3 , . . . w n } ,来表示的,其中 wi w i 表示的句子中的单词,那么,一个语言模型就可以用如下来表示:
P={
w1,w2,w3,...wn} P = { w 1 , w 2 , w 3 , . . . w n }
那么我们将如何来计算呢?
从公式可以看出,我们要计算这样一个表达式的,是非常困难的,于是,这个时候马尔可夫链便发挥了重大作用。
2.什么是马尔可夫链?
马尔科夫链描述的是一个随机状态,他指出某个状态只与其前(后)一个或者两个状态有关系,再往前的状态对当前状态的影响可以忽略不
算,这个整体还是比较符合人民的认知的。按照这个理论的话,上面的计算便可以简化,因为:
P{
wm|w1,w2,...wn}=P{
wm|wm−1,wm−2} P { w m | w 1 , w 2 , . . . w n } = P { w m | w m − 1 , w m − 2 }
以上就是一个简单的三阶马尔可夫链,也就是三元语言模型,属于二阶马尔科夫假设。
3.n-gram 模型应用举例
- 拼音转汉字
P(PinYin) = ta shi yan jiu sheng wu de
那么对应的可能的汉语是:
P(CString)or