APP下载

基于事件提取和改进MMHC的航空旅客运输事故征候贝叶斯网络建模*

2021-03-12周志鹏诸泽宇

中国安全生产科学技术 2021年2期
关键词:贝叶斯语义事故

周志鹏,诸泽宇

(南京航空航天大学 经济与管理学院,江苏 南京 211189)

0 引言

由于航空旅客运输事故的偶然性以及事故后果的严重性,事故预防始终是各地区发展航空业的首要任务。在航空旅客运输过程中,事故征候相较事故,出现频率更高。事故征候指非失事而关系飞机运行,并影响飞行安全的事件。导致事故发生的致因因素同样存在于事故征候中,事故征候与事故的差异仅在于某个偶然因素,部分条件的改变可能导致其演化为事故,进而造成人员伤亡或财产损失。

目前事故征候研究主要集中于某类特定事故征候,如跑道超限[1]、尾流[2],或某个特定飞行阶段,如着陆[3]、滑行[4]。然而,事故征候之间、致因因素之间、致因因素与事故征候之间相互引起与被引起的关系,构成客观存在的事故征候网络,这在机场运营过程中具有一定普遍性。因此研究事故征候网络的演化机理和风险控制措施,有利于进一步拓展和完善民航事故致因理论,同时各要素间的耦合作用的解析有助于控制事故征候风险,阻止其演变为事故,提升民航系统的安全管理水平。

基于历史事故数据的分析和关键信息的提取,学者运用概率统计[5]与数据挖掘[6]技术研究事故征候机理。Arnaldo等[7]运用贝叶斯推理和层次分析,构建具有不同复杂性和目标的统计估计和预测模型,识别飞行器的异常情况。Rao等[8]基于美国国家运输安全委员会事故数据库中民用直升机事故案例,识别高风险致因序列,构建机上失控事故致因链。现有研究中致因因素数据通常直接来源于数据库或依赖于低效的人工提取。不同数据库、不同学者对于事故征候致因的表述方式尚未形成统一,阻碍了数据互通。如何高效准确地分析事故征候报告并提取致因信息是当前民航安全管理工作面临的主要挑战之一。

本文拟基于实际案例数据集与事件提取技术,提取事故征候叙述文本中的致因事件集合,运用贝叶斯网络学习算法,解析致因事件之间、致因事件与结果事件之间的因果关系,构建航空旅客运输事故征候贝叶斯网络(Bayesian Network of Civil Aviation Passenger Transport Incidents,CAPTI-BN)。基于网络建模结果,量化分析航空旅客运输风险以及各致因事件参数特征,识别关键致因事件。

1 模型要素定义

贝叶斯网络是分析事故因素间相互作用及其演化过程的有效工具[9-10]。在化工[11]、道路交通[12]等领域,学者利用模型中基于局部条件的依赖关系,进行双向不确定性研究,对事故致因之间、事故与事故致因之间的关联性进行量化分析[13],为风险评估、事故预测提供决策支持。在贝叶斯网络(Bayesian Network,BN)中,基于BN中节点的有向关联,P(XN)计算方法如式(1)所示:

(1)

式中:XN为节点集合;P(XN)为节点联合概率分布;Xn为XN中的节点元素;Xpa(n)为节点Xn的父节点集合;P(Xn|Xpa(n))为父节点状态已知情况下Xn的条件概率。

因此,贝叶斯网络由节点、有向弧、概率3部分组成。CAPTI-BN中事故征候的演化机理是网络的描述对象,致因事件和结果事件为网络的节点。有向弧和节点概率分布则用于表征致因事件之间、致因事件与结果事件之间的因果关系。

定义1:致因事件指在事故征候演化过程中,对事件结果有直接影响的参与者行为。致因事件的主体要素包括机组成员、管制人员等机场工作人员,飞行器及其关联设备以及飞机运行的天气条件。因此,根据主体要素,致因事件包含人的不安全行为或状态、飞行器的不安全动作、不良的天气条件3种类型。

定义2:结果事件指在事故征候演化过程中致因事件引起的主体要素相应措施和状态变化。

ASRS(Aviation Safety Reporting System)数据库创建于1976年,是目前数据规模最大、发展最完善的航空安全自愿报告系统,是本文致因事件和结果事件类型划分的主要参考依据。根据ASRS案例字段的分析,本文选取Human Factor,Anormal,Result 3个字段,其中,Human Factor主要记录事故征候中人的不安全状态。Anormal字段记录事故征候中机组成员、飞行器、管制人员、天气环境等主体要素的异常动作。Result字段记录主体要素由事故征候导致的状态和动作的变化。根据致因事件和结果事件定义,上述3个字段中,Human Factor与Anormal字段主要描述事故征候中致因事件的信息,而Result字段则描述结果事件信息。本文针对上述字段,重新进行人工分类与编码,提出航空旅客运输事故征候中致因事件和结果事件的类型和编码,见表1。AE表示飞行器致因事件,HE表示人为致因事件,WE表示天气致因事件,R表示结果事件。

