人工智能综述
1.人工智能理论渊源及演变历史人工智能目前尚没有严格意义上的定义,一般有如下四类人工智能的定义:
人工智能的基础包括:哲学、数学、经济学、神经科学、心理学、计算机科学、控制论、语言学等,是一门综合交叉学科。人工智能的历史发展主要包括如下阶段:1)人工智能的诞生:1943-1956在20世纪40年代和50年代,来自不同领域(数学,心理学,工程学,经济学和政治学)的一批科学家开始探讨制造人工大脑的可能性。1956年,人工智能被确立为一门学科。维纳的控制论、克劳德•香农的信息论、图灵的计算理论等这些密切相关的想法暗示了构建电子大脑的可能性。1956年达特矛斯会议的组织者是MarvinMinsky,约翰•麦卡锡和另两位资深科学家ClaudeShannon以及NathanRochester。会议提出的断言之一是“学习或者智能的任何其他特性的每一个方面都应能被精确地加以描述,使得机器可以对其进行模拟。”1956年达特矛斯会议上AI的名称和任务得以确定,同时出现了最初的成就和最早的一批研究者,因此这一事件被广泛承认为AI诞生的标志。2)人工智能的黄金时代:1956-1974从50年代后期到60年代涌现了大批成功的AI程序和新的研究方向。下面列举其中最具影响的几个:搜索式推理、自然语言、微世界等。3)人工智能的第一个低谷:1974-1980到了70年代,AI开始遭遇批评,随之而来的还有资金上的困难。AI研究者们对其课题的难度未能作出正确判断:此前的过于乐观使人们期望过高,当承诺无法兑现时,对AI的资助就缩减或取消了。同时,由于MarvinMinsky对感知器的激烈批评,联结主义(即神经网络)销声匿迹了十年。70年代后期,尽管遭遇了公众的误解,AI在逻辑编程,常识推理等一些领域还是有所进展。4)繁荣:1980-1987在80年代,一类名为“专家系统”的AI程序开始为全世界的公司所采纳,而“知识处理”成为了主流AI研究的焦点。日本政府在同一年代积极投资AI以促进其第五代计算机工程。80年代早期另一个令人振奋的事件是JohnHopfield和DavidRumelhart使联结主义重获新生。AI再一次获得了成功。5)第二次低谷:1987-199380年代中商业机构对AI的追捧与冷落符合经济泡沫的经典模式,泡沫的破裂也在政府机构和投资者对AI的观察之中。尽管遇到各种批评,这一领域仍在不断前进。来自机器人学这一相关研究领域的RodneyBrooks和HansMoravec提出了一种全新的人工智能方案。6)AI:1993-JudeaPearl发表于1988年的名著将概率论和决策理论引入AI。现已投入应用的新工具包括贝叶斯网络,隐马尔可夫模型,信息论,随机模型和经典优化理论。针对神经网络和进化算法等“计算智能”范式的精确数学描述也被发展出来。7)大数据时代从人工智能发展的历史看,基本上是一个算法进化的历史。而如今,随着大数据技术的飞速发展,认为更关心数据而严格挑选算法的观点开始提出并加以使用。比如:
2.人工智能主要技术人工智能市场正在快速发展。除了引发的讨论和媒体的高度关注,以及不断涌现的创业公司和试图收购这些创业公司的互联网巨头之外,这一领域吸引的投资和企业使用也越来越多。NarrativeScience进行的调查显示,去年38%的企业已经在使用人工智能,而到2018年将增长至62%。ForresterResearch则预计,2017年人工智能领域获得的投资将同比增长超过300%。IDC估计,人工智能行业的规模将从2016年的80亿美元增长至2020年的超过470亿美元。人工智能的概念包含多种技术和工具,一些出现的时间已经很长,而另一些则刚刚出现。为了让外界更好地了解当前趋势,Forrester发布了关于人工智能的TechRadar报告,对13种企业应当关注的人工智能技术进行了分析。
基于Forrester的分析,以下是《福布斯》列出的2017年10大热门人工智能技术:
1.自然语言生成:利用计算机数据生成文本。目前被用在客户服务、报告生成,以及商业情报信息总结等方面。范例供应商:Attivio、CambridgeSemantics、DigitalReasoning、Lucidworks、NarrativeScience、SAS。2.语音识别:听写人类语言,并将其转换为对计算机应用有用的形式。目前被用在互动语音响应系统和移动应用中。范例供应商:NICE、NuanceCommunications、OpenText、VerintSystems。3.虚拟助手:既包括简单的聊天机器人,也包括可以与人类联网沟通的先进系统。目前被用在客户服务和支持,以及智能家居管理工具中。范例供应商:亚马逊、苹果、ArtificialSolutions、AssistAI、CreativeVirtual、谷歌、IBM、IPsoft、微软、Satisfi。4.机器学习平台:提供算法、API、开发和训练工具包、数据,以及计算能力,从而设计、训练计算模型并将其发展成为应用、流程和机器。目前被广泛用于企业应用,大部分都包含预测或分类功能。范例供应商:亚马逊、FractalAnalytics、谷歌、H2O.ai、微软、SAS、Skytree。5.经过人工智能优化的硬件:用于运行人工智能计算任务、经过专门设计和架构的GPU(图形处理单元)和应用。目前被用于改变深度学习应用。范例供应商:Alluviate、Cray、谷歌、IBM、英特尔、英伟达。6.决策管理:向人工智能系统插入规则和逻辑的引擎,可用于初始化设置/训练,以及持续的维护和优化。这是一种成熟的技术,被用于多种不同的企业应用,辅助或进行自动化决策。范例供应商:AdvancedSystemsConcepts、Informatica、Maana、Pegasystems、UiPath。7.深度学习平台:一种特殊形式的机器学习平台,包含多层的人工神经网络。目前主要被用于基于大数据集的模式识别和分类。范例供应商:DeepInstinct、ErsatzLabs、FluidAI、MathWorks、Peltarion、SaffronTechnology、SentientTechnologies。8.生物信息:赋能更多人机之间的自然互动,包括但不限于图像和触控识别、语音和身体语言。目前主要被用于市场研究。范例供应商:3VR、Affectiva、Agnitio、FaceFirst、Sensory、Synqera、Tahzoo。9.机器处理自动化:使用脚本和其他方法实现人类操作的自动化,以支持更高效的商业流程。目前被用于某些人力成本高昂或低效的任务和流程。范例供应商:AdvancedSystemsConcepts、AutomationAnywhere、BluePrism、UiPath、WorkFusion。10.文本分析和自然语言处理:自然语言处理技术利用统计和机器学习方法去理解语句的结构、含义、情绪和意图。目前被用于欺诈探测和信息安全,多种自动化助手,以及非结构化数据的挖掘。范例供应商:BasisTechnology、Coveo、ExpertSystem、Indico、Knime、Lexalytics、Linguamatics、Mindbreeze、Sinequa、Stratifyd、Synapsify。
目前,人工智能可以给企业带来许多帮助。但根据Forrester在2016年进行的调查,在不计划投资人工智能的公司中,许多公司认为,人工智能的普及存在障碍。这些障碍包括:
1.没有清晰定义的商业场景:42%2.不清楚人工智能可以如何使用:39%3.缺乏必要的技能:33%4.需要首先投资,推动数据管理平台的现代化:29%5.缺乏预算:23%6.不确定配置人工智能系统需要具备哪些元素:19%7.人工智能系统尚未得到证明:14%8.缺乏适当的流程或管理方法:13%9.人工智能只是噱头,没有实质的东西:11%10.不掌握,或是无法获得所需的数据:8%11.不确定人工智能是什么:3%
Forrester认为,在克服这些障碍之后,企业可以加速向以用户为导向应用的转型,以及发展企业智能的互联网络。
3.机器学习和深度学习深度学习是机器学习的一个领域,研究复杂的人工神经网络的算法、理论、及应用。自从2006年被Hinton等提出以来[1],深度学习得到了巨大发展,已被成功地应用到图像处理、语音处理、自然语言处理等多个领域,取得了巨大成功,受到了广泛的关注,成为当今具有代表性的IT先进技术。
深度学习本质是复杂的非线性模型的学习,从机器学习的发展史来看,深度学习的兴起代表着机器学习技术的自然演进。1957年,Rosenblatt提出了感知机模型(Perceptron),是线性模型,可以看作是两层的神经网络;1986年,Rumelhart等开发了后向传播算法(BackPropagation),用于三层的神经网络,代表着简单的非线性模型;1995年,Vapnik等发明了支持向量机(SupportVectorMachines),RBF核支持向量机等价于三层的神经网络,也是一种简单的非线性模型。2006年以后的深度学习实际使用多于三层的神经网络,又被称为深度神经网络,是复杂的非线性模型(见上图)。深度神经网络还有若干个变种,如卷积神经网络(ConvolutionalNeuralNetwork)、循环神经网络(RecurrentNeuralNetwork)。深度神经网络实际是复杂的非线性模型,拥有复杂的结构和大量的参数,有非常强的表示能力,特别适合于复杂的模式识别问题。深度学习不是万能的。首先,深度学习不适合所有问题。如果问题简单,比如线性问题和简单的非线性问题,深度学习至多是与支持向量机等有同等的准确率。如果学习陷入局部最优,可能还不如其他方法。本质上这相当于杀鸡用牛刀。另外,如果训练数据量不够大,深度神经网络不能得到充分学习,效果也不会很好。这时深度学习这匹“千里马”,也只能是“虽有千里之能,食不饱,力不足,才美不外见”。再有,理论上深度学习也不是万能的。著名的“没有免费的午餐”定理说明了这一点。该定理指出,针对任意两个机器学习方法:方法一和方法二,如果存在一个问题,方法一比方法二学到的模型预测精度高,那么一定存在另一个问题,方法二比方法一学到的模型预测精度高。这个定理实际在说,没有任何一个方法可以包打天下。
4.人工智能一般工作流数据采集—首先需要大量数据。这些数据可以从任何数量的来源进行收集,包括可穿戴设备的传感器以及其他对象、云和web。数据聚合和管理—收集数据后,数据科学家将对数据进行聚合和标记(如果是监督式机器学习)。模型开发—接下来,数据用于开发模型,然后对其进行精确度训练并针对性能进行优化。模型部署和评分—模型部署在应用中,用于根据新数据进行预测。使用新数据更新—随着数据量的增加,模型将变得更加精细和准确。例如,在自动驾驶汽车的行驶过程中,应用将通过传感器、GPS、360度视频捕捉等功能提供实时信息,然后使用这些信息来优化未来的预测。
5.深度学习平台对比一.TensorFlow
TensorFlow是一款开源的数学计算软件,使用数据流图(DataFlowGraph)的形式进行计算。图中的节点代表数学运算,而图中的线条表示多维数据数组(tensor)之间的交互。TensorFlow灵活的架构可以部署在一个或多个CPU、GPU的台式以及服务器中,或者使用单一的API应用在移动设备中。TensorFlow最初是由研究人员和GoogleBrain团队针对机器学习和深度神经网络进行研究所开发的,目前开源之后可以在几乎各种领域适用。DataFlowGraph:使用有向图的节点和边共同描述数学计算。graph中的nodes代表数学操作,也可以表示数据输入输出的端点。边表示节点之间的关系,传递操作之间互相使用的多位数组(tensors),tensor在graph中流动——这也就是TensorFlow名字的由来。一旦节点相连的边传来了数据流,节点就被分配到计算设备上异步的(节点间)、并行的(节点内)执行。
TensorFlow的特点:机动性:TensorFlow并不只是一个规则的neuralnetwork库,事实上如果你可以将你的计算表示成dataflowgraph的形式,就可以使用TensorFlow。用户构建graph,写内层循环代码驱动计算,TensorFlow可以帮助装配子图。定义新的操作只需要写一个Python函数,如果缺少底层的数据操作,需要写一些C++代码定义操作。可适性强:可以应用在不同设备上,cpus,gpu,移动设备,云平台等自动差分:TensorFlow的自动差分能力对很多基于Graph的机器学习算法有益多种编程语言可选:TensorFlow很容易使用,有python接口和C++接口。其他语言可以使用SWIG工具使用接口。(SWIG—SimplifiedWrapperandInterfaceGenerator,是一个非常优秀的开源工具,支持将C/C++代码与任何主流脚本语言相集成。)最优化表现:充分利用硬件资源,TensorFlow可以将graph的不同计算单元分配到不同设备执行,使用TensorFlow处理副本。二.Torch
Torch是一个有大量机器学习算法支持的科学计算框架,其诞生已经有十年之久,但是真正起势得益于Facebook开源了大量Torch的深度学习模块和扩展。Torch另外一个特殊之处是采用了编程语言Lua(该语言曾被用来开发视频游戏)。Torch的优势:构建模型简单高度模块化快速高效的GPU支持通过LuaJIT接入C数值优化程序等可嵌入到iOS、Android和FPGA后端的接口三.Caffe
Caffe由加州大学伯克利的PHD贾扬清开发,全称ConvolutionalArchitectureforFastFeatureEmbedding,是一个清晰而高效的开源深度学习框架,目前由伯克利视觉学中心(BerkeleyVisionandLearningCenter,BVLC)进行维护。(贾扬清曾就职于MSRA、NEC、GoogleBrain,他也是TensorFlow的作者之一,目前任职于FacebookFAIR实验室。)Caffe基本流程:Caffe遵循了神经网络的一个简单假设——所有的计算都是以layer的形式表示的,layer做的事情就是获得一些数据,然后输出一些计算以后的结果。比如说卷积——就是输入一个图像,然后和这一层的参数(filter)做卷积,然后输出卷积的结果。每一个层级(layer)需要做两个计算:前向forward是从输入计算输出,然后反向backward是从上面给的gradient来计算相对于输入的gradient,只要这两个函数实现了以后,我们就可以把很多层连接成一个网络,这个网络做的事情就是输入我们的数据(图像或者语音等),然后来计算我们需要的输出(比如说识别的标签),在训练的时候,我们可以根据已有的标签来计算损失和gradient,然后用gradient来更新网络的参数。Caffe的优势:上手快:模型与相应优化都是以文本形式而非代码形式给出速度快:能够运行最棒的模型与海量的数据模块化:方便扩展到新的任务和设置上开放性:公开的代码和参考模型用于再现社区好:可以通过BSD-2参与开发与讨论四.Theano
2008年诞生于蒙特利尔理工学院,Theano派生出了大量深度学习Python软件包,最著名的包括Blocks和Keras。Theano的核心是一个数学表达式的编译器,它知道如何获取你的结构。并使之成为一个使用numpy、高效本地库的高效代码,如BLAS和本地代码(C++)在CPU或GPU上尽可能快地运行。它是为深度学习中处理大型神经网络算法所需的计算而专门设计的,是这类库的首创之一(发展始于2007年),被认为是深度学习研究和开发的行业标准。Theano的优势:集成NumPy-使用numpy.ndarray使用GPU加速计算-比CPU快140倍(只针对32位float类型)有效的符号微分-计算一元或多元函数的导数速度和稳定性优化-比如能计算很小的x的函数log(1+x)的值动态地生成C代码-更快地进行计算广泛地单元测试和自我验证-检测和诊断多种错误灵活性好五.Deeplearning4j
顾名思义,Deeplearning4j是“forJava”的深度学习框架,也是首个商用级别的深度学习开源库。Deeplearning4j由创业公司Skymind于2014年6月发布,使用Deeplearning4j的不乏埃森哲、雪弗兰、博斯咨询和IBM等明星企业。DeepLearning4j是一个面向生产环境和商业应用的高成熟度深度学习开源库,可与Hadoop和Spark集成,即插即用,方便开发者在APP中快速集成深度学习功能,可应用于以下深度学习领域:人脸/图像识别语音搜索语音转文字(Speechtotext)垃圾信息过滤(异常侦测)电商欺诈侦测除了以上几个比较成熟知名的项目,还有很多有特色的深度学习开源框架也值得关注:六.ConvNetJS
这是斯坦福大学博士生AndrejKarpathy开发的浏览器插件,基于万能的JavaScript可以在你的游览器中训练深度神经模型。不需要安装软件,也不需要GPU。七.MXNet
出自CXXNet、Minerva、Purine等项目的开发者之手,主要用C++编写。MXNet强调提高内存使用的效率,甚至能在智能手机上运行诸如图像识别等任务。
人工智能课程设计报告
人工智能课程设计报告1.引言随着我国经济快速发展,城市人口急剧增加,带来了一系列的社会问题。交通拥堵,环境遭到破坏,公共交通的快速发展可以有效解决人们出行和交通拥堵的问题。自行车具有机动灵活、低碳环保的优点,若自行车可以取代现在的机动车,那么道路就不会那么拥挤,人们的出行效率就会大大提升,汽车废气的排放量也将大大的减少,环境的质量也会提升。同时,为了完美的解决从地铁站到公司、从公交站到家的“最后一公里”路程,共享单车应运而生.共享单车有效的解决了“走路累,公交挤,开车堵,打车贵”的苦恼。一夜之间,北上广深、甚至部分二线城市,共享单车大街小巷随处可见。继2016年9月26日ofo单车宣布获得滴滴快车数千万美元的战略投资,双方将在共享单车领域展开深度合作之后,摩拜单车也于2017年1月完成D轮2.15亿美元(约合人民币15亿元)的融资,国内共享单车更加火爆,最近一张手机截屏蹿红网络。在这张截图上,24个共享单车应用的图标霸满了整个手机屏幕,真的是“一图说明共享单车的激烈竞争”。而在街头,仿佛一夜之间,共享单车已经到了“泛滥”的地步,各大城市路边排满各种颜色的共享单车。共享经济的不断发展逐渐的改变着人们的日常生活,共享精神也逐渐深入人心。1.1任务要求要求运用人工智能相关理论和方法设计计算机系统解决实际问题。2.详细设计2.1设计步骤1.共享单车骑行数据的获取运用python库(BeautifulSoup,requests,scrapy)对优易数据网站(http://www.youedata.com/)Kaggle和进行爬取共享单车的骑行数据。将爬取的数据写入csv文件中:分析数据集:数据集来源于加利福尼亚大学欧文分校(UCI)大学的公开数据集:https://archive.ics.uci.edu/ml/datasets/Bike+Sharing+Dataset,本次数据集的信息参考该网站。共享单车数据集包含有两个文件,一个是按天来统计的共享单车使用量数据,另一个是按照小时数来统计的使用量。共享单车数据集是在2011年至2012年间收集的,此处的共享单车是采用固定桩形式的单车,类似于中国的永安行,并不是我们目前所看到的满大街的小黄车,摩拜之类。本数据集总共有17389个样本,每个样本有16列,其中,前两列是样本序号和日期,最后三列数据是不同类型的输出结果。
2.导入并理解数据首先导入并读取查看训练数据和测试数据:
测试数据共7列,10886行,且所以数据完整,没有缺失。然后需要我们通过模型来进行预测。导包:3.数据处理与分析在数据处理过程中,最好将训练数据与测试数据合并在一起进行处理,方便特征的转换。通过查看数据,确保测试数据均无缺失,或不一致。特别是在,日期时间特征由年、月、日和具体小时组成。可以根据日期计算其星期,然后就可以将日期时间拆分成年、月、日和星期5个特点。分析按天来统计的共享单车使用量数据集:4.数据分析规范数据后,快速查看各影响因素的结果:从相关系数,不同月份、季节对骑行人数的影响。未来更加值观地展现所有特征之间的影响,通过绘制柱状图来实现。接下来,深入分析各特征的影响规律,对每个特征进行可视化:由随机森林模型预测分析:结果说明:Instant记录号Dteday:日期Season:季节(1=春天、2=夏天、3=秋天、4=冬天)yr:年份,(0:2011,1:2012)mnth:月份(1to12)hr:小时(0to23)(在hour.csv有)holiday:是否是节假日weekday:星期中的哪天,取值为0~6workingday:是否工作日1=工作日(是否为工作日,1为工作日,0为周末或节假日weathersit:天气(1:晴天,多云;2:雾天,阴天;3:小雪,小雨;4:大雨,大雪,大雾)temp:气温摄氏度atemp:体感温度hum:湿度windspeed:风速casual:非注册用户个数registered:注册用户个数cnt:给定日期(天)时间(每小时)总租车人数,响应变量y(cnt=casual+registered)1.输出结果可以看出,这个数据集中没有缺失值,且每一列的数据特征都一致的,不需要进行额外的修改2.数据集中的season等7列是int64类型,意味着这些数据需要重新转换为独热编码格式,season中的1=spring,2=summer,3=autumn,4=winter,需改成独热编码形成的稀疏矩阵。构建随机森林回归模型:直接使用随机森林回归模型直接拟合
绘制不同特征的相对重要性直方图:3.关键技术1.导包操作:科学计算包nnumpy,pandas。可视化工具matplotlib,seabornMatplotlib是一个python的2d绘图库,我们可以通过这个库将数据绘制成各种2D图形(直方图、散点图,条形图等)。2.我们做数据可视化,其实就是对数据进行分析,pandas是一个非常强大的数据分析工具包。通常使用pandas进行下列图形的快速绘图:1.‘line’2.‘bar’forbarplots3.‘box’forboxplot4.‘area’forareaplots5.‘scatter’forscatterplots3.NumPy(NumericalPython)是目前Python数值计算中最为重要的基础包,主要包含以下内容:·高效多维数组ndarray,提供了基于数组的便捷算数操作以及灵活的广播功能;·对所有数据进行快速的矩阵计算,而无需编写循环程序;·对硬盘中数组数据进行读写的工具,并对内存映射文件进行操作;·线性代数、随机数生成以及傅里叶变换功能;·用于连接NumPy到C、C++和FORTRAN语言类库的C语言API。4.Seaborn是基于matplotlib的图形可视化python包。它提供了一种高度交互式界面,便于用户能够做出各种有吸引力的统计图表。5.在Python中,有很多数据可视化途径。Matplotlib非常强大,也很复杂,不易于学习。Seaborn是在matplotlib的基础上进行了更高级的API封装,从而使得作图更加容易,大多数情况下使用seaborn就能做出很具有吸引力的图,而使用matplotlib就能制作具有更多特色的图。
4.运行结果4.1运行环境硬件配置:Cpu主频2.80GHz,8GB内存软件配置:Windows操作系统(x86),python3.6,pycharm4.2运行结果打印初始数据集:直接使用随机森林回归模型结果:不同特征的相对重要性直方图:
数据可视化分析
一周内骑行时间分析
不同月份骑行人数可视化分析4.3实验结果分析
1.在没有对数据集进行任何处理的情况下,采取了默认的随机森林回归模型得到的模型在测试集上的MSE很大,解释方差分和R2都是0.93,表明模拟还可以。2.从相对重要性图中可以看出,温度对共享单车的使用有较大的影响性,从正常生活中可以理解,冬天太冷或夏天太热,骑行共享单车的人数就会显著减少。所获取的数据集是2011和2012年的,如果要得到更加可信的结果,还需要更多年份的数据。
1.可以从图表中看出秋季和冬季的骑行人数较多,可能是气候的原因,太热人们不愿意骑车出行2.早上上班和晚上下班高峰期,骑行人数有明显的增加,反观工作时间,骑车的人数较少,上下班时段为使用共享单车的高峰。3.非工作日中人们出行可能会更多使用汽车或其他公共交通出行,工作日中使用共享单车较多,周末时可能数量会相对减少。
1.在夏季5,6,7,8月份是全年的共享单车使用最多的时候,相比12月与1月是全年用车低峰,冬季户外太冷,共享单车使用急剧下降。5.心得和结论5.1结论和体会本次人工智能课程设计完成了对共享单车数据的分析和数据可视化,从中更加直观的反映不同月份,不同时间共享单车的使用情况,以及使用随机森林回归模型反应影响共享单车使用的因子的重要性。设计中通过直方图,曲线图等图表简练地反映了共享单车的使用情况。但由于数据集采用的年份较少,不能得到一个更加可信的参考结果,因此还需要更多年份的数据。影响共享单车使用还有地域等等客观因素,这些还没考虑周全,希望以后能完善对其的研究。设计中遇到的问题:1)normalize是标准化,另外你这里分别对训练和测试数据标准化是有问题的。分别处理会导致数据分布变得不一样。2)数据特征工程做的少,类别型特征没有处理。3)模型跑出来之后,完全没有结果的解析主要参考文献[1]加利福尼亚大学欧文分校(UCI)大学的公开数据集https://archive.ics.uci.edu/ml/datasets/Bike+Sharing+Dataset,访问日期:2019年12月.[2]优易数据网站http://www.youedata.com/,访问时间:2019年12月[3]Python机器学习经典实例,PrateekJoshi著,陶俊杰,陈小莉译[4]《ProbabilisticGraphicalModels-PrinciplesandTechniques》Koller著[5]《IntroductiontoMathematicalStatistics》第六版,Hogg著[6]TwoFacesofActiveLearning50,Dasgupta,2011[7]ActiveLearningLiteratureSurvey8,Settles,2010[8]ASurveyofOnlineFailurePredictionMethods2,Salfner,2010[9]《统计学习方法》作者李航[10]《机器学习及其应用》周志华、杨强主编。[11]《数学之美》,作者吴军[12]《PatternClassification》(《模式分类》第二版)作者RichardO.Duda[5]、PeterE.Hart、David。