当前位置: 首页 > news >正文

机器学习与人工智能、深度学习有什么关系?终于有人讲明白了

导读:“机器学习”一词往往被与“人工智能”“深度学习”混用,也常与“大数据”一词一同出现。下面首先简要介绍它们的关系,然后讲述机器学习的基本概念和模式。

作者:张春强 张和平 唐振

来源:大数据DT(ID:hzdashuju)

“机器学习”“人工智能”“深度学习”这三个词常常被人混淆,但其实它们出现的时间相隔甚远,“人工智能”(Artificial Intelligence,AI)出现于20世纪50年代,“机器学习”(Machine Learning,ML)出现于20世纪80年代,而“深度学习”(Deep Learning,DL)则是近些年才出现的。三者是包含与被包含关系,如图1-1所示。

▲图1-1 人工智能、机器学习和深度学习的关系

业内对于以上关系还有不同的见解,比如认为深度学习有部分内容在机器学习范畴之外,此处不深究。

01 机器学习与人工智能

“人工智能”一词出现在1956年的达特茅斯会议上,当时人工智能先驱的梦想是建造具有人类智能体的软硬件系统,该系统具有人类的智能特征,而这里所说的人工智能为“通用人工智能”。

这样的人工智能梦想曾在影视作品中大放异彩,如电影《星球大战》中的C-3PO机器人具有人类的理性和思考能力。不过,迄今为止,这种高层次的推理和思想仍然难以实现,退而求其次,目前能够落地的都属于“狭义的人工智能”,如人脸识别等。

我们将机器学习描述为实现人工智能的一种方式方法。机器学习是基于已有数据、知识或经验自动识别有意义的模式。最基本的机器学习使用算法解析和学习数据,然后在相似的环境里做出决定或预测。简言之,即基于数据学习并做决策。这样的描述将机器学习与传统软件或普通程序区分开来。

机器学习过程中,并没有人为指示机器学习系统如何对未知环境做出决策或预测,这一过程由机器学习中的算法从数据中习得,做出决策的主体是机器学习算法,并且决策或预测是非确定性的结果,一般以概率的形式输出,比如80%的可能性是晴天。

与之不同的是,常规的应用程序需要软件工程师一句句地编写代码(特定的指令集),指示程序或软件做出确定的行为,比如输出0和1分别表示注册成功和失败。做出决策的主体实际是人,程序只是执行动作的工具。正因如此,机器学习可归为间接编程,与之对应的是常规编程。

02 机器学习与深度学习

深度学习使用多层(一般多于5层)人工神经网络学习数据内部的复杂关系。人工神经网络是生物科学、认知科学等与人工智能结合的产物,在早期的机器学习中就已开始应用,其初衷是在计算机中模拟人类大脑神经元的工作模式。

人类大脑的神经元在百亿级别,通过突触实现彼此交流,从计算的角度看属于计算密集型,这限制了复杂人工神经网络在实践中的应用。计算机计算能力的大幅提升带来了新的可能,2000年,多伦多大学的Geoffrey Hinton领导的研究小组在不懈研究下,终于在现代超级计算机中验证了深度学习的多层网络结构。

