[NLP Begin] Classical NLP Methods - HMM

Hidden Markov Models

教材上给出了一个例子:

Initial State Probabilities

初始概率,举个例子:
Noun (N): 0.3
Verb (V): 0.2
Adjective (Adj): 0.5

Hidden state probabilities

From/To N V Adj
N 0.1 0.6 0.3
V 0.4 0.1 0.5
Adj 0.7 0.2 0.1
“众所周知”的规律,比如一个形容词后面大概率跟着一个名词;

Emission probabilities

Word N V Adj
that 0.1 0.1 0.8
person 0.8 0.1 0.1
is 0.1 0.8 0.1
great 0.1 0.1 0.8
running 0.1 0.8 0.1
比如that很大概率是一个形容词,有0.8这么大的概率;
开始计算,第一个单词是that
  • 它的初始概率如下:
    Noun (N): 0.3
    Verb (V): 0.2
    Adjective (Adj): 0.5
  • 发射概率如下:
    Noun (N) : 0.1
    Verb (V) : 0.2
    Adjective (Adj) : 0.5
  • 计算过程如下:
    For Noun : 0.3 × 0.1 = 0.03 0.3 \times 0.1 = 0.03 0.3×0.1=0.03
    For Verb : 0.2 × 0.1 = 0.02 0.2 \times 0.1 = 0.02 0.2×0.1=0.02
    For Adjective : 0.5 × 0.8 = 0.4 0.5 \times 0.8 = 0.4 0.5×0.8=0.4
    发现概率最大的是Adj,所以预测为Adj形容词;

接下来就可以继续接下里的过程,对接下来的每一个单词而言:

  • 该单词的某个tagemission probability
  • 从上一个被选择的tag到当前被选择tagtransistion probability
  • 将这些概率相乘,并且选择概率最高的tag
    到达最后一个单词之后,再回头来处理;
    假设ThattagAdj,再寻找persontag
    假设transition probabilities如下:
    Adj -> N : 0.7,
    Adj -> V : 0.2,
    Adj -> Adj : 0.1,
    person的emission probabilities:
    N : 0.8,
    V : 0.1,
    Adj : 0.1,
    相乘之后比较结果,预测为N的概率最大: 0.7 × 0.8 = 0.56 0.7 \times 0.8 = 0.56 0.7×0.8=0.56

参考

Classical NLP Methods

相关推荐

  1. [NLP Begin] Classical NLP Methods - HMM

    2024-07-12 13:04:02       26 阅读
  2. webpack之HMR

    2024-07-12 13:04:02       23 阅读
  3. 【Webpack】HMR 热更新

    2024-07-12 13:04:02       17 阅读
  4. Python 机器学习 HMM模型三种经典问题

    2024-07-12 13:04:02       43 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-12 13:04:02       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-12 13:04:02       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-12 13:04:02       58 阅读
  4. Python语言-面向对象

    2024-07-12 13:04:02       69 阅读

热门阅读

  1. 【ELK】filebeat 和logstash区别

    2024-07-12 13:04:02       18 阅读
  2. 行为模式9.策略模式------促销活动设计方案

    2024-07-12 13:04:02       21 阅读
  3. Vim 编辑文件时中文乱码的解决方法

    2024-07-12 13:04:02       18 阅读
  4. vim删除多行

    2024-07-12 13:04:02       25 阅读
  5. 嵌入式裸机开发与 Linux 开发

    2024-07-12 13:04:02       22 阅读
  6. 机器学习-分类器-总结

    2024-07-12 13:04:02       19 阅读
  7. Git-如何基于某个tag创建一个新分支

    2024-07-12 13:04:02       27 阅读
  8. 【Linux】Vim 使用教程

    2024-07-12 13:04:02       17 阅读
  9. Hive中的数据类型和存储格式总结

    2024-07-12 13:04:02       21 阅读