一种国内航班价格预测方法技术

技术编号:25991436 阅读:17 留言:0更新日期:2020-10-20 18:59
本发明专利技术公开一种国内航班价格预测方法。所述方法包括:对航班特征进行编码,制作Mapping表,使每一个特征值都有一个唯一的编号;对Mapping表中的特征值进行Embedding转换,减小数据维度,得到特征值的向量表示;将特征值的向量表示输入到DeepFM模型,分别得到低阶特征输出和高阶特征输出;将航班的历史价格数据输入到LSTM模型,并将LSTM模型的输出进行Embedding转换,得到历史价格数据的向量表示;将DeepFM和LSTM的输出数据进行融合,经输出层输出航班的预测价格。由于利用DeepFM和LSTM模型分别提取不同属性的特征,本发明专利技术相对现有技术明显提高了价格预测精度。

【技术实现步骤摘要】
一种国内航班价格预测方法
本专利技术属于机票查询
,具体涉及一种国内航班价格预测方法。
技术介绍
目前,国内航空市场,每天的航线数量近2万个,涉及200多个城市,每条航线的价格变化与自所属区域、季节等多种属性密切相关。如果能够及时、准确地预测未来起飞航线的价格变化情况,一定能产生一定的经济效益。通过对最近两年的机票价格数据进行统计、图形展示、分析发现,机票价格存在以下几个特点:一是机票价格变化规律性不强。通过将价格数据进行图表展示,无论从距离起飞时间间隔天数的维度,还是从同天的历史价格维度,都没有发现明显的规律;二是价格突变的现象较多。同一航班,经常出现相邻两天的价格发生突涨或突降现象,变化幅度有时高达80%,而且由于节假日、天气等因素,会造成机票价格突然大幅度上涨;三是历史数据存在缺失情况。由于某些航班突然取消或者数据抓取工作存在疏漏,造成了一定程度的数据缺失,对计算价格同比、环比和是否降价等指标,带来了一定的误差。现有机票价格预测一般属于时序预测,主要有两种方法:传统时序建模和机器学习。实验表明,这两种方法的效果都不太理想,无法得到大量航班的相关变化情况。
技术实现思路
为了解决现有技术中存在的上述问题,本专利技术提出一种国内航班价格预测方法。为实现上述目的,本专利技术采用如下技术方案:一种国内航班价格预测方法,包括以下步骤:步骤1,对航班特征进行编码,制作Mapping表,使每一个特征值都有一个唯一的编号;航班特征至少包括:航班号,航空公司,出发地,目的地,起飞时间;步骤2,对Mapping表中的特征值进行Embedding转换,减小数据维度,得到特征值的向量表示;步骤3,将特征值的向量表示输入到DeepFM模型,分别得到低阶特征输出和高阶特征输出;步骤4,将航班的历史价格数据输入到LSTM模型,并将LSTM模型的输出进行Embedding转换,得到历史价格数据的向量表示;步骤5,利用Stacking方法,将DeepFM和LSTM的输出数据进行融合,经输出层输出航班的预测价格。与现有技术相比,本专利技术具有以下有益效果:本专利技术利用具有特征抓取能力强、计算速度快、对特征有较好的泛化能力等特点的DeepFM模型提取起飞时间、航线距离、航班信息等特征,利用能够学习时间序列数据且有长序列记忆能力的LSTM模型提取航班已知的历史价格数据特征,将两部分的特征进行合并得到最终的特征数据,然后加入输出层得到输出结果数据。由于利用DeepFM和LSTM模型分别提取不同属性的特征,本专利技术相对现有技术明显提高了价格预测精度。附图说明图1为本专利技术实施例一种国内航班价格预测方法的流程图。具体实施方式下面结合附图对本专利技术作进一步详细说明。本专利技术实施例一种国内航班价格预测方法,流程图如图1所示,包括以下步骤:S101、对航班特征进行编码,制作Mapping表,使每一个特征值都有一个唯一的编号;航班特征至少包括:航班号,航空公司,出发地,目的地,起飞时间;S102、对Mapping表中的特征值进行Embedding转换,减小数据维度,得到特征值的向量表示;S103、将特征值的向量表示输入到DeepFM模型,分别得到低阶特征输出和高阶特征输出;S104、将航班的历史价格数据输入到LSTM模型,并将LSTM模型的输出进行Embedding转换,得到历史价格数据的向量表示;S105、利用Stacking方法,将DeepFM和LSTM(LongShort-TermMemory,长短期记忆网络)的输出数据进行融合,经输出层输出航班的预测价格。在本实施例中,步骤S101主要用于通过对航班特征进行编码,制作Mapping表。航班特征有很多,最常用的有航班号、航空公司、出发地、目的地和起飞时间,还有航班尾号奇偶性、航线距离、航线原价、是否寒暑假、是否工作日、是否是星期五、是否是假期的前一天、是否是假期的后一天、假期第几天、是否法定假日、法定假日天数、法定假日类别、是否传统节日(非法定假期)、传统节日类型等。Mapping表的制作方法是:将原始表(如表1,表中航线距离单位为km)映射为两张表,分别为ID(编号)表和Value(特征值)表。对原始表中的每列特征取distinct,然后依次给distinct的结果顺序标号得到ID表,如表2所示,起飞城市中的“深圳”和到达城市中的“深圳”的ID不同。对原始表中的每列特征取值得到Value表,如表3所示,如果是类别特征,如上海,value值都是1;如果是连续值特征,例如航线距离,value值为实际值,但是连续值特征的ID只有一个。表1原始表示例航空公司起飞城市到达城市航线距离国航深圳北京2000深航上海深圳1200春秋深圳北京2100表2ID表示例航空公司起飞城市到达城市航线距离146825783468表3Value表示例航空公司起飞城市到达城市航线距离111200011112001112100在本实施例中,步骤S102主要用于得到特征值的向量表示。对Mapping表中的航班特征和特征值进行Embedding转换,减小数据维度,同时将各个特征值使用向量的方式表示。Embedding是将高维的稀疏向量映射成为低维的稠密向量,不但减少了离散变量的空间维数,还使得迭代后的特征向量具有一定的现实意义。例如,历史数据中起始地城市的数量为270个,如果使用传统的One-hot编码,起始地城市这个特征270维度的输入向量,如果使用Embedding方法,则可以通过任意的向量长度(比如说80)来表示起始地城市特征。Embedding具有一定的泛化学习能力,比如说A特征和B特征相关,B特征和C特征相关,那么A和C就有可能也是相关的。如果使用传统的线性模型,无法学习到A特征和C特征的关系,但是通过引入Embedding方法,就可以学习到A特征和C特征的关系。在本实施例中,步骤S103主要用于将特征值的向量表示输入到DeepFM模型,分别输出低阶特征和高阶特征。低阶特征是指航空公司、起飞城市、是否寒暑假、是否法定假日等原始特征;原始特征两两组合即可得到高阶特征,例如,国航在深圳起飞,起飞日期是寒暑假而且是法本文档来自技高网...

