NLP Homework 03 ——冯煜博

题目描述

(盒子和球模型)假设有3个盒子,每个盒子里装有红白两种颜色的球,盒子里的红白球有下表列出,初始状态分布。

解答

1. 给出HMM模型 \(\mu=(A, B,\pi)\)

A,“状态转移矩阵”如下:
\[
\begin{array}{c|lcr}
A & \text{box1} & \text{box2} & \text{box3} \\
\hline
box1 & 0.5 & 0.2 & 0.3 \\
box2 & 0.3 & 0.5 & 0.2 \\
box3 & 0.2 & 0.3 & 0.5
\end{array}
\]

B,“符号发射概率”如下矩阵:
\[
\begin{array}{c|lcr}
B & \text{red} & \text{white} \\
\hline
box1 & \frac{1}{2} & \frac{1}{2} \\
box2 & \frac{2}{5} & \frac{3}{5} \\
box3 & \frac{7}{10} & \frac{3}{10}
\end{array}
\]

\(\pi\),“初始状态的概率分布”如下矩阵
\[
\begin{array}{c|cr}
& \text{box1} & \text{box2} & \text{box3} \\
\hline
\pi & 0.2 & 0.4 & 0.4
\end{array}
\]

2. 试用前向算法计算观测序列概率:{红,白,红}

O = {红, 白, 红}

step 1 初始化

\(a_{红}(box1) = \pi_{box1} b_{box1}(红) = 0.2 \times \frac{1}{2} = 0.1\)

\(a_{红}(box2) = \pi_{box2} b_{box2}(红) = 0.4 \times \frac{2}{5} = 0.16\)

\(a_{红}(box3) = \pi_{box3} b_{box3}(红) = 0.4 \times \frac{7}{10} = 0.28\)

step 2 归纳计算

\[
\begin{align}
a_{红白}(box1) & = \left[ \sum_{i=1}^{3} a_{红}(box_{i})a_{box_{i} box_{1}} \right] b_{box_{1}}(白) \\
& =\left[ a_{红}(box1) \times 0.5 + a_{红}(box2) \times 0.3 + a_{红}(box3) \times 0.2 \right] \times \frac{1}{2} \\
& = 0.077
\end{align}
\]

\[
\begin{align}
a_{红白}(box2) & = \left[ \sum_{i=1}^{3} a_{红}(box_{i})a_{box_{i} box_{2}} \right] b_{box2}(白) \\
& = \left[ a_{红}(box1) \times 0.2 + a_{红}(box2) \times 0.5 + a_{红}(box3) \times 0.3 \right] \times \frac{3}{5} \\
& = 0.1104
\end{align}
\]

\[
\begin{align}
a_{红白}(box3) & = \left[ \sum_{i=1}^{3} a_{红}(box_{i})a_{box_{i} box_{3}} \right] b_{box_{3}}(白) \\
& = \left[ a_{红}(box1) \times 0.3 + a_{红}(box2) \times 0.2 + a_{红}(box3) \times 0.5 \right] \times \frac{3}{10} \\
& = 0.0606
\end{align}
\]

\[
\begin{align}
a_{红白红}(box1) & = \left[ \sum_{i=1}^{3} a_{红白}(box_{i}) a_{box_{i}box1} \right] b_{box1}(红) \\
& = \left[ a_{红白}(box1) \times 0.5 + a_{红白}(box2) \times 0.3 + a_{红白}(box3) \times 0.2 \right] \times \frac{1}{2} \\
& = 0.04187
\end{align}
\]

\[
\begin{align}
a_{红白红}(box2) & = \left[ \sum_{i=1}^{3} a_{红白}(box_{i}) a_{box_{i}box2} \right] b_{box2}(红) \\
& = \left[ a_{红白}(box1) \times 0.2 + a_{红白}(box2) \times 0.5 + a_{红白}(box3) \times 0.3 \right] \times \frac{2}{5} \\
& = 0.035512
\end{align}
\]

\[
\begin{align}
a_{红白红}(box3) & = \left[ \sum_{i=1}^{3} a_{红白}(box_{i}) a_{box_{i}box3} \right] b_{box3}(红) \\
& = \left[ a_{红白}(box1) \times 0.3 + a_{红白}(box2) \times 0.2 + a_{红白}(box3) \times 0.5 \right] \times \frac{7}{10} \\
& = 0.052836
\end{align}
\]