此外,ASRS数据库的Narrative字段记录事故征候过程的叙述文本,该字段将作为后续事件提取算法的数据集。

2 事故征候贝叶斯网络建模

2.1 致因事件提取

在自然语言处理领域,ACE[14](Automatic Content Extraction)项目对事件的定义是涉及参与者的特定事件或是事物状态的变化。与本文的致因事件概念存在相似性。致因事件提取可认为是民航语境下的事件提取任务。因此,结合ACE中事件提取任务的定义,本文对致因事件提取任务范围进行界定。致因事件提取的3个子任务包括事件触发词提取、事件参数提取以及致因事件分类,见表2。致因事件提取是1个语义识别和文本分类的过程。与文献[15]类似,本文引入抽象语义表达(Abstract Meaning Representation,AMR)的思想,将事件中触发词、参数间语义关系转化为句子成分的语法结构关系。

表1 CAPTI-BN节点编码及含义Table 1 Node code and meaning of CAPTI-BN

同时,依据致因事件分类体系,人工构建致因事件类型抽象语义结构。提取算法将事故文档中的句子解析为各语句成分的关系树,并将不同的致因事件结构和事件叙述文本映射至同一语义空间中,以确定语义空间中最接近的事件类型。该方法将事件提取的触发词识别、参数识别转化为句子结构的分类,只需少量现有事件类型的人工注释,而无需对事件类型、触发词、参数的标注,节约大量人力成本。

表2 致因事件提取子任务及其内容Table 2 Extracted subtasks and their contents of causal event

事故征候叙述文本是致因提取算法的输入数据,其语法结构较为复杂,加大了语义抽取难度。为提升算法精度和效率,本文调用StanfordParser解析事故描述文中语义成分的依存关系,简化叙述文本。 StanfordParser引入Compositional Vector Grammar (CVG),将Probabilistic Context Free Grammar (PCFG)与递归神经网络结合,以学习句子语法语义和句子成分[16]。句中谓语作为句子的中心词和AMR结构的根,选取主语、宾语、宾语补足语、状语4种语法成分,作为根的参数。因此,对于语句中的触发词t,可根据事件参数和参数关系构建事件语义结构St。对于现有致因事件类型e,将其事件类型作为根,并构建包含其预定义参数的语义结构Se。

同时,为更好表征文本中每个单词的语义、语法和位置信息,引入Bert进行词向量化,并将输入文本中每个句子转化为1个词向量序列[17]。Bert应用Masked LM和Next Sentence Prediction 2种方法分别捕捉词语和句子级别的语义表达。通过Bert词嵌入,语句的事件语义结构St中参数w1,w2的关系如式(2)所示:

Vt=[Vw1;Vw2]×Mφ

(2)

式中:w1,w2为语义结构参数;Vw1,Vw2为参数w1,w2的d维向量化表示;Mφ为参数关系的矩阵化表示;Vt为参数w1,w2及其关系的向量化结果。

预定义的致因事件类型Se,同理可向量化表示为Ve。Bert的输出结果是分类模型的输入,计算输入事件与事件类型的相似度,输出相似度最高的事件类型,作为事件提取的结果,如式(3)所示:

(3)

式中:e*为语句t相似度最高的事件类型;Ve*为事件类型e*的向量化表示;E为事件类型集合;ei为E中的事件类型;Vei为ei的向量化表示。

2.2 CAPTI-BN网络学习

基于数据驱动的贝叶斯网络学习通常分为2阶段执行。第1阶段是结构学习,从数据集中学习节点间的条件独立性规则,并构建网络拓扑结构。第2阶段是参数学习,学习网络结构中隐含的局部分布,构建条件概率表。

在结构学习阶段,条件独立性测试和评分搜索的混合算法能够得到更精确的计算结果,计算效率更高[18]。因此,本文通过CAPTI-BN节点定义,预设部分节点间的关系,并结合混合算法中经典的最大最小爬山算法(Max-Min Hill Climbing,MMHC),提出改进MMHC算法。算法具体执行步骤如下:

步骤1:确定黑名单与白名单。黑名单指不存在因果关系的节点对集合。由定义2可知,结果事件仅由致因事件引起,因此结果事件之间不存在有向弧,将结果事件对加入黑名单中。白名单指存在因果关系的节点对集合。白名单可根据历史数据和管理经验,人工构建。本文因缺少该类数据支持,暂不考虑白名单,后续研究中可进一步补充。