【技术保护点】
1.一种国内航班价格预测方法,其特征在于,包括以下步骤:/n步骤1,对航班特征进行编码,制作Mapping表,使每一个特征值都有一个唯一的编号;航班特征至少包括:航班号,航空公司,出发地,目的地,起飞时间;/n步骤2,对Mapping表中的特征值进行Embedding转换,减小数据维度,得到特征值的向量表示;/n步骤3,将特征值的向量表示输入到DeepFM模型,分别得到低阶特征输出和高阶特征输出;/n步骤4,将航班的历史价格数据输入到LSTM模型,并将LSTM模型的输出进行Embedding转换,得到历史价格数据的向量表示;/n步骤5,利用Stacking方法,将DeepFM和LSTM的输出数据进行融合,经输出层输出航班的预测价格。/n

【技术特征摘要】
1.一种国内航班价格预测方法,其特征在于,包括以下步骤:
步骤1,对航班特征进行编码,制作Mapping表,使每一个特征值都有一个唯一的编号;航班特征至少包括:航班号,航空公司,出发地,目的地,起飞时间;
步骤2,对Mapping表中的特征值进行Embedding转换,减小数据维度,得到特征值的向量表示;
步骤3,将特征值的向量表示输入到DeepFM模型,分别得到低阶特征输出和高阶特征输出;
步骤4,将航班的历史价格数据输入到LSTM模型,并将LSTM模型的输出进行Embedding转换,得到历史价格数据的向量表示;
步骤5,利用Stacking方法,将DeepFM和LSTM的输出数据进行融合,经输出层输出航班的预测价格。


2.根据权利要求1所述的国内航班价格预测方法,其特征在于,所...

【专利技术属性】
技术研发人员:邹延迪李尚锦常福
申请(专利权)人:深圳市活力天汇科技股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1