1. 引言
随着国防和军队改革的深入推进,全军兴起加强军事人才建设热潮,也对军校研究生教育提出了新的要求:针对服务实战中人才培养的需要,从学术型人才培养向应用型人才培养转变,保证国防和军队改革后的战斗力[1]。而当前军校研究生培养面临着课程内容理论性较强、科学研究工作与人才培养的结合不紧、学生自身积极主动性不够等问题。如何从科学研究和服务部队两个方面出发,建设以学生能力素质提升为主线,以创新能力培养为核心的课程,是军校研究生教育的重点任务[2]。
近代数理统计是面向我校研究生开设的一门选修课程,课程聚焦于统计学中的概念、理论和方法,为学生依据实际问题进行建模或通过统计推断发现问题的内在规律提供科学方法,支撑研究生的专业方向课程学习,启迪研究生分析问题和解决问题的思维[3]。在学情方面,选修该门课程的学生已经选定研究方向,具备了一定的文献查阅能力、问题分析能力和科研探索能力,但是数理统计基础参差不齐,容易对数理统计中的抽象原理望而生畏,同时非常关心如何应用数理统计方法解决实际问题,希望从课程中学习到能应用于专业领域的知识和方法[4]。
在工程实践中,存在大量对观测不完整数据或者含有隐变量的模型做参数估计的问题。直接采用极大似然估计方法通常无法获得参数估计的解析表达式,EM算法是针对此类问题的一种有效的数值求解方法[5]。EM算法是统计学中的核心算法,是高斯混合模型、隐马尔可夫模型、深度生成模型等众多机器学习方法的理论基础,也是近代数理统计课程教学中的一个重难点。
基于这样的国防需求、课程目标和学情特点,我们采用案例式、启发式、研讨式教学方法进行EM算法的教学设计,在提高课程的专业应用性的同时,注重学生多维能力的培养。本次课以基于GMM的轴承退化阶段划分问题为引例,引导学生发现在对不完整观测数据或隐变量模型做极大似然估计时面临的困境以及设计数值解法的必要性。拆解问题并组织学生进行课前思考和课上讨论,使其逐步探索总结出EM算法的迭代更新过程,进而应用算法解决引例问题,再结合matlab编程使学生对迭代过程有更加直观的认识。最后,对比MLE目标函数和EM迭代目标函数,深入分析EM算法的思想内涵,证明EM算法的有效性和收敛性。具体实施过程在2~5节展开介绍。
2. 基于GMM的轴承退化阶段划分问题
2.1. 问题阐述
轴承寿命预测对于开展机械设备健康管理,提高旋转机械运行安全性、可靠性具有重要意义,其中轴承退化阶段的划分能够有效提高其寿命预测的精度[6]。现实应用中通常缺乏大量故障标记数据,经常采用无监督的聚类算法进行轴承退化阶段的划分,高斯混合模型(GMM)就是一种有效的聚类算法:
(1)
其中随机变量Y表示轴承所属退化阶段,其取值为K维one-hot编码向量
,
代表轴承属于第k个退化阶段,每个退化阶段的轴承服从多元高斯分布,即
(2)
为简化后续表达,将(1)式记为
(3)
其中
为总体参数,且
,于是
。
轴承退化阶段划分的目的是通过观测数据
,推断出每个成分的参数
以及每个轴承
所属的退化阶段
。事实上,只要(3)式中的所有参数已知,即可得到
的条件分布为:
(4)
所以解决轴承退化阶段划分的核心问题还是要通过观测
估计总体参数
。
2.2. GMM参数估计的困难
课前向学生发布预习问题1~3,课堂中组织学生交流汇报。
问题1. 已知观测数据
时,请尝试采用MLE方法估计总体参数。
不难发现对数似然函数具有如下形式:
(5)
其中包含求和项的对数,在关于参数求偏导时,导数形式复杂,很难或者无法求得参数估计的解析表达式。而当问题无法解析求解时,我们通常会尝试迭代的数值算法,EM算法就是一种针对不完整观测数据或隐变量模型参数估计的数值迭代算法。
3. EM算法迭代过程探索
数值迭代算法,通常预先给定一个初始值,通过分析目标函数在当前取值下的性质,构造出下一步的参数迭代公式。这里我们采用类似的方式,考虑下面两个问题。
3.1. 模型参数给定时隐变量(轴承退化阶段)后验分布的推断
问题2. 当已知参数为
时,分析观测为
时,退化阶段变量Y的后验分布是什么?
对学生的讨论结果进行总结,对于问题2,有:
(6)
将
记为
,则
,即隐变量的后验分布和先验分布一样,属于多项分布。
3.2. 隐变量(轴承退化阶段)已知时(3)式的MLE
问题3. 当隐变量也可观测时,根据观测数据
能否对(3)式中的参数做MLE?
总结学生讨论结果,轴承特征随机变量X和退化阶段随机变量Y的联合分布如下:
(7)
已知观测数据
时,似然函数为:
(8)
对似然函数求对数,得对数似然函数为:
(9)
对数似然函数关于参数求偏导,可得:
(10)
其中
取值为0或1,相当于只利用样本中属于第k个退化阶段的轴承特征,来估计GMM中第k个成分的参数
。
对于成分占比参数
,极大化(9)式相当于求解如下约束优化问题:
(11)
利用拉格朗日乘子法,可得
,即样本中属于第k个退化阶段的个体所占比例。
3.3. EM算法的迭代过程
问题2和问题3是比较容易解决的,也就是说在总体参数给定的情况下,可以根据观测轴承推断其所属退化阶段的后验分布,在轴承退化阶段也可观测的情况下,能够通过MLE得到总体参数的显式估计。如果交替进行这两步,就可以得到参数的一种迭代更新过程,但是问题2中给出的是分布,而问题3中用到的是观测值,如何衔接这两个过程呢?
联系随机变量的分布和随机变量的观测值,有两种简单途径:第一种是从分布中随机抽样得到观测值,第二种是按照分布对所有可能得观测值求期望。两种途径各有优缺点,抽样法能保证可行的数值计算,但是需要设计抽样方法缓解以偏概全现象,期望法比较全面,但是当分布形式复杂时,难以获得显式表示。当采用第二种途径时,对应的迭代过程就是EM算法:
E步:当参数
时,计算完整观测下的似然函数
或者对数似然函数
关于条件分布
的期望:
(12)
上述期望可以看作是参数
的函数,记为
。
M步:将
极大化,得到参数迭代公式
(13)
4. 基于EM算法的引例问题求解
4.1. GMM参数迭代公式推导
回到GMM中,(8)式中的似然函数关于条件分布
的期望为:
(14)
(9)式中的对数似然函数关于条件分布
的期望为:
(15)
记
为
,则其关于参数的偏导为:
(16)
将
替换为(2)式中的多元高斯分布可得:
(17)
(18)
令偏导为0,即可获得如下参数更新公式:
(19)
参数
更新方式与3.1中类似,
。
这些迭代公式和单高斯分布参数极大似然估计的公式非常类似,差别是GMM迭代公式中为每个观测值赋予了权重
。
4.2. 基于matlab的GMM参数迭代过程展示
通过matlab编程实现上述迭代过程,图1展示了包含两个成分的一维高斯混合模型的参数和类别划分迭代过程。其中黑色曲线代表真实的GMM模型概率密度曲线,红色和蓝色曲线分别代表学习到的两个一维高斯分布成分,底部的红色“*”和蓝色“。”代表两种数据划分结果。可以看到随着迭代次数的增加,学习到的两个成分期望逐渐逼近真实数据分布中的期望,数据划分结果也逐渐接近真实数据类型。
5. EM算法的理论分析
前面几部分启发式地探寻了EM算法的迭代更新步骤,并且通过一维高斯混合模型示例直观展示了EM算法的效果。下面我们从理论角度分析证明EM算法的思想内涵和有效性。
5.1. EM算法的思想
首先,比较EM迭代优化目标
和极大似然估计的优化目标
。
Figure 1. Iterative update process of one-dimensional GMM
图1. 一维混合高斯模型的迭代更新过程
以连续型隐变量为例,也就是比较
和
,我们选择从
出发逐步向
靠拢:
(20)
其中
为凹函数,根据Jensen不等式,可得:
(21)
其中
和优化参数
无关,(21)式说明EM迭代优化目标
是MLE优化目标
的下界,也就是说EM算法中每个E步,都是在当前参数
下求
的下界函数,再用下界函数的极大值点来更新参数,过程如图2所示。
虽然无法直接求得
的极大值点,但是按照这样的学习过程,在迭代过程中参数会朝着极大值点不断靠近,最终能够达到极大值点的任意小邻域内。这样的学习过程也蕴含着人生哲理:不积跬步无以至千里,不积小流无以成江海,在学习和工作中,每天积累一点,我们就会朝着目标不断靠近。
5.2. EM算法的收敛性
从图2中直观来看,EM算法之所以有效,是因为随着参数的迭代更新,
在不断提高,这一结果是可证明的。
定理:EM算法在每一次迭代后,都有
。
Figure 2. Parameter learning process of EM algorithm
图2. EM算法参数学习过程
证明:根据条件概率公式,有:
(22)
两边取对数,则有:
(23)
两边同时关于条件分布
求期望,可得:
(24)
将
和
代入
再相减,可得:
(25)
因为
,所以等式右边第一项
,将等式右边第第二项记为K,对其做等价变换,有:
(26)
根据Jensen不等式,有:
(27)
综上所述,
。
再根据单调有界原理,若
有上界,则EM算法收敛到
的稳定点。从图2也可以看出,EM算法不能保证收敛到全局最优点,而且收敛位置受到初值影响。较为可行的办法是选取几个不同的初值进行迭代,然后在多个估计间加以选择,减轻初值选取对结果的影响[7]。
6. 教学效果分析
学生通过查阅资料和课前讨论,针对教师课前给出的3个问题做了充分准备,并且在授课过程中主动发言,课堂参与的主动性和积极性被充分调动。此外学生的科研兴趣也得到了激发,在课后进一步追踪EM算法的研究进展及其在前沿机器学习方法中的应用。批改课后大作业发现,作业的结构完整度、统计方法和专业应用的契合度都有明显提升,学生基本都能通过编程实现算法。此外,通过微信群向选修课程的12名学生发出调查问卷,请他们对本节课的教学效果进行评价,统计结果分析见表1。
Table 1. Feedback on class effectiveness of EM algorithm
表1. EM算法课堂效果反馈
调查项目 |
备选项及对应占比 |
对教学模式是否满意? |
A. 非常满意(占比91.7%) |
B. 满意(占比8.3%) |
C. 不满意(占比0%) |
对教学内容是否满意? |
A. 非常满意(占比100%) |
B. 满意(占比0%) |
C. 不满意(占比0%) |
对能力提升是否有用? |
A. 非常有用(占比83.3%) |
B. 比较有用(占比16.7%) |
C. 不太有用(占比0%) |
对专业研究是否有帮助? |
A. 非常有帮助(占比83.3%) |
B. 比较有帮助(占比16.7%) |
C. 帮助不大(占比0%) |
7. 结语
本节课以与学生专业相关的轴承退化阶段划分问题为引例,结合课前问题,引导学生发现隐变量模型极大似然估计中的困难,从而探索迭代数值算法,总结EM算法的一般步骤,并应用其解决引例问题,培养了学生分析问题、解决问题的能力,锻炼了学生的探索思维,提高了学生的创新意识。最后通过理论推导,分析EM算法的内涵和收敛性,培养学生严谨的科研态度,并且挖掘算法中蕴含的思政元素,在知识传授、能力培养的同时实现价值塑造。学生课堂上主动讨论,课后积极探索并认真完成大作业,对于课堂效果满意度较高,为课程的进一步建设提供了方向。
致 谢
感谢相关文献对本文的启发以及审稿专家提出的宝贵意见。