step 3 求和终结

\[
\begin{align}
P(O | \mu) & = \sum_{i=1}^{3}a_{红白红} (box_{i}) \\
& = a_{红白红}(box1) + a_{红白红}(box2) + a_{红白红}(box3) \\
& = 0.04187 + 0.035512 + 0.052836 \\
& = 0.130218
\end{align}
\]

3. 试用维特比算法,求解观测序列{红,白,红}的最优状态序列。 (要求给详细计算过程)

假设从盒子中取球是放回抽样概率模型。

step 1 初始化

\(\delta_{红}(box1) = \pi_{box1}b_{box1}(红) = 0.2 \times \frac{1}{2} = 0.1\)

\(\delta_{红}(box2) = \pi_{box2}b_{box2}(红) = 0.4 \times \frac{2}{5} = 0.16\)

\(\delta_{红}(box3) = \pi_{box3}b_{box3}(红) = 0.4 \times \frac{7}{10} = 0.28\)

\(\varphi_{红}(box1) = 0\)

\(\varphi_{红}(box2) = 0\)

\(\varphi_{红}(box3) = 0\)

step 2 归纳计算 1

\[
\begin{align}
\delta_{红白}(box1) & = max \left[ \delta_{红}(box1)a_{box1box1} , \delta_{红}(box2)a_{box2box1} , \delta_{红}(box3)a_{box3box1} \right] b_{box1}(白) \\
& = 0.28 \times 0.2 \times \frac{1}{2} \\
& = 0.028
\end{align}
\]

\[
\begin{align}
\delta_{红白}(box2) & = max \left[ \delta_{红}(box1)a_{box1box2} , \delta_{红}(box2)a_{box2box2} , \delta_{红}(box3)a_{box3box2} \right] b_{box1}(白) \\
& = 0.28 \times 0.3 \times \frac{3}{5} \\
& = 0.0504
\end{align}
\]

\[
\begin{align}
\delta_{红白}(box3) & = max \left[ \delta_{红}(box1)a_{box1box3} , \delta_{红}(box2)a_{box2box3} , \delta_{红}(box3)a_{box3box3} \right] b_{box3}(白) \\
& = 0.28 \times 0.5 \times \frac{3}{10} \\
& = 0.042
\end{align}
\]

记忆回退路径 1

\[
\begin{align}
\varphi_{红白}(box1) & = argmax \left[ \delta_{红}(box1)a_{box1box1} , \delta_{红}(box2)a_{box2box1} , \delta_{红}(box3)a_{box3box1} \right] b_{box1}(白) \\
& = \frac{1}{2} \delta_{红}(box3)a_{box3box1}
\end{align}
\]

\[
\begin{align}
\varphi_{红白}(box2) & = argmax \left[ \delta_{红}(box1)a_{box1box2} , \delta_{红}(box2)a_{box2box2} , \delta_{红}(box3)a_{box3box2} \right] b_{box2}(白) \\
& = \frac{3}{5} \delta_{红}(box3) a_{box3box2}
\end{align}
\]

\[
\begin{align}
\delta_{红白}(box3) & = argmax \left[ \delta_{红}(box1)a_{box1box3} , \delta_{红}(box2)a_{box2box3} , \delta_{红}(box3)a_{box3box3} \right] b_{box3}(白) \\
& = \frac{3}{10} \delta_{红}(box3)a_{box3box3} \\
\end{align}
\]

归纳计算 2

\[
\begin{align}
\delta_{红白红}(box1) & = max \left[ \delta_{红白}(box1)a_{box1box1} , \delta_{红白}(box2)a_{box2box1} , \delta_{红白}(box3)a_{box3box1} \right] b_{box1}(红) \\
& = 0.0504 \times 0.3 \times \frac{1}{2} \\
& = 0.0756
\end{align}
\]

