来源:期刊VIP网所属分类:软件开发发布时间:2020-12-16浏览:次
摘 要:海关监管部门在风险布控的过程中,需要风险分析人员依据经验对各种商品的风险进行人工分类。本文用Logistic回归模型、决策树模型、随机森林模型等几种的分类模型优化风险布控过程,通过将报关数据输入分类模型得到特定商品的风险评估结果,辅助风险分析人员做出正确判断。通过实验验证这种智能化的方法能够有效克服人工风险布控中的不足,完成智能化风险布控,进一步维护国门口岸安全。
关键词:大数据;机器学习;分类;风险布控
1 引言(Introduction)
海關通过各种风险布控系统布设处置风险的指令,并由被指定的现场作业环节执行处置和反馈处置结果的风险布控措施[1]。随着海量货物贸易增长,跨境电商新业态发展和国际直邮物品的不断增加,现阶段人工风险判别方式已经很难精准发现高风险货物商品。海关监管部门需要寻找一种智能化的手段,辅助人工风险判别过程,提高口岸查获率,提升人工风险判别的准确度。
风险布控中商品查验问题的本质一个分类问题。而在人工智能领域有很多模型可以处理分类问题。本文旨在探索机器学习中分类算法在海关智能化风险分析中的应用,提出用人工智能中成熟的分类模型作用于风险布控流程中的风险判定环节,提高商品布控精度。运用Logistic模型[2]、决策树模型[3]、随机森林模型[4]三种模型对报关数据进行分类,并实验验证三种模型的实验效果,筛选出适合海关报关数据的分类模型。为风险分析人员分析商品数据下达布控指令提供切实有效地辅助决策。
2 分类模型介绍(Introduction to classification models)
在对大量的历史报关数据的分析的过程中,如何选择合适的机器学习算法是建立风险分析模型的重要一环。这一部分我们对三种机器学习经典方法进行分析对比,探索合适的海关报关数据建模的机器学习算法。
2.1 Logistic回归
Logistic回归被应用于多种实际问题的建模,它是分类问题建模的常用方法,同时也被称为其他方法的分类基准。Logistic回归具备以下优点,第一,对自变量的分布没有要求。第二,回归方程易于理解,模型中变量的影响较容易确定,从而方便调整模型。第三,分类的准确性可以被直观地判断。Logistic回归常规的用法是二分类问题,本文采用Logistic回归来解决多分类问题,这里用到了One vs Rest(OvR)和One vs One(OvO)的方法来把二分类问题转换成多分类问题。
OvR的原理是分别取一种样本作为一类,余下的看作另一类,这样N个样本就形成了N个二分类问题。使用逻辑回归算法对N个数据集训练,得到N个模型的结果。将待预测的样本传入N个模型中,取概率最高的模型对应的分类结果为最终的预测结果。
OvO的原理是,从N个样本中每次挑选出两种类型,一共有种二分类情况,使用逻辑回归对这么多种二分类进行预测,种类最多的样本类型被认为是样本的最终类型。
2.2 决策树模型
决策树模型是机器学习最具影响力的分类和预测方法之一。它具有清晰的可解释性,而且性能良好。决策树算法从出现开始经过不断改进,出现了ID3、C4.5等算法,现在较为成熟的是C5.0算法[5]。C5.0引入了Boosting技术。决策树具有以下性质:
(1)每个内部节点都是一个分割属性。
(2)每个分支节点都由上层节点具体分类原则决定。
(3)每个叶结点都是一个类别。
选择合适的分割属性是不同决策树算法的关键问题,也因分割属性的不同演化出了不同的决策树算法。鉴于本文研究的目的是对海关风险布控等级进行分类,因此选择较成熟的C5.0算法。
2.3 随机森林模型
决策树模型虽然性能良好,但仍然存在一些缺点,比如容易发生过拟合,陷入局部优解。在决策树的基础上产生了随机森林算法。随机森林算法在生成单模决策树的基础上,采用Bootstap抽样方法训练多个样本。随机森林的基础分类器为CART。因为由多棵树来共同做出决策,所以增加了算法泛化能力和抗噪能力。
随机森林的具体步骤:
(1)采用bootstrap抽样方法生成N个训练样本集。
(2)随机抽取部分特征作为待选特征。
(3)生成N棵决策树,形成随机森林。
(4)通过所有的树对分类目标进行投票,投票最多的分类即为最后的分类。
3 模型实证分析(Empirical analysis of models)
3.1 数据处理
本文数据集为海关自有数据集。在所有的字段中,重点关注的字段为原产地、重量、价格、商品描述、企业、HS编码。在数据预处理阶段,对缺失值进行填充,删除不必要的字段。数据的最终标签为风险等级划分,风险等级分为10级,因此建模时需使用机器学习中的多分类模型。
样本被划分为不同的数据集,分别用来训练模型,测试模型,验证模型。本文采用随机抽取的方式,把数据集按照8:2来划分。在样本划分的时候需首先可视化出所训练样本的分布图,查看各个属性的取值分布和总样本集中各属性的取值分布,以查看数据集是否平衡。
对日期数据进行处理,运用正则(\d+)-(\d+)-(\d+)取出年月日,用取出来的年月日代替原来的列。对数据进行转换问题,将一样的数据转换成数值代替,在做的过程中发现有很多为空的数据是不做处理,直接将为空的数据定义为一类数据从而用一个特定的值将其代换,因为数据为空也是一种数据特征。
对于缺失值,处理的方法主要是运用了python中的字典。现将每列特征值中数据存入一个字典的key,并且赋不一样的value值,这样每一个特征列中相同特征值列就变成了一个键值对。然后在依次遍历一遍每个特征列的特征值,并将字典中每一个以特征值作为key的value赋值给对应的特征值。从而达到数据的转换。(例如:一个特征列中的值为[“苹果”,“香蕉”,“苹果”,“鸭梨”,“火龙果”,“香蕉”,“苹果”],通过特征列生产字典{“苹果”:0},{“香蕉”:1},{“鸭梨”:2},{“火龙果”:3},特征列中有四类特征值,就生产了四个键值对。然后再将特征列的每一个特征值作为key,找到对应的value,将value赋值给原来的特征值。通过转换和新的特征列变成了([0,1,0,2,3,1,0])。
对于模型的评价,针对具体的数据,把有风险的商品判断为低风险的商品称为A类错误,把无风险的商品判断为高风险的商品称为B类错误,一般情况下,我们希望A类错误尽可能低。因此在模型的定量和定性分析中,我们会重点对比两类错误。
3.2 Logistic回归模型
(1)Logistic回归正则化
在Python scikit-learn包中,逻辑回归用了正则化的方法。正则化方法可选L1或L2。本文选用L1正则化作为逻辑回归的正则化方法。
(2)多分类方法分析
传统的Logistic回归解决的是二分类问题,而通过改进使其可以解决的问题由二分类扩展为多分类。在scikit-learn包中默认有OvR和OvO两种。根据本文的具体问题,海关数据分析对精度要求稍高,而对时间要求为次要考虑因素,因此通过分析两种算法的优劣,最终选取OvO作为分类方法。
3.3 决策树C5.0模型
初步模型的建立采用Python的scikit-learn包,参数的选择整体使用默认参数,但是因为树的深度对算法的性能影响较大,因此对于树的深度设计了相关实验,实验结果如图1所示,从实验结果中可知当树的深度为16时,性能最佳,因此决策树的深度为16。
3.4 随机森林模型
(1)生成随机森林
样本按照8:2分为训练集及测试集,通过Python scikit-learn包中的RandomForestClassifier建立初始随机森林模型,默认的评价指标为基尼系数,深度为40,树的个数为300棵,从结果来看,训练集正确率为88%,测试集正确率为88%。而模型还可以通过调参来进一步提高准确率。
(2)参数的调整
随机森林模型中参数的设置也是至关重要的。第一个重要的参数为决策树的数量。理论上,树的数量越多,参与投票的分类器数量越多,从而具有更高的分类准确率,但是另一方面,树的数量越多运行的速度会越慢。本文通过多组实验分析结果得出当数量为300时分类性能最佳。而树的深度也是一个重要的参数,通过实验对比得出图2,由图可知,当随机森林中樹的深度为15时,性能达到最佳。
4 分类模型评估(Performance evaluation of classification models)
4.1 评估指标
由于这是一个“分类”问题,所有分类器将使用以下评价指标来评价。
混淆矩阵如表1所示,又被称为错误矩阵,被用来评价分类器的性能。在多分类任务中,混淆矩阵同样适用。
推荐阅读:sci论文软件润色和人工润色哪个价格便宜
期刊VIP网,您身边的高端学术顾问
文章名称: 多种分类模型在海关智能化风险布控中的应用
文章地址: http://www.qikanvip.com/ruanjiankaifa/54680.html