机器学习及其相关算法简介
2019-04-16周昀锴
周昀锴
摘 要 机器学习的内容涉及很多领域,如人工智能研究、统计与概率计算、哲学逻辑以及神经生物学等。文章介绍了机器学习的概念、发展简史、分类以及八种常见算法,最后探讨了机器学习的应用与影响。
关键词 机械学系;机械学习分类;经典算法
中图分类号 TP3 文献标识码 A 文章编号 1674-6708(2019)231-0153-02
计算机科学在最近半个世纪一直在大力发展模拟并实现人类的行为,这就是机器学习的核心内容。其主要途径是重组知识结构来掌握新的知识技能,改善各种工具的性能。机器学习的辩证逻辑方法是归纳、综合,而不采用演绎[1]。
目前,机器学习历经70年的曲折发展,以深度学习为代表借鉴人脑的多分层结构、神经元的连接交互信息的逐层分析处理机制,自适应、自学习的强大并行信息处理能力,在很多方面收获了突破性进展,其中最有代表性的是图像识别领域[2]。本文就机器学习介绍及其相关算法简介做一介绍。
1 机器学习的历史
机器学习的发展大体可分为4个阶段。
第一阶段在1950年至1960年,人们在这个初始阶段对自适应系统进行大反复试验,虽然整体提高了系统的效率和执行能力,但并不能满足社会的?期望[3]。第二阶段在1960年至1970年,是机器学习发展的冷静时期。试图采用图结构或逻辑结构模拟人类的概念学习过程。代表性工作是Winston的结构学习系统。但结构单一、缺乏实用性。第三阶段在1970年至1980年,是机器学习发展的复兴时期。较多的学习概念理论进入成形阶段,很多人将学习系统与各种其它应用结合研究新型问题从而取得各领域成功。示例归约学习和自动知识获取成为了机器学习研究的主流。第四阶段从1986年开始,是机器学习发展的高潮时期。各种研究方法大量涌现,如人工神经网络学习、符号学习、集成学习,其中集成学习有效地提高模型的推广能力,如:Bagging算法、Boosting算法等。
2 机器学习的分类
2.1 基于学习方式的分类
1)监督学习。监督学习是指在机器学习过程中给出对错指示,通过已有的训练数据集进行数据挖掘,获得最优模型,借助模型把输入的所有数据向输出完全映射,再较为简单地判断输出,以此实现对数据进行分类的目的,也就是获得了对未知数据进行分类的能力。训练集包含输入、输出,并需要人为标注目标特征。监督学习大体包括两种:一种出自回归问题、另一种出自分类问题,它们主要被用作分类和预测问题的重点学习方式。最常用的监督学习算法有两种,包括支持向量机算法和邻近算法。
2)無监督学习。它的另一个名字是归纳性学习,其思想核心是根据K学习方式来搭建中心,再利用反复递减运算来缩减误差[4]。无监督学习和前面提及的学习方法相比,它在之前无训练样本,需要将非已知的数据建模处理。其中最常见的是聚类算法。
3)强化学习。又叫增强学习,基于统计和动态规划技术方法,输入通过反馈过程中计算得到的数据信息,与之相关有Q-learning等[5]。
2.2 基本模型
在机器学习过程中,一是对于外部信息源提供给系统的知识,这其实是一种学习过程,即从外界环境获取信息,然后将获得的信息加工成知识,并将知识放入知识库[6]。环境向学习系统提供的信息质量优劣,直接影响学习部分实现的难易。二是知识库。因为知识库中存放了指导执行动作的原则,需要注意的是对于不同的知识库其有不同的表示特征。备选的表示方式的基本要求是要具备好的表示效果、也要有很好的逻辑性,并易于完善[7]。机器学习模型中的执行环节是使用库知识完成特定任务的过程,并把信息反馈给学习环节。
3 机器学习八种常见算法
3.1 决策树算法
决策树及其变种是一类将输入空间分成不同的区域,每个区域有独立参数的算法。决策树算法充分利用了树形模型,根节点到一个叶子节点是一条分类的路径规则,每个叶子节点象征一个判断类别。先将样本分成不同的子集,再进行分割递推,直至每个子集得到同类型的样本,从根节点开始测试,到子树再到叶子节点,即可得出预测类别。此方法的特点是结构简单、处理数据效率较高。
3.2 朴素贝叶斯算法
朴素贝叶斯算法是一种分类算法。它不是单一算法,而是一系列算法,它们都有一个共同的原则,即被分类的每个特征都与任何其他特征的值无关。朴素贝叶斯分类器认为这些“特征”中的每一个都独立地贡献概率,而不管特征之间的任何相关性。然而,特征并不总是独立的,这通常被视为朴素贝叶斯算法的缺点。简而言之,朴素贝叶斯算法允许我们使用概率给出一组特征来预测一个类。与其他常见的分类方法相比,朴素贝叶斯算法需要的训练很少。在进行预测之前必须完成的唯一工作是找到特征的个体概率分布的参数,这通常可以快速且确定地完成。这意味着即使对于高维数据点或大量数据点,朴素贝叶斯分类器也可以表现良好。
3.3 支持向量机算法
基本思想可概括如下:首先,要利用一种变换将空间高维化,当然这种变换是非线性的,然后,在新的复杂空间取最优线性分类表面[8]。由此种方式获得的分类函数在形式上类似于神经网络算法[9]。支持向量机是统计学习领域中一个代表性算法,但它与传统方式的思维方法很不同,输入空间、提高维度从而将问题简短化,使问题归结为线性可分的经典解问题。支持向量机应用于垃圾邮件识别,人脸识别等多种分类问题。
3.4 随机森林算法
控制数据树生成的方式有多种,根据前人的经验,大多数时候更倾向选择分裂属性和剪枝,但这并不能解决所有问题,偶尔会遇到噪声或分裂属性过多的问题[10]。基于这种情况,总结每次的结果可以得到袋外数据的估计误差,将它和测试样本的估计误差相结合可以评估组合树学习器的拟合及预测精度[11]。此方法的优点有很多,可以产生高精度的分类器,并能够处理大量的变数,也可以平衡分类资料集之间的误差。
3.5 人工神经网络算法
人工神经网络与神经元组成的异常复杂的网络此大体相似,是个体单元互相连接而成,每个单元有数值量的输入和输出,形式可以为实数或线性组合函数。它先要以一种学习准则去学习,然后才能进行工作。当网络判断错误时,通过学习使其减少犯同样错误的可能性。此方法有很强的泛化能力和非线性映射能力,可以对信息量少的系统进行模型处理。从功能模拟角度看具有并行性,且传递信息速度极快。
3.6 Boosting與Bagging算法
Boosting是种通用的增强基础算法性能的回归分析算法。不需构造一个高精度的回归分析,只需一个粗糙的基础算法即可,再反复调整基础算法就可以得到较好的组合回归模型。它可以将弱学习算法提高为强学习算法,可以应用到其它基础回归算法,如线性回归、神经网络等,来提高精度。Bagging和前一种算法大体相似但又略有差别,主要想法是给出已知的弱学习算法[12]和训练集,它需要经过多轮的计算,才可以得到预测函数列,最后采用投票方式对示例进行判别。
3.7 关联规则算法
关联规则是用规则去描述两个变量或多个变量之间的关系,是客观反映数据本身性质的方法。它是机器学习的一大类任务,可分为两个阶段,先从资料集中找到高频项目组,再去研究它们的关联规则。其得到的分析结果即是对变量间规律的总结。
3.8 EM算法
在进行机器学习的过程中需要用到极大似然估计等参数估计方法,在有潜在变量的情况下,通常选择EM算法,不是直接对函数对象进行极大估计,而是添加一些数据进行简化计算,再进行极大化模拟。它是对本身受限制或比较难直接处理的数据的极大似然估计算法。
4 机器学习的应用与影响
4.1 应用
1)虚拟助手。Siri,Alexa,Google?Now都是虚拟助手。顾名思义,当使用语音发出指令后,它们会协助查找信息。对于回答,虚拟助手会查找信息,回忆我们的相关查询,或向其他资源(如电话应用程序)发送命令以收集信息。我们甚至可以指导助手执行某些任务,例如“设置7点的闹钟”等。
2)交通预测。生活中我们经常使用GPS导航服务。当我们这样做时,我们当前的位置和速度被保存在中央服务器上来进行流量管理。之后使用这些数据用于构建当前流量的映射。通过机器学习可以解决配备GPS的汽车数量较少的问题,在这种情况下的机器学习有助于根据估计找到拥挤的区域。
3)过滤垃圾邮件和恶意软件。电子邮件客户端使用了许多垃圾邮件过滤方法。为了确保这些垃圾邮件过滤器能够不断更新,它们使用了机器学习技术。多层感知器和决策树归纳等是由机器学习提供支持的一些垃圾邮件过滤技术。每天检测到超过325?000个恶意软件,每个代码与之前版本的90%~98%相似。由机器学习驱动的系统安全程序理解编码模式。因此,他们可以轻松检测到2%~10%变异的新恶意软件,并提供针对它们的保护。
4.2 影响
1)积极影响。机器学习会在未来的发展时间进一步提高智能性,会提升学习认知与理解思考的能力,体现出更好的优化结构与高效性。它将在今后医疗、教育及金融等领域为社会提供智能的个性化服务。作为统计方法的延伸,机器学习将进一步提高计算能力,尝试采用新的更优化算法。
到现在集成学习已是机器学习最热门的分?支[13],此领域研究人数多且成果丰厚,现已有很多集成学习算法,如Bagging、Boosting、Arcing等。
2)消极影响。大多数集成算法包括Bagging算法都是为指导学习而设计,一旦集成学习算法要是用于无指导学习,它和那些用于有指导学习的算法设计相比,就会特别艰难。
5 结论
本文依次介绍了机器学习相关的概念、发展历史、分类与机器学习的经典算法,并提及了机器学习的进展成果和应用。根据目前的情况来看,机器学习目前还没有走出弱人工智能阶段,其依赖的人脑知识研究需要新的进展与突破,计算机科学技术以及相关领域也有待于进一步加强。对机器学习的研究可以借鉴新的学习算法来提高机器学习的效率,从而推动人类社会的文明进步。
参考文献
[1]林全智.基于多目标优化的人工神经网络自适应设计[D].厦门:厦门大学,2013.
[2]张润,王永滨.机器学习及其算法和发展研究[J].中国传媒大学学报(自然科学版),2016,23(2):10-18.
[3]张泽.机器学习算法及其工程应用研究[D].天津:天津大学,2012.
[4]岑瑶.基于梯度方向直方图特征的掌纹识别关键技术的研究[D].呼和浩特:内蒙古农业大学,2017.
[5]张肃.基于机器学习的高速光信号光性能监测[D].北京:北京交通大学,2018.
[6]安增波,张彦.机器学习方法的应用研究[J].长治学院学报,2007,24(2):21-24.
[7]安增波,张彦.机器学习方法的应用研究[J].长治学院学报,2007,24(2):21-24.
[8]曾莹,刘波.一种基于关节角度的步态识别新方法[J].现代电子技术,2010,33(10):86-89.
[9]谢清新.基于小波分解和Teager能量算子的P300特征提取及分类算法研究[D].广州:广东工业大学,2016.
[10]沈晨.基于特征子空间的高精度图像分类器实现[D].吉林:吉林大学,2009.
[11]陈凯,朱钰.机器学习及其相关算法综述[J].统计与信息论坛,2007,22(5):105-112.
[12]肖静.数据挖掘技术在保险公司客户关系管理中的应用研究[D].长沙:湖南大学,2013.
[13]赵楠.基于机器学习的供应链绩效智能分析方法研究[D].天津:天津大学,2010.