《机器学习高频面试题详解》1.16:隐马尔可夫模型
点击上方卡片链接就可以进入专栏,专栏右上角有订阅选项,欢迎大家订阅~
前言
大家好,我是鬼仔,今天带来《机器学习高频面试题详解》专栏的第1.16节:隐马尔可夫模型。这是鬼仔第一次开设专栏,每篇文章鬼仔都会用心认真编写,希望能将每个知识点讲透、讲深,帮助同学们系统性地学习和掌握机器学习中的基础知识,希望大家能多多支持鬼仔的专栏~
目前这篇是试读,后续的文章需要订阅才能查看哦,专栏预计更新30+篇文章(只增不减),具体内容可以看专栏介绍,大家的支持是鬼仔更新的动力!
本文大纲 |
|
一、原理 |
1. 模型定义 |
2. 问题定义 |
|
二、面试真题 |
1. 隐马尔可夫模型有哪些基本假设? |
2. 介绍下维特比算法,在HMM里是怎么使用的? |
|
3. 隐马尔可夫算法存在哪些问题? |
|
4. 介绍下最大熵马尔科夫模型,和HMM有什么区别? |
|
5. 在中文分词问题中,如何使用HMM进行建模和训练? |
一、原理
1. 模型定义
1)马尔可夫过程
马尔可夫过程是满足无后效性的随机过程,假设在一个随机过程中,时刻的状态的条件分布仅仅与前一个状态有关,即,则将其成为马尔可夫过程。如果时间和状态的取值都是离散的,则该马尔可夫过程也称为马尔可夫链,如下图所示:
2)隐马尔可夫模型(HMM,Hidden Markov Model)
隐马尔可夫模型是关于时序的概率模型,描述由一个隐藏的马尔可夫链随机生成不可观测的状态随机序列,再由各个状态生成一个观测,从而产生观测随机序列的过程。
对于简单的马尔可夫模型中,所有状态都是可见的,因此该模型仅仅包括状态间的转移概率。而在隐马尔可夫模型中,状态是不可见的,称为隐状态(用X表示),只有隐状态对应的输出是可见的,即观测态(用Y表示),而观测态Y的概率分布取决于对应的隐状态X,如下图所示:
在隐马尔可夫模型中,参数包括隐状态间的转移概率、隐状态到观测状态的输出概率、隐状态的取值空间、观测态的取值空间一级初始状态的概率分布。
隐马尔可夫模型是一个生成模型,表示状态序列和观测序列的联合分布,但是状态序列是不可见的。隐马尔可夫模型可以用来标注,这时状态对应着标记。标注问题是给定观测序列,预测其对应的标记序列。
2. 问题定义
隐马尔可夫模型包括概率计算问题、预测问题和学习问题三个基本问题。
1)概率计算问题
已知模型的所有参数,计算观测序列Y出现的概率,可使用前向和后向算法求解。
2)预测问题
已知模型的所有参数和观测序列Y,计算最可能的隐状态序列X,可使用维特比算法求解。
3)学习问题
已知观测序列Y,求解使得该观测序列概率最大的模型参数,包括隐状态序列、隐状态之间的转移概率矩阵以及从隐状态到观测态的概率矩阵,可使用鲍姆-韦尔奇(Baum-Welch)算法进行参数学习,该算法是EM算法的一个特例。
限于篇幅,具体的算法在这里就不讲述了。重点关注维特比算法!
二、面试真题
1. 隐马尔可夫模型有哪些基本假设?
两个基本假设:
1)齐次马尔可夫性假设,即假设隐藏的马尔可夫链在任意时刻t的状态只依赖于其前一时刻的
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
专栏作者曾在校招期间拿到包括字节、微信和华为等多家大厂的SSP offer,该专栏主要是为了帮助同学们系统性地学习和掌握机器学习中的基础知识。专栏详细地整理了各大厂的算法岗面经,力争深入浅出地讲解重要知识点,适合人群为准备校招或者实习,且目标岗位为算法岗、数据挖掘岗或者数据分析岗的同学。