机器学习的发展和应用——机器学习测试(1)

发表于:2020-10-10 09:52

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:融360 AI 测试团队    来源:51Testing软件测试网原创

分享:
  第1章 机器学习的发展和应用
  机器学习(Machine Learning,ML)是人工智能(Artificial Intelligence,AI)的一个核心子领域,它使计算机在没有人类干预的情况下自动预测结果。1952年,IBM的亚瑟·塞缪尔(Arthur Samuel,被誉为“机器学习之父”)设计了一款可以学习的西洋跳棋程序,塞缪尔和这个程序进行多场对弈后发现,随着时间的推移,程序的棋艺变得越来越好。塞缪尔用这个程序推翻了以往“机器无法超越人类,不能像人一样写代码和学习”这一传统认识,并在1956年正式提出了“机器学习”这一概念。
  1.1 什么是机器学习
  那么到底什么是“机器学习”?机器学习实际上包含很多内容,这一领域相当庞大且扩张得特别快,正在不停地细分成各种各样的机器学习分支领域。然而这些领域存在共同点,它们最重要的一个共同主题便是亚瑟·塞缪尔对“机器学习”的定义:“使计算机能够在没有显示编程的情况下学习的研究领域(Machine Learning is the field of study that gives computers the ability to learn without being explicitly programmed.)”。
  有着“全球机器学习教父”之称的Tom Mitchell在1997年将机器学习定义为:对于某类任务T和性能度量P,如果计算机程序在T上以P衡量的性能随着经验E而自我完善,就称这个计算机程序从经验E学习(A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P if its performance at tasks in T, as measured by P, improves with experience E.)。比如,如果想要我们的程序预测繁忙的十字路口的交通模式(任务T),我们可以运行它通过机器学习算法和过去的交通模式数据(经验E)交互,如果它成功地“学习”,那么它将会对未来的交通模式做出更好的预测(性能度量P)。
  简单来说,机器学习就是试图让机器具备像人类一样的学习能力:从经验数据中学习。机器学习最基本的做法是使用算法来分析数据并从中学习,然后对真实世界中的事件做出决策或预测。因此,机器学习是基于算法的,且这种算法可以从数据中学习,而不依赖于基于规则的编程。随着可用于学习的数据量的增加,算法会自适应地提高其性能。举个简单的例子,当我们浏览网上商城时,经常会出现商品推荐的信息。这是商城根据我们往期的购物记录和冗长的收藏清单,识别出哪些是我们真正感兴趣,并且愿意购买的产品。这样的决策模型,可以帮助商城为客户提供建议并促进产品消费。
图1-1 人类思考vs机器学习
  1.2 机器学习的发展
  虽然机器学习的历史可以追溯到1950年之前,但机器学习作为一个独立的方向,在20世纪80年代才形成。20世纪90年代和21世纪初,机器学习得到快速发展,出现了大量的算法和理论,在这一方向共诞生了4位图灵奖得主。随着2012年深度学习技术的兴起,机器学习的应用领域也迅速拓广,成为现阶段解决很多人工智能问题的主要途径。
  1.机器学习和人工智能
  机器学习是人工智能研究的核心内容。它的应用已遍及人工智能的各个分支,如专家系统、自动推理、自然语言理解、模式识别、计算机视觉、智能机器人等领域。
  人工智能涉及到对人本身的意识(consciousness)、自我(self)、心灵(mind)等等哲学问题的探索。人唯一了解的智能是人本身的智能,这是普遍认同的观点。但是我们对自身智能的理解都非常有限,对构成人的智能的必要元素也了解有限,所以就很难定义什么是“人工”制造的“智能”了。人工智能的研究往往涉及对人的智能本身的研究。其它关于动物或其它人造系统的智能也普遍被认为是人工智能相关的研究课题。图1-2展示了人工智能的发展过程中的重要成就,机器学习是人工智能研究发展到一定阶段的必然产物,所以随着人工智能的发展,机器学习的发展大致可归纳为三个阶段。
