大数据、人工智能类专业开设最优化方法课程必要性探析*
2022-11-10李庆玉任泽民刘小翠邹黎敏
彭 扬,李庆玉,任泽民,刘小翠,邹黎敏
(1.重庆科技学院数理与大数据学院,重庆 401331;2.重庆工商大学数学与统计学院)
0 引言
近年来,大数据及人工智能相关技术成为国际竞争的新焦点,引领未来的战略性技术,世界主要发达国家把大数据、人工智能的发展作为提升国家竞争力、维护国家安全的重大战略。在2016 年3 月公布的《教育部关于公布2016年度普通高等学校本科专业备案和审批结果的通知》中,北京大学、对外经济贸易大学和中南大学三所高校首批获批开设“数据科学与大数据技术”专业,接着,2017年,又有32所高校获批“数据科学与大数据技术”专业。2018年4月,教育部发布《高等学校人工智能创新行动计划》后,大量高校成立了人工智能学院,主要目标是培养中国人工智能产业的应用型人才,对应的专业名称是“人工智能”或者“智能科学与技术”。
上述专业主要的研究对象是数据(data)。数据是事实观察或记录的结果,是用于表示客观事物的未经加工的原始素材,是对客观事物的一种表现形式,其表现形式多种多样,比如图像、视频、声音、文字、数值等[1-3]。从人类社会诞生以来,数据就和人类一起出现,如远古时代人类社会的结绳记事、采摘食物、狩猎数量的计算,再到历史上各朝各代的人口、土地、钱粮、马匹、军队等各类事项都涉及到大量的数据。21 世纪以来,随着射频识别、传感网、M2M 系统框架、云计算等技术的发展,物联网诞生了,它被认为可能是继互联网之后人类最伟大的技术革命,随着物联网的诞生,人类社会能收集到的数据越来越多、越来越大,预计2020-2025 年物联网设备产生的数据量将以30%的复合年增长率增长。
物联网数据产生的速度之快、种类之多,推动了“数据即价值”观念向“有价值数据”这一理念转变。在海量的数据面前,如何快速寻找到有价值的数据信息,是目前众多企业决策者所关注的问题。众所周知,数据挖掘是实现这一目标的有效方法。数据挖掘是指通过计算机算法,从大量的数据中搜索出隐藏于其中的人们感兴趣的信息。数据挖掘过程主要包括建立数据挖掘库、定义问题、准备数据、分析数据、建立模型和求解模型、评价模型和实施等[1-3]。
大数据、人工智能类专业的学生,经常会遇到数据挖掘任务,数据挖掘的核心在于建立模型和求解模型,常用的建立模型和求解模型的方法是利用机器学习方法来分析需要解决的问题,常见的机器学习方法有:决策树、朴素贝叶斯、人工神经网络、支持向量机、广义线性回归等,在学习这些算法的过程中,常会遇到无约束或带约束的最优化问题。
1 大数据、人工智能类专业最优化方法课程开设现状
最优化算法主要包括线性规划单纯形方法、对偶理论、灵敏度分析、运输问题、内点算法、非线性规划KKT 条件、无约束最优化方法、带约束最优化方法、整数规划和动态规划等内容。定理证明和理论推导以数学分析和线性代数为基础,实用性比较强。其中对偶理论、内点算法、非线性规划KKT条件、无约束最优化方法和带约束最优化等方法与大数据、人工智能技术息息相关,但通过系统梳理某地区本科院校数据科学与大数据技术、人工智能等相关专业人才培养方案时发现,只有少数院校有开设最优化方法课程,剩余大多数院校并未开设此课程,说明课程建设者并未真正认识到最优化算法在大数据、人工智能技术中的重要性。
2 大数据、人工智能类专业开设最优化方法课程的重要性
本节中将以两个实际案例来说明在数据挖掘实施的过程中,掌握最优化算法对数据挖掘任务的重要性。
2.1 无约束最优化问题案例分析
首先给出第一个案例:某矿场,摄像头拍下了所有经过这个路口的车辆,矿场关心的问题是,能否在这些车辆中找到装载沙石的货车,如图1所示。
图1 矿场车辆图
一个有效的解决方案是:创建简单的卷积神经网络和利用迁移学习实现分类,卷积神经网络是一类包含卷积计算且具有深度结构的前馈神经网络,是深度学习的代表算法之一,LeNet-5 是最早出现的卷积神经网络之一,与其他前馈性神经网络类似,卷积神经网络需要使用梯度下降、随机梯度下降等求解无约束最优化问题的算法来进行学习。例如,在很多深度学习框架中,需要设置网络的各种参数,一段Matlab代码如下:
其中,sgdm 表示使用带动量的随机梯度下降算法求解模型,随机梯度下降法适用于大规模训练样本情况,但随机梯度下降算法可能沿着下降路径在最小值附近振荡,在参数更新中添加动量项是减少这种振荡的一种方法。此处还可以选择RMSProp(Root mean square propagation)[4]或Adam[5]来求解模型,选用不同的优化算法对结果有着怎么样的影响,这就需要对最优化算法进行系统的学习,大致了解各种优化算法之间的区别和联系。
2.2 带约束最优化问题案例分析
接下来看第二个案例,重庆市粮食产量预测及其影响因素分析问题。重庆市1978年~2019年粮食产量如图2 所示,数据来源于2020 年重庆市统计年鉴、中国农村统计年鉴。
图2 重庆市1999-2019年粮食产量图
从图2 可以看出,重庆市历年粮食产量在800~1200 万吨之间,波动幅度较大,其中最为严重的是从2005年的1168万吨跌倒2006年的808万吨,主要原因是2006年5月中旬至9月上旬重庆市遭受了历史罕见的百年一遇的特大高温干旱灾害,导致全市农作物受旱面积108.63 万公顷,其中轻旱40.23 万公顷,重早48.49 万公顷,虽然2007 年重庆市也遭遇了持续大雨,造成了重庆市粮食产量损失[6-9],但全年的粮食产量比2006 年有大幅度提升,这说明自然灾害并不是影响粮食产量的唯一因素。我们需要去寻找影响粮食产量的因素,我们经过分析发现,粮食播种面积、有效灌溉面积、农业机械总动力、农村用电量、农用化肥施用量、农膜使用量、农药使用量和粮食成灾面积等因素对重庆市粮食产量有较大影响。通过收集、整理历史数据,得到粮食产量及其影响因素之间的函数关系,然后利用这个函数关系和各个影响因素的取值,来预测粮食产量,这有助于政府准确把握粮食综合生产能力的影响因素及影响程度,同时也是制定提升粮食综合生产能力措施的一个重要基础。
一个简单的想法是,建立粮食产量和各个影响因素之间的线性回归模型,但实验效果并不理想,原因可能在于模型假设错误,因为线性回归模型要求数据之间同方差、无自相关、随机扰动与解释变量之间不相关、随机扰动项服从正态分布、不存在多重共线性等,还有可能是粮食产量和各个影响因素之间并不呈线性关系。鉴于此,需要修改模型,如采用支持向量回归模型、决策树回归模型、径向基神经网络模型等。下面给出支持向量回归模型:给定训练样本D={( x1,y1),…,( xn,yn)},以期学习得到一个回归模型,使得f(x)=wx+b 与y 尽可能接近,w 和b 是待确定的模型参数。假设能容忍f(x)与y之间最多有ε的偏差,即仅当f(x)与y之间的差别绝对值大于ε时才计算损失,于是,支持向量机回归问题可形式化为:
其中,C为正则化常数,Lε是ε -不敏感损失函数。
支持向量机回归模型的关键在于求解参数w 和b,这是一个带约束的最优化问题,了解求解带约束的最优化问题的算法对掌握支持向量机有相当大的帮助。当然,也可以利用广义线性回归、决策树回归或是神经网络等非线性方法来进行粮食产量的预测,这些方法中也会涉及到经验风险最小化或是结构风险最小化等优化问题的求解,因此为了更好的运用方法,解决研究中的问题,离不开对最优化算法系统的学习。
3 结束语
通过上面的案例分析可知,在学习机器学习算法或是利用机器学习算法解决实际问题的时候,常常要用到最优化算法,如梯度下降法、牛顿法和拟牛顿法、共轭梯度法、启发式优化方法、解决带约束优化问题的拉格朗日乘数法、解决支持向量机训练过程中所产生的优化问题的序列最小优化算法等,若能较好的理解这些算法的优缺点,对于实际的数据挖掘任务会有较大的帮助,所以,在大数据、人工智能类专业开设最优化算法课程是非常有必要的。