Geoffrey Hinton因在深度学习领域做出巨大贡献而被称为深度学习的鼻祖,并与Yoshua Bengio、Yann LeCun并称机器学习三巨头。(三人因在深度学习领域的贡献而荣获2018年图灵奖。

深度学习可被看作一种实现机器学习的技术,是机器学习的子集。与深度学习相对,过去那些只有单层或少层的神经网络被称为浅层学习。

对于机器学习的描述,也有专家调侃地发声,以表明某种现象:当你募集资金时,这属于人工智能;当你招聘时,这属于机器学习;当你执行时,这属于线性回归;当你调试时,这属于printf()

以上只从某个侧面简要描述了人工智能、机器学习和深度学习的关系,更全面的信息请读者参考相关资料。

03 机器学习与统计学、大数据及数据科学

机器学习与传统统计密不可分,两者都是从数据中得出结论。统计学中首先提出数据空间假设(比如数据呈正态分布)下的参数化求解,同时关心样本量增大至无穷时统计估计的收敛问题;机器学习则尽可能少地对数据分布做出假设,而以算法作为关键,学习接近数据生成的模型,同时关注有限样本下学习的性能(算法和模型表现)。

机器学习与大数据也常常出现在同一场合。当某人提到大数据时,需要看此人背景才能明确其所说大数据的含义。

当此人是大数据相关技术人员、从技术角度描述大数据时,他往往指的是数据的存储、分析、处理和计算的技术,其难点并不在于具体的算法,而在于存储、计算的分布式系统的层级问题。从行业中我们也能看到针对大量的数据建模往往使用相对简单的算法。

相反,对于少量数据,由于来之不易,往往会进行大量精细的分析和处理。我们很难根据某一天的天气推测另一天的天气状况,但如果有大量的历史天气数据,使用常规算法推测另一天的天气状况就会有较大把握。

在某种意义上,“大数据不难,小数据才难”有一定道理。当此人从业务角度描述大数据时,他往往指的是数据,是基于数据的分析挖掘、运营以及产生业务价值的方法和策略。

当外行人说大数据时,他往往指的是海量数据、安全与隐私等更为直观的概念。值得一提的是,在很多场景下,对于真正进入算法模型的数据量,我们需要自问:我们真的有大数据吗?

当然,机器学习所用的数据来源于各个渠道,数据量是海量的,存储于大数据平台或大数据存储系统,从这个角度来看,机器学习是依赖于大数据的。另外,大数据(及其处理能力)也是传统的数据分析建模向机器学习、深度学习转变的关键。

机器学习与数据科学(Data Science)关系也非常紧密。在笔者看来,数据科学从数据的角度概括了数据有关的活动,涉及的范围比机器学习更广。数据工程、数据可视化、数据集成与ETL(提取、转换和加载)、商业智能、数据产品、大数据等都可以归入数据科学范畴。

关于作者:张春强,是一位具有3年C/C++、7年大数据和机器学习经验且富有创造力的技术专家,在技术一线摸爬滚打近10年,先后就职于大型IT、世界500强企业,目前就职于某大型金融科技集团,负责数据挖掘、机器学习相关工作的管理和研发。

张和平,现就职于某互联网金融集团科技公司,任大数据模型工程师,负责机器学习在金融风控和用户运营方面的应用工作,善于运用机器学习、数据挖掘、知识图谱和大数据技术解决实际的业务问题。在大数据风控建模、用户画像、大数据平台建设等方面有丰富的实践经验。

本文摘编自《机器学习:软件工程方法与实现》,经出版方授权发布。

延伸阅读《机器学习:软件工程方法与实现》

点击上图了解及购买

转载请联系微信:DoctorData

推荐语:大型金融集团专家撰写,将软件工程方法、工具和策略应用到机器学习,提供高质量代码设计和工业应用框架。

更多精彩回顾

书讯 | 1月书讯:Hello 2021! (上)

书讯 | 1月书讯:Hello 2021! (下)

书单 | 8本书助你了解人民日报“创作大脑”

干货 | 系统学习WebAssembly —— 理论篇

收藏 |终于有人把业务中台、数据中台、技术中台都讲明白了

上新 | 华为官方出品:首本HMS Core技术解析图书问世

赠书 | 【第37期】Java核心技术经典图书推荐

点击阅读全文购买

相关文章:

  • TIOBE 1 月编程语言:Python 摘得 2020 年度编程语言!
  • 解读数据架构的 2020:开放、融合、简化
  • DB-Engines:PostgreSQL获得“2020年度数据库”荣誉
  • 曾被“劝退”的 C++ 20 正式发布!
  • 年终盘点 | 2020年,国内私有云正式进入3.0时代
  • 平均14915元,2021年1月程序员工资统计出炉,打工人你拖后腿了吗
  • 5G重要应用!三大运营商、华为、腾讯都在布局,现在了解还不晚
  • 手把手教你用ECharts画折线图
  • 【第38期】移动边缘计算MEC,站在5G“中央”
  • 简单却巧妙,工程师创意太牛了!
  • 【前端实时音视频系列】WebRTC入门概览
  • 2021 年最值得学习的 5 大机器学习编程语言!
  • ECharts可视化经验分享
  • 2021年,AI哪个方向最火?看看大神们怎么说
  • 后“量子霸权”时代你不可错过的几本好书
  • [译]前端离线指南(上)
  • 【402天】跃迁之路——程序员高效学习方法论探索系列(实验阶段159-2018.03.14)...
  • 【知识碎片】第三方登录弹窗效果
  • Android组件 - 收藏集 - 掘金
  • canvas 五子棋游戏
  • Centos6.8 使用rpm安装mysql5.7
  • download使用浅析
  • Flex布局到底解决了什么问题
  • iOS动画编程-View动画[ 1 ] 基础View动画
  • unity如何实现一个固定宽度的orthagraphic相机
  • Vue2 SSR 的优化之旅
  • VuePress 静态网站生成
  • vue--为什么data属性必须是一个函数
  • 基于web的全景—— Pannellum小试
  • 理清楚Vue的结构
  • 爬虫模拟登陆 SegmentFault
  • 容器服务kubernetes弹性伸缩高级用法
  • 网络应用优化——时延与带宽
  • Spring第一个helloWorld
  • ​什么是bug?bug的源头在哪里?
  • #include<初见C语言之指针(5)>
  • (4)事件处理——(2)在页面加载的时候执行任务(Performing tasks on page load)...
  • (笔试题)合法字符串
  • (附源码)ssm教师工作量核算统计系统 毕业设计 162307
  • (附源码)计算机毕业设计SSM基于健身房管理系统
  • (附源码)计算机毕业设计SSM疫情社区管理系统
  • (每日持续更新)信息系统项目管理(第四版)(高级项目管理)考试重点整理第3章 信息系统治理(一)
  • (一)python发送HTTP 请求的两种方式(get和post )
  • (转)LINQ之路
  • .NET gRPC 和RESTful简单对比
  • .NET 编写一个可以异步等待循环中任何一个部分的 Awaiter
  • .NET 程序如何获取图片的宽高(框架自带多种方法的不同性能)
  • @Bean注解详解
  • @Data注解的作用
  • @html.ActionLink的几种参数格式
  • @TableId注解详细介绍 mybaits 实体类主键注解
  • @Transactional 竟也能解决分布式事务?
  • [20170713] 无法访问SQL Server
  • [android] 看博客学习hashCode()和equals()
  • [C#]winform制作圆形进度条好用的圆环圆形进度条控件和使用方法