步骤2:前向过程。对于目标变量T,输出其候选父、子节点集合CPC(Candidate Parents and Children)。若白名单中存在涉及T的节点对,将此类节点对中的非T变量加入CPC集合中。之后,基于CPC及其子集,得到除CPC内变量外所有变量与T最小条件关联,并取其中的最大值,以及达到最大值的变量F,如式(4)~(5)所示:

assocF=maxx∈VMinassoc(X;T|CPC)

(4)

F=argmaxMinassoc(X;T|CPC)

(5)

式中:V为变量X的集合;T为目标变量;CPC为变量T的候选父子节点集合;assoc(X;T|CPC)为变量X与T的CPC条件关联函数;assocF为条件关联最大值;F为条件关联取最大值时X的取值。

关联值函数assoc(X;T|CPC)通过G2统计测算。计算G2统计量对应的p值,并取负值,作为关联值函数结果。通常p值低于0.05时,X与T是条件独立的。若F与T非条件独立,则将变量F加入到CPC中,重复上述过程直至CPC集合不再变化,如式(6)~(7)所示:

(6)

assoc(X;T|CPC)=-p_value(G2)

(7)

步骤3:后向过程。当给定CPC某个子集S时,若目标变量T与CPC表中元素X是独立的,则从CPC表中剔除X。遍历CPC中所有的变量后,输出变量T满足条件独立的父节点和子节点,得到新的CPC表。

步骤4:爬山算法。运用贪婪爬山算法,对网络结构添加新弧、删除原有弧、改变弧的方向。其中当且仅当A属于B的CPC集合且A→B不属于黑名单集合时,添加新弧A→B,最终,输出BDeu得分最高的网络结构。BDeu评分函数假设模型满足迪利克雷分布,计算过程如式(8)~(9)所示:

(8)

(9)

式中:G为网络结构;D为数据集;fBDeu(G,D)为网络结构G在数据集D中的BDeu评分结果;Γ为Gamma函数;n为节点数量;mijk为节点i的状态为k且父节点取值为j时的样本数量;ri为节点i状态数量;qi为父节点取值组合的数量;αijk为迪利克雷分布参数;m′为中间统计量;P(G)为G的概率分布。

在参数学习阶段,结合结构学习的父子节点分布与式(1)的变量全概率公式,计算各节点条件概率表(Conditional ProbabilityTable,CPT)。

3 结果与分析

3.1 CAPTI-BN建模结果

本文的训练数据集包含ASRS中2017年1月至2019年12月的7 265份旅客运输事故征候报告。

在致因事件提取阶段,本文选取Stanford parser4.0版本,Bert选用uncased_L-4_H-256_A-4版本,在pytorch环境下运行算法程序。叙述文本是致因提取模型的输入数据。该阶段模型输出为案例中致因事件集合。依据表1和ASRS的result字段,对案例中的致因事件与结果事件进行0-1编码。遍历所有案例后,将数据集转化为0-1矩阵。

在贝叶斯网络结构学习阶段,0-1矩阵是贝叶斯网络学习算法的输入。在此阶段,本文通过R中的bnlearn库调用MMHC算法,用于学习CAPTI-BN的拓扑结构。在参数学习部分,将结构学习阶段的0-1矩阵数据集与CAPTI-BN拓扑结构导入贝叶斯网络软件Netica,计算得到各节点CPT。

Gephi软件是被广泛应用的网络可视化和分析工具,将结构学习输出的节点超邻接矩阵导入Gephi后,可得到CAPTI-BN的拓扑结构,如图1所示。网络共有94个节点和247条有向弧。

3.2 结果验证

本文将ASRS中2016年的事故征候数据作为事件提取阶段测试集,验证事件提取算法的准确性。经计算,测试集事件提取准确率为83%。

为验证网络学习阶段MMHC求解结果的准确性和可行性,本文引入另1种混合搜索方法RSMAX2对数据集进行贝叶斯网络结构学习,并通过k-fold交叉验证,比较2种算法结果与数据的拟合程度。k-fold验证将CAPTI-BN视为1个贝叶斯分类模型,并将数据集划分为k个子集,每次选取k-1个子集作为训练集,剩余的1个子集作为测试集,重复k次,并运用对数损失函数表征分类准确率,如式(10)所示:

(10)

式中:logloss为对数损失函数结果;N为测试集样本数量;M为可能类别数;yij为布尔型变量,判断j是否为变量xi的真实类别;pij为测试集中变量xi属于类别j的概率。

图1 CAPTI-BN拓扑结构Fig.1 CAPTI-BN topology structure

