一种基于机器学习的航班抵港延误时间预测方法
文献发布时间:2023-06-19 13:45:04
技术领域
本发明属于机器学习领域,特别涉及一种基于机器学习的航班抵港延误时间预测方法。
背景技术
随机森林(Random Forest,简称RF)是机器学习中集成方法Bagging的一个扩展变体。RF在以决策树为基学习器构建Bagging集成的基础上,进一步在决策树的训练过程中引入了随机属性选择。具体来说,传统决策树在选择划分属性时是在当前节点的属性集合中选择一个最有属性;而在RF中,对基决策树的每个结点,先从该结点的属性集合中随机选择一个包含若干个属性的子集,然后再从这个子集中选择一个最优属性用于划分。
在民航业的不断发展中,航空运输负载量在近些年迅速增长,为航空服务业带来了更多的需求,这使得民航航班发生延误事件的占比越来越大,管理部门面临着更加严峻的挑战。通过航班延误预测技术,可以让民航延误事件预警和应急更加完善,做出更好的应急决策,减轻民用航空运输业带来的损失,提升民航延误事件的应急水平。
目前,航班延误时间预测还处于初步阶段,由于影响航班延误的因素复杂多样,给航班延误具体时间的预测带来一定的困难。机器学习中用于分类和预测的方法有很多种,由于机器学习是需要选择样本属性的,所以需要结合专业的背景知识,对样本的属性进严格的筛选。传统的机器学习方法有线性模型、决策树、神经网络、支持向量机、集成学习等。传统的机器学习方法需要样本有属性和标签(或结果)。将训练的特征向量输入模型,根据各个属性的值进行训练,然后进行分类或者回归。
现有的航班延误时间预测方法主要问题有:一是分类的准确率较低。二是模型的泛化能力较弱。三是具体延误时间的预测方法少且误差很大。
发明内容
本发明提供了一种基于机器学习的航班抵港延误时间预测方法,通过将机器学习的方法运用到航班延误中,适应了航班延误具体时间预测的问题。
为了实现上述目的,本发明采用以下技术方案:
一种基于机器学习的航班抵港延误时间预测方法,包括以下步骤:
步骤一、通过整理民航系统以及航班抵港延误预测的文献资料,对航班抵港延误时长进行分类并确定延误等级参数;
步骤二、获取各个机场的航班延误详细信息,构建航班抵港延误的数据集并随机分为训练集和测试集;
步骤三、用RF分类模型对航班的延误等级进行分类的训练;
步骤四、用RF回归模型对训练集进行回归任务的学习;
步骤五、对于RF回归任务的测试集的延误等级这一属性而言,使用训练好的RF分类模型对其进行预测并赋值;
步骤六、将用于RF回归任务的测试集使用RF回归模型进行航班具体的延误时间的预测。
进一步的,所述步骤一具体为:通过阅读有关民用航空运输企业航班延误分类的文献,针对现在民航航班延误发生的特点,分析航班延误产生的原因,选择具有重要影响的属性,对航班的延误时长进行分类,并确定区分延误等级的时长参数;
航班延误等级划分,分为以下五类:
(A)、大于等于0且小于15分钟,其中:小于0的视为0;
(B)、大于等于15且小于30分钟;
(C)、大于等于30且小于45分钟;
(D)、大于等于45且小于60分钟;
(E)、大于等于60分钟;
然后确定航班延误的等级参数。
进一步的,所述步骤二具体为:在网上获取航班的详细信息,构建航班延误时间预测的数据集并随机分为训练集和测试集,进行延误等级的标注。
进一步的,所述延误等级的标注的步骤为:
(a)、对获取的数据进行预处理,清洗,得到能够标注的数据;
(b)、根据已知的抵港延误时长,对数据进行延误等级的标注;
(c)、采用整数进行标注,0代表延误时长为0-15分钟,1代表延误时长为15-30分钟,2代表延误时长为30-45分钟,3代表延误时长为45-60分钟,4代表延误时长大于等于60分钟。
进一步的,所述步骤三具体为:用RF分类模型对训练集进行延误等级的分类训练,RF分类模型找到数据属性的非线性关系。
进一步的,所述步骤四具体为:用RF回归模型对训练集进行具体延误时间的回归训练,RF回归模型能够将样本的属性进行非线性的组合,对航班延误时间这一标签进行预测,最后输出集成模型中决策树的均值。
进一步的,所述步骤五具体为:利用步骤三中训练好的RF分类模型这一模型,对RF回归模型测试集中的样本进行延误等级的预测,并作为最终具体延误时间预测的测试集。
进一步的,所述步骤六具体为:用步骤四所训练好的RF回归模型,对步骤五中处理好的测试集进行具体延误时间的预测。
具体地讲:首先预测延误等级,然后将原本的数据和预测的延误等级结合起来,作为具体延误时间预测的输入。
进一步的,所述步骤五是对测试集进行延误等级的预测,步骤六结合了原本的数据和预测的延误等级,作为具体延误时间预测的测试集。
与现有技术相比,本发明具有以下有益效果:
本发明通过定义航班抵港时间的延误等级(以具体时间段为单位进行分类),进行更细粒度划分,并构建航班抵港延误的数据集并标注。然后使用RF(随机森林)分类模型进行延误等级的分类预测训练,通过延误等级对具体延误时间的约束,使得延误时间的预测误差更小,最后将含有预测的延误等级的数据,输入到RF回归模型进行样本具体的抵港延误时间的预测。该方法相比目前阶段的其他方法而言,误差明显更小且效率更高。
附图说明
图1是本发明提供的航班延误等级的分类预测的流程图。
图2是本发明提供的航班延误具体时间回归预测的方法示意图。
图3是本发明提供的航班抵港延误时间预测方法的模型结构示意图。
具体实施方式
下面结合实施例对本发明作更进一步的说明。
本发明提供的基于机器学习的航班抵港延误时间预测方法,包括航班延误等级的分类,模型框架的构建,数据集的构建,分类训练,延误时间的回归训练。通过RF预测航班的延误等级,原有属性结合所预测的延误等级进行具体延误时间的回归训练。训练的模型有更好的泛化能力,可以更好的完成航班抵港延误时间预测。以下结合图1-3和实施例进一步阐述。
一种基于机器学习的航班抵港延误时间预测方法,包括以下步骤:
步骤一、通过整理民航系统以及航班抵港延误预测的文献资料,对航班抵港延误时长进行分类并确定延误等级参数;
所述步骤一具体为:通过阅读有关民用航空运输企业航班延误分类的文献,针对现在民航航班延误发生的特点,分析航班延误产生的原因,选择具有重要影响的属性,对航班的延误时长进行分类,并确定区分延误等级的时长参数;
航班延误等级划分,分为以下五类:
(A)、大于等于0且小于15分钟(小于0的视为0);
(B)、大于等于15且小于30分钟;
(C)、大于等于30且小于45分钟;
(D)、大于等于45且小于60分钟;
(E)、大于等于60分钟;
然后确定航班延误的等级参数。
步骤二、获取各个机场的航班延误详细信息,构建航班抵港延误的数据集并随机分为训练集和测试集;
所述步骤二具体为:在网上获取航班的详细信息,构建航班延误时间预测的数据集并随机分为训练集和测试集,进行延误等级的标注。
所述延误等级的标注的步骤为:
(a)、对获取的数据进行预处理,清洗,得到能够标注的数据;
(b)、根据已知的抵港延误时长,对数据进行延误等级的标注;
(c)、采用整数进行标注,0代表延误时长为0-15分钟,1代表延误时长为15-30分钟,2代表延误时长为30-45分钟,3代表延误时长为45-60分钟,4代表延误时长大于等于60分钟。
如:样本航班抵杭延误时长属性值代表着该航班的抵港延误时长(以分钟为单位),已知某样本的航班抵杭延误时长值为25,那么将其延误等级属性值赋为1;
即:样本ARR_DELAY属性值代表着该航班的抵港延误时长(以分钟为单位),已知某样本的ARR_DELAY值为25,那么将其DELAY_LEVEL属性值赋为1。
步骤三、用RF(随机森林)分类模型对航班的延误等级进行分类的训练;
所述步骤三具体为:用RF(随机森林)分类模型对训练集进行延误等级的分类训练,RF分类模型找到数据属性的非线性关系,对航班的抵港延误等级分类准确率更高。
某样本属性值分别为:该航班所处季度为第一季度,所处月份为一月,所在该月的天数为第一天,所在该周的第二天,预计离港时间为六点三十分,离港延误时长为提前一分钟,预计抵港时间为八点四十一分,飞行距离为五百四十一公里,分类模型经训练后,将该样本的标签延误等级预测为1。
即:QUARTER为1,MONTH为1,DAY_OF_MONTH为1,DAY_OF_WEEK为2,CRS_DEP_TIME为630,DEP_DELAY为-1,CRS_ARR_TIME为841,DISTANCE为541,分类模型经训练后,将该样本的标签延误等级预测为1。
RF(随机森林)分类模型对及决策树的每个结点,先从该结点的属性集合中随机选择一个包含k个属性的子集,然后再从这个子集中选择一个最优属性用于划分。
步骤四、用RF(随机森林)回归模型对训练集进行回归任务的学习;
所述步骤四具体为:用RF(随机森林)回归模型对训练集进行具体延误时间的回归训练,RF回归模型能够将样本的属性进行非线性的组合,对航班延误时间这一标签进行预测,最后输出集成模型中决策树的均值。
已知,某样本的各个属性值分别为:QUARTER为1,MONTH为1,DAY_OF_MONTH为1,DAY_OF_WEEK为2,CRS_DEP_TIME为630,DEP_DELAY为-1,CRS_ARR_TIME为841,DISTANCE为541,延误等级为1,RF回归模型经训练后,每棵树找到合乎任务需求的节点进行分裂生长,以进行具体抵港延误时长的预测,预测该样本的抵港延误时间为25,如图1所示。
步骤五、对于RF回归任务的测试集的延误等级这一属性而言,使用训练好的RF分类模型对其进行预测并赋值;
所述步骤五具体为:利用步骤三中训练好的RF(随机森林)分类模型这一模型,对RF回归模型测试集中的样本进行延误等级的预测,并作为最终具体延误时间预测的测试集。
步骤六、将用于RF回归任务的测试集使用RF回归模型进行航班具体的延误时间的预测。
所述步骤六具体为:用步骤四所训练好的RF回归模型,如图3所示,对步骤五中处理好的测试集进行具体延误时间的预测。具体地讲:首先预测延误等级,然后将原本的数据和预测的延误等级结合起来,作为具体延误时间预测的输入。所述步骤五是对测试集进行延误等级的预测,步骤六结合了原本的数据和预测的延误等级,作为具体延误时间预测的测试集。
本发明公开了一种基于机器学习的航班抵港延误时间预测方法,预测具体的航班抵港延误时间,可以为民航管理部门辅助决策。首先定义航班抵港时间的延误等级(以具体时间段为单位进行分类),进行更细粒度划分,构建航班抵港延误的数据集并标注。然后使用RF(随机森林)分类模型进行延误等级的分类预测训练,通过延误等级对具体延误时间的约束,使得延误时间的预测误差更小,最后将含有预测的延误等级的数据,输入到RF回归模型进行样本具体的抵港延误时间的预测。该方法相比目前阶段的其他方法而言,误差明显更小且效率更高。
以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
- 一种基于机器学习的航班抵港延误时间预测方法
- 一种基于机器学习预测的战略性航班时刻表评估方法