图1-2 人工智能的发展过程中的重要成就
  1)机器学习“萌芽”阶段
  二十世纪五十年代到七十年代初,此时人工智能研究处于“推理”期,机器学习技术研究处于“萌芽”阶段。人们试图给机器例如大型计算机通过编程手段使其最终具备逻辑推理能力,进而使机器具有一定的智能思考和自我优化的能力。然而,进一步实践和研究证明只具有逻辑并不能使机器具有智能,智能存在的前提还必须具有先验“知识”。
  2)机器学习“发展”阶段
  二十世纪七、八十年代,人工智能的研究处于“知识期”,此时机器学习进入“发展”阶段。这个时期的主流为“专家系统”。但是,所谓“专家系统”也要面临“知识困境”,简单地说,对近乎无限的信息人类很难通过自身思维提取规则并赋予计算设备。机器自主学习的设想浮出水面。
  3)机器学习“繁荣”阶段
  从二十世纪八十年代至今,机器学习成为一个独立的学科领域并开始爆发式发展,各种机器学习技术不断涌现,机器学习算法呈现多样化,图1-3列举了二十世纪八十年代以来历史上出现的有代表性的机器学习算法。二十世纪八十年代的典型成果是用于多层神经网络训练问题的反向传播算法,以及各种决策树(如分类和回归树)。二十世纪九十年代是机器学习走向成熟和大规模发展的时代,这一时期出现了支持向量机、AdaBoost算法、随机森林、循环神经网络/LSTM、流形学习等大量的经典算法。同时机器学习走向真正的应用,如垃圾邮件分类、车牌识别、人脸检测、文本分类、语音识别、搜索引擎网页排序等产品和功能。
  深度学习技术在2006年之后得到快速发展,目前较好的解决了计算机视觉、语音识别等领域的部分核心问题。在数据生成问题上,以生成对抗网络为代表的深度生成模型也取得惊人的效果,可以生成复杂的数据(如图像、声音)。深度强化学习(深度学习技术与强化学习技术相结合的产物)在众多的策略、控制问题上也取得了成功,如棋类游戏、自动驾驶、机器人控制等。
图1-3 机器学习历史上经典算法
  2.机器学习当前发展
  2012年以后,得益于数据量的上涨、运算力的提升和机器学习新算法(深度学习)的出现,人工智能开始大爆发。据领英发布的《全球AI领域人才报告》显示,截至2017年一季度,基于领英平台的全球AI领域技术人才数量超过190万,仅国内人工智能人才缺口达到500多万。
  随着深度学习的兴起,人工智能在诞生60多年之后再次迎来复兴。无论是学术界还是工业界,深度学习和人工智能都取得了迅猛进展。深度学习技术首先在机器视觉、语音识别领域获得成功,有效解决了大量感知类问题。随后又应用到自然语言处理、图形学、数据挖掘、推荐系统等各领域。在图像识别、语音识别、自然语言处理等领域里重点问题的特定数据库上,深度学习算法已经接近或者超越人类的水平,达到或接近实用的标准。在语音识别、人脸识别、OCR(光学字符识别)、自动驾驶、医学图形识别与疾病诊断等众多商业领域,深度学习和人工智能技术正在带来产业变革。
  2020年,北京地铁利用机器学习算法实现的“魔窗”系统为乘客动态呈现列车位置、路网图及前方车站三维示意图,方便乘客了解下一个车站的洗手间、电梯、出口、周边商业设施等常用区域、场所的相关信息;且车门上方的4K高清屏幕用于显示换乘路线及前后车厢拥挤度等信息;此外车厢内还增加了感知设备,利用图像识别智能算法实现异常情况监测和报警,通过高清摄像头对车厢内的乘客的异常行为做监控,如疫情期间可以监控乘客是否佩戴口罩、挥手求助、晕倒等异常行为,同时司机前方也增加了感知设备,利用司机面部特征推断驾驶状态,一旦检测到疲劳、分心,系统会有语音提示等等。

查看《机器学习测试入门与实践》全部连载章节
版权声明:51Testing软件测试网获得人民邮电出版社和作者授权连载本书部分章节。
任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号