最终取k次对数损失函数结果均值表示算法的拟合度。

交叉验证取bnlearn中k的默认值10,交叉验证结果如图2所示。MMHC算法对数损失函数值更低,因此MMHC算法对于现有数据集的拟合程度更高。

图2 交叉验证结果Fig.2 Results of cross validation

3.3 关键致因分析

本节通过致因事件和结果事件间证据敏感性测度,识别CAPTI-BN的关键致因事件。Zhang等[5]依据事故征候后果严重程度和专家意见,将ASRS数据库中的结果事件划分为低至高5个等级。其中高风险事故结果包括人员受伤、发动机空中停车、空中交通管制分离航道及飞机损坏,该类结果事件往往会造成高额的经济损失和不良的社会影响。其中,发动机空中停车指飞机飞行过程中发动机停止工作。

证据敏感性分析使用熵和互信息的度量方法来评估不同条件下BN后验概率分布的变化。基于信息熵理论,互信息指标可衡量不同变量间的依赖程度。互信息值越大,事故后果与致因事件间的关联越强。结果事件与致因事件间的互信息,以及致因事件占比计算如式(11)~(12)所示:

(11)

(12)

式中:R为结果事件;E为致因事件;Ei为致因事件的状态;r为结果事件的状态;P为事件概率;I(R,E)为结果事件与致因事件间的互信息;I(R,R)为结果事件自身信息熵;Pe(R,E)为致因事件信息熵占比。

高风险结果事件最相关的5个致因事件见表3。其中空中交通管制隔离交通主要由空中交通管制不足和空降冲突引起,其余致因事件对其影响较小。飞机损坏主要原因是外物撞击,如飞行器、车辆、动物等。发动机空中停车主要受设备严重故障影响。而人员受伤主要是由机组成员疾病或心理问题导致。

表3 高风险结果事件敏感性分析Table 3 Sensitivity analysis of high risk result events

低风险增至高风险导致的致因事件后验分布变化,可评估事故征候演化过程中各致因事件及其状态的重要性[17]。对于多结果的事故征候,确定每个结果的风险等级,并用其中最高的风险等级表示整个事故征候的风险程度。当风险等级由低风险转为中风险和由中风险转为高风险时,致因事件变量后验概率的分布及其变化情况,如图3所示。由图3可知,事故征候发生时,机组成员违反公司规章(H16)是最高正敏感性的致因事件,且后验概率始终高于50%,证明违反公司规章是目前事故征候中最普遍的人为致因事件。此外,设备轻微故障(AE2)是较为常见的飞行器致因事件。

图3 低-中-高风险等级下致因事件后验概率Fig.3 Posterior probabilities of causal events at low, medium and high risk level

当结果事件由低风险转为中风险时,程序许可偏差(AE12)、遭遇可控飞行撞地(AE33)及空中交通管制问题(HE18)的后验概率增幅较大,而违反政策规定(HE16)的事件后验概率显著下降,上述4类事件是区分中、低风险的重要致因事件。而当风险提升至最高等级时,空降冲突(AE4)、严重设备故障(AE1)、机组成员疾病(HE12)及火灾烟雾(AE22)的后验概率有较大提高,该类致因事件的产生往往会导致严重的事故后果,与表3中高风险结果事件证据敏感性分析结论一致。此类致因事件本身具备较高风险,在安全监管过程中消除或减弱关键致因事件的发生,可最大程度降低事故征候的风险程度,减少次生或衍生事故发生的概率。

4 结论

1)定义CAPTI-BN中节点、有向弧及概率要素,从人、飞行器、环境3个角度,提出事故征候中直接致因事件和结果事件的分类体系。

2)利用事件提取算法分析事故征候文本,提取致因事件,并引入MMHC算法学习网络结构,实现CAPTI-BN自动化建模,提升数据分析效率。

3)量化结果事件风险并结合证据敏感性分析,得出空降冲突(AE4)、严重设备故障(AE1)、机组成员疾病(HE12)及火灾烟雾(AE22)是CAPTI-BN中高风险关联的致因事件。

4)引入不同的数据集,本文的建模方法可拓展应用于其他地区与机场的航空旅客运输风险现状,并比较不同区域、不同机场的风险特征差异。

猜你喜欢

贝叶斯语义事故
学中文
语言与语义
废弃泄漏事故
小恍惚 大事故
基于贝叶斯估计的轨道占用识别方法
“上”与“下”语义的不对称性及其认知阐释
基于互信息的贝叶斯网络结构学习
一种基于贝叶斯压缩感知的说话人识别方法
认知范畴模糊与语义模糊
IIRCT下负二项分布参数多变点的贝叶斯估计