\[
\begin{align}
\delta_{红白红}(box2) & = max \left[ \delta_{红白}(box1)a_{box1box2} , \delta_{红白}(box2)a_{box2box2} , \delta_{红白}(box3)a_{box3box2} \right] b_{box1}(红) \\
& = 0.0504 \times 0.5 \times \frac{2}{5} \\
& = 0.01008
\end{align}
\]

\[
\begin{align}
\delta_{红白红}(box3) & = max \left[ \delta_{红白}(box1)a_{box1box3} , \delta_{红白}(box2)a_{box2box3} , \delta_{红白}(box3)a_{box3box3} \right] b_{box3}(红) \\
& = 0.042 \times 0.5 \times \frac{7}{10} \\
& = 0.0147
\end{align}
\]

记忆回退路径 2

\[
\begin{align}
\varphi_{红白红}(box1) & = argmax \left[ \delta_{红白}(box1)a_{box1box1} , \delta_{红白}(box2)a_{box2box1} , \delta_{红白}(box3)a_{box3box1} \right] b_{box1}(红) \\
& = \frac{1}{2} \delta_{红}(box2)a_{box2box1}
\end{align}
\]

\[
\begin{align}
\varphi_{红白红}(box2) & = argmax \left[ \delta_{红白}(box1)a_{box1box2} , \delta_{红白}(box2)a_{box2box2} , \delta_{红白}(box3)a_{box3box2} \right] b_{box2}(红) \\
& = \frac{2}{5} \delta_{红白}(box2) a_{box2box2}
\end{align}
\]

\[
\begin{align}
\delta_{红白红}(box3) & = argmax \left[ \delta_{红白}(box1)a_{box1box3} , \delta_{红白}(box2)a_{box2box3} , \delta_{红白}(box3)a_{box3box3} \right] b_{box3}(白) \\
& = \frac{7}{10} \delta_{红白}(box3)a_{box3box3} \\
\end{align}
\]

step 3 终结

\[
\begin{align}
\hat{Q}_{红白红} & = argmax \left[ \delta_{红白红}(box1) , \delta_{红白红}(box2) , \delta_{红白红}(box3) \right] \\
& = \delta_{红白红}(box3)
\end{align}
\]

\[
\begin{align}
\hat{P}(\hat{Q}_{红白红}) & = max \left[ \delta_{红白红}(box1) , \delta_{红白红}(box2) , \delta_{红白红}(box3) \right] \\
& = 0.0147
\end{align}
\]

step 4 路径(状态序列)回溯

\[
\begin{align}
\hat{q}_{红白} = \varphi_{红白红}(\hat{q}_{红白红}) = \varphi_{红白红} \left[ \delta_{红白红}(box3) \right]
\end{align}
\]

\[
\begin{align}
\hat{q}_{红} = \varphi_{红白}(\hat{q}_{红白}) = \varphi_{红白} \left[ \delta_{红白}(box2) \right]
\end{align}
\]

\[
\begin{align}
\hat{q} = \varphi_{红}(\hat{q}_{红}) = \varphi_{红} \left[ \delta_{红}(box3) \right]
\end{align}
\]

