卢志强
(中国铁路上海局集团有限公司信息技术所 上海 200071)
以大数据、云计算、物联网等为代表的信息技术正加速推动着社会信息化进程,各个行业积累的数据资源也越来越多,人们的工作也越来越依靠数据。大数据分析领域也对大数据专家技能需求分为“数据管理、数据运营、洞察分析、算法模型”四个层次,其中算法模型这个层次就是数据价值挖掘能力。为了更好地适应大数据时代的发展,工作中需要加强对业务的思考和总结,将日常工作中发现的规律和经验融入大数据模型,提高数据应用能力[1]。
在大数据分析中,模型是非常有用的工具,模型很多时候就是一个类似Y=f(X)的函数,即从参数X(也可以理解为条件、现象、特征)到结果Y的一个推导(映射)规则。在掌握足够经验时,结合一些基础的统计分析,依靠人工规则定义就可以实现建模;而人工对错综复杂、大量的数据无法处理时,逐渐转化为依靠人工指导的数据挖掘,再到完全依赖机器进行的深度学习算法去完成建模。挖掘算法包括分类、聚类、关联规则、回归等,而深度学习主要是依赖神经网络模型[2]。
数据挖掘的实质是通过计算机的计算能力在一堆数据中发掘出规律并加以利用的过程。如图1所示,数据挖掘通常通过已知输出的结果的数据作为训练集产生出模型,再用另外一部分知道已知输出结果的数据作为验证集来验证模型的可信程度,通过验证后,再用到测试集中去取得实际的效果。因此,对数据挖掘而言,需要经历规则学习、规则验证、规则使用的过程[3]。
图1 一般数据训练模型过程
规则学习又称为模型训练,在这个步骤中有一个数据集将作为训练集,通常会把过去已经发生的数据作为训练集。在对比已知的结果和输入的变量的过程中,更换模型或者调整模型中的参数,对训练集达到较高的评价指标后,就得到一个预期的计算规则。引入验证集是为了验证模型的效果和准确度,验证集和训练集具有相同的格式。如果有效的话就可以在实际场景中对未来数据进行预测,如果效果不理想还可以进一步调整模型。
数据挖掘的算法很多,这里根据一些经典算法结合工作生活中的应用案例介绍其原理。
这是针对已知的类别构建出分类的模型,通过分类的模型来探求其他未分类对象的类别。分类的算法很多,如决策树是一种常见的树形结构分类模型;贝叶斯算法是一种利用先验概率统计知识分类未知类别的模型;其他常见算法还包括神经网络分类、K-近邻分类、支持向量机SVM分类、基于关联规则的分类等。现实中有很多应用分类算法的实例,如在金融领域,根据职业、家庭经济状况、年龄、资产等特征将贷款人的信用风险划分为“安全”与“有风险”两类,就是个二分类问题;在轨道交通管理中,根据检修工人对各种故障状态的记录进行标准化和量化处理,利用状态数据特征对设备故障进行多类别分类,提高设备管理水平。
与分类不同,聚类不需要对原始数据进行标记,也就不需要事先进行训练。聚类按照数据的内在结构特征进行聚集形成簇群,从而实现数据分离。常见的聚类算法有K-means聚类、均值漂移聚类、基于密度的聚类方法、最大期望聚类、层次聚类等。聚类应用领域广泛,可用于企业发现不同的客户群体特征、消费行为分析、市场细分、交易数据分析等;可用于生物学的动植物种群分类、医疗疾病诊断、异常点分析等。在铁路交通旅客管理中,运用聚类算法对不同类别旅客乘车选择问题进行研究,发现旅客出行时间、月收入、出行目的与费用对旅客进行聚类,以辅助调整铁路线路实现不同类别旅客对客运产品选择的偏好。
关联规则挖掘是在大量数据中挖掘数据项之间的关联关系,对关联性的强弱判定依据置信度和支持度的值。Apriori算法就是经典的关联分析算法,主要形式为度量频繁项集和关联规则。关联规则广泛应用于商务营销、推荐系统、社会治理等领域。如在交通管理领域,通过对交通事故数据做关联分析,可以对不同天气、时间、路段、环境、基础设施等要素做关联分析,探测其中的规律,可能发现“时段”与“追尾”属于强关联规则,即存在强关联。
回归分析是一种研究自变量和因变量之间关系的预测模型,用于分析当自变量发生变化时,因变量的变化值。即对原因与结果之间变化关系的分析,由此可以建立回归方程,用以预测变量的依赖关系。常见的回归算法有线性回归、逻辑回归、多项式回归、逐步回归、岭归回等。回归分析可以应用于各类预测分析中,包括销售盈利分析、气候预测回归分析、交通出行人流量回归分析等。甚至可以根据回归分析结果与实际发生情况进行异常点分析,如利用火灾预警系统来预测建筑物火情及分析纵火案。通过将一年内火灾案件与当天天气、建筑物自身因素等资料数据化,形成一套火灾级别与火灾因素的拟合函数,可以形成经验数据,有效提升火灾预警能力。
面对非常复杂、冗余且多变的数据,有效提取出特征并将其表达出来非常重要。“深度学习”是随着海量大数据样本与计算处理能力发展而产生的,允许计算机学习使用特征的同时,也学习如何提取特征。深度学习主要采用的框架是神经网络,如卷积神经网络、循环神经网络、递归神经网络等。学习过程是通过组建含有多个隐层的神经网络模型,对输入的高维数据逐层提取特征,以发现数据的低维嵌套结构,形成更加抽象有效的高层表示,这使得数据项与特征、特征映射到结果的过程难以解释[4]。深度学习广泛应用于人工智能领域,如人脸识别、语音识别、体态识别等,这些智能技术也作为信息化基础设施在各行各业进行部署应用。
通过数据训练得到一个模型后,如何判断此模型的效果?这就类似学校对学生用什么指标评估学生素质?是主课的总成绩,还是多门课平均成绩,还是优先看哪门课成绩?数据模型是否有效,也有很多评价指标,常用的评估指标是查全率和查准率。假设分类中有正负两种样本,其中TP是表示正确分类的正样本数量,FN表示未被正确分类的正样本数量,FP表示被错误分类为正样本的负样本[5]。
1.查全率(Recall),又叫召回率,即正确分类的正样本数量占所有正样本数量的比例,计算公式为:
R=TP/(TP+FN)
2.查准率(Precision),又叫准确率,即正确分类的正样本数量占所有被模型识别出的正样本数量的比例,计算公式为:
P=TP/(TP+FP)
如果一个模型两个指标值都非常好,即调整条件使查全率和查准率都提高,那无疑是最优的情况。但这两个指标往往是“此消彼长”,像“鱼和熊掌”一样,不能兼得。对于模型效用的评估,查全率、查准率这些只是常见的评估指标,具体偏向哪个指标,很多时候也会根据场景区分。例如门禁系统在做身份验证时,那就追求高查准率;在进行风险预警时,可以根据需求适当放弃部分查准率,尽量放宽查全率。
大数据已经成为推动各个行业工作创新发展的大引擎,也是新的生产力的增长点。为了更加有效地利用大数据资源,理解数据建模原理,将模型化思维应用于工作实践,可以对传统产业进行升级,改进原有工作业务模型。