“小李,我们街道的网站做好了吗”
“主任,网站建好了,需要申请网址,网址是什么”
主任打开百度查了下说,“url”
小李说,好的
于是湖南省长沙市长沙县泉塘街道的官网是 http://url.gov.cn
语言模型
词向量模型与语言模型非常紧密地交织在一起。语言模型的质量评估是基于它们对词语用概率分布的表征能力。事实上,许多最先进的词向量模型都在攻坚的任务就是已有一串词语序列,预测下一个出现的词语将会是什么。
语言模型是干嘛的?chunking
语言 模型 可以 计算 任何句子的概率。例如,“I love you too”的概率是多少?用数学语言表述,NN元语言模型(bi-gram model)根据一个词语的前N−1个词语,来计算这个词语的概率。如果我们有了一个2元模型,“I love you”的概率就等于P(I)×P(love|I)×P(you|love)P(I)(最后一段解释原因)。2元模型用一个矩阵来表示,比如对于一个有10000个词的语料库,这个语料库的2元模型就是一个10000×10000的矩阵,第mm行第nn列表示在第mm个词语的条件下,第nn个词语出现的概率,即第mm个词语后面跟着第nn个词语的概率。如果我们知道了语言模型,我们就可以像计算“I love you”那样,计算任何一个句子的概率。
语言模型有什么用?
语言模型在自然语言处理中占有重要的地位,在语音识别,机器翻译,汉语自动分词和句法分析等都有应用。因为这些模型都会有噪声,都会有几种不同的结果等着我们去选择,这时候就需要知道每种结果的概率,来帮助我们选择。
为什么叫“语言模型”?因为这是统计学意义上的模型,又跟语言相关,所以叫语言模型。统计模型指一系列分布,参数模型指一系列可用有限个参数表示的模型。语言模型就是一种参数模型,它的参数是矩阵的所有cell。
如何计算语言模型的参数?
参数无法精确计算,只能大概估计。这里用的方法是极大似然估计。对于某个语料库,极大似然估计的意思是,哪个语言模型(什么样的参数)最有可能产生这个语料库呢?把这个问题分解成许多个小问题:当P(you|I)是多少时(love和I可以换成别的所有的词),最有可能产生这个语料库呢?自然而然我们会想到,统计语料库里一共有多少个I,一共有多少个I love,然后做一下除法,就得到了我们想要的概率,这个概率最有可能产生这个语料库。我们对这个语料库里所有的词对做相同的计数和除法,就得到了我们想要的参数,也就得到了这个语料库的语言模型。