nlp homework 03的更多相关文章

  1. NLP相关问题中文本数据特征表达初探

    1. NLP问题简介 0x1:NLP问题都包括哪些内涵 人们对真实世界的感知被成为感知世界,而人们用语言表达出自己的感知视为文本数据.那么反过来,NLP,或者更精确地表达为文本挖掘,则是从文本数据出发 ...

  2. NLP问题特征表达基础 - 语言模型(Language Model)发展演化历程讨论

    1. NLP问题简介 0x1:NLP问题都包括哪些内涵 人们对真实世界的感知被成为感知世界,而人们用语言表达出自己的感知视为文本数据.那么反过来,NLP,或者更精确地表达为文本挖掘,则是从文本数据出发 ...

  3. 小兔JS教程(四)-- 彻底攻略JS数组

    在开始本章之前,先给出上一节的答案,参考答案地址: http://www.xiaotublog.com/demo.html?path=homework/03/index2 1.JS数组的三大特性 在J ...

  4. 小兔JS教程(三)-- 彻底攻略JS回调函数

    这一讲来谈谈回调函数. 其实一句话就能概括这个东西: 回调函数就是把一个函数当做参数,传入另一个函数中.传进去的目的仅仅是为了在某个时刻去执行它. 如果不执行,那么你传一个函数进去干嘛呢? 就比如说对 ...

  5. 文本分类(TextCNN,Keras)

    数据集是网上找的,已上传至我的 Github,项目完整地址:https://github.com/cyandn/practice/tree/master/text-classification 流程: ...

  6. 【NLP新闻-2013.06.03】New Book Where Humans Meet Machines

    英语原文地址:http://nlp.hivefire.com/articles/share/39865/ 注:本人翻译NLP新闻只为学习专业英语和扩展视野,如果翻译的不好,请谅解! (我挺想看这本书的 ...

  7. NLP 自然语言处理

    参考: 自然语言处理怎么最快入门:http://www.zhihu.com/question/ 自然语言处理简介:http://wenku.baidu.com/link?url=W6Mw1f-XN8s ...

  8. 【NLP】3000篇搜狐新闻语料数据预处理器的python实现

    3000篇搜狐新闻语料数据预处理器的python实现 白宁超 2017年5月5日17:20:04 摘要: 关于自然语言处理模型训练亦或是数据挖掘.文本处理等等,均离不开数据清洗,数据预处理的工作.这里 ...

  9. 【NLP】Python实例:申报项目查重系统设计与实现

    Python实例:申报项目查重系统设计与实现 作者:白宁超 2017年5月18日17:51:37 摘要:关于查重系统很多人并不陌生,无论本科还是硕博毕业都不可避免涉及论文查重问题,这也对学术不正之风起 ...

随机推荐

  1. IntelliJ IDEA 普通java工程如何转为maven工程

    1.项目上右键 Add Framework Support. 2.选择maven,点击OK.

  2. linux 下查看c 函数帮助

    帮助文档 man man MANUAL SECTIONS The standard sections of the manual include: User Commands System Calls ...

  3. 巧用CurrentThread.Name来统一标识日志记录(java-logback篇)

    ▄︻┻┳═一Agenda: ▄︻┻┳═一巧用CurrentThread.Name来统一标识日志记录 ▄︻┻┳═一巧用CurrentThread.Name来统一标识日志记录(续) ▄︻┻┳═一巧用Cur ...

  4. webpack使用七

    产品阶段的构建 目前为止,我们已经使用webpack构建了一个完整的开发环境.但是在产品阶段,可能还需要对打包的文件进行额外的处理,比如说优化,压缩,缓存以及分离CSS和JS. 对于复杂的项目来说,需 ...

  5. sqli-labs(七)——登陆处sql注入

    第十三关: 这关也是一个登陆口,和上关所说的一样,先使用'"试一下,让程序报错然后判断后台的sql语句 可以看到后台sql大概是 where name = ('$name')...  这样的 ...

  6. codeforces 185A Plant(推公式)

    Plant [题目链接]Plant [题目类型]推公式 &题解: 这个是可以推公式的: 每年的总个数是4^n个,设n年时向上的个数是x个,向下的个数是y个,那么n+1年时,向上的个数是3* x ...

  7. jQuery-导航下拉菜单-实用简单

    /*CSS代碼*/ /*導航*/ .nav{background: url("../img/menu_bar.gif") repeat-x;} .nav ul li{display ...

  8. c#之正则表达式

    一,C#正则表达式符号模式 字 符 描 述 \ 转义字符,将一个具有特殊功能的字符转义为一个普通字符,或反过来 ^ 匹配输入字符串的开始位置 $ 匹配输入字符串的结束位置 * 匹配前面的零次或多次的子 ...

  9. linux打包压缩与搜索命令

    1.tar命令 tar命令用于对文件进行打包压缩或解压,格式为“tar [选项] [文件]”.  tar命令的参数及其作用 参数 作用 -c 创建压缩文件 -x 解开压缩文件 -t 查看压缩包内有哪些 ...

  10. Python全栈-网络编程-TCP粘包

    一.什么是TCP粘包 C/S架构下,接收方不知道每个消息的发送间隙.也不知道每次应该提取多少个字节的数据,与此同时,TCP是面向连接的,面向流的,收发两端都要有,因此发送端为了将多个发往接收端的数据包 ...