数据科学、机器学习和AI的区别

简介: 本文详细讲解了数据科学、机器学习和AI的相同点与区别,并用实例进行说明。

当我进行以数据科学家进行自我介绍时,经常会被问道:“数据科学和机器学习有什么区别?”或者“这是不是意味着你在研究人工智能?”所以我将通过本文进行回答。

这些领域确实有很多重叠的地方,但它们并不是一个领域:即使很难用语言表达,这些领域的大多数专家也都能直观的理解特定的工作是如何被分类为数据科学、机器学习或人工智能的。

所以在这篇文章中,我提出了关于这三个领域差异的简化定义:

·数据科学产生洞察力。

·机器学习做出预测。

·人工智能生成行为。

显然,这不是一个充分条件:不是所有符合该定义的东西都是该领域的一部分。(算命先生做出预言,但我们不会说他们在做机器学习!)这也不是一个确定某人角色或者职位头衔的好方法(我是数据科学家吗?)。

但是我认为这个定义对区分这三种工作是非常有效方法,并且可以避免你谈论它的时候听起来很傻。

数据科学生成洞察力

数据科学与其他两个领域非常不同,因为它的目标同时也是人类的一个目标:获得洞察力和理解能力。Jeff Leek对数据科学能够达到的洞察类型有一个很好的定义,包括描述性(“平均客户端更新的几率为70%”)探索性(不同的销售人员有不同的更新率)和因果关系。

同样,并不是所有产生洞察力的都有资格成为数据科学,数据科学的经典定义是它涉及了统计学,软件工程和领域专业知识的组合。但是我们可以利用这个定义来区分它和ML、AI。它们最主要的区别在于,在数据科学循环过程中总需要人参与:由人理解洞察结果,了解大体轮廓,或者从结论中获益。所以像“下棋算法使用数据科学来选择下一步”或者“谷歌地图使用数据科学来推荐驾驶方向”这些说法都是毫无意义的。

因此,数据科学的定义强调:

·统计推断

·数据可视化

·实验设计

·领域知识

·通讯

数据科学家可以使用一些非常简单的工具:他们可以获得百分比,并根据SQL查询结果绘制线形图。也可以使用非常复杂的方法:他们能够与分散的数据仓库合作,分析数以万亿计的记录,从而开发最前沿的统计技术,建立交互式可视化。但是不管他们使用什么,目的都是为了更好地理解他们的数据。

机器学习做出预测

我认为机器学习属于预测领域:“给出具有特定特征的实例X,推测Y”。这些预测可能是关于未来的(预测这个病人是否会进入败血症),也可能是关于预测对计算机来说不那么明显的特性(预测这个图像是否会有鸟)。几乎所有的Kaggle竞赛都可以被认为是机器学习相关的问题:他们提供一些训练数据,然后看看竞赛者能否对新的例子做出准确的预测。

数据科学和机器学习有很多的重叠之处。例如,都可以用逻辑回归来获取对有关关系的见解(越富裕的人越有可能购买我们的产品,所以我们应该改变我们的营销策略)并且可以做出预测(该用户有53%的几率购买我们的产品,所以我们应该多向他们推销)。

像随机森林(random forests)这样的模型,其可解释性稍差,所以更适合“机器学习”的描述,而深度学习等方法则是难以解释的。如果你的目标是获取真知灼见,而不是做出预测,那么这可能会妨碍你。因此,我们可以想象一个数据科学和机器学习的“光谱”,有更多的可解释模型倾向于数据科学方面,而更多的是机器学习方面的“黑匣子”模型。

 

大多数的从业者能够非常自在的在两个领域之间来回切换。我在工作中就同时使用了机器学习和数据学习:我可以在Stack Overflow流量数据上安装一个模型,以确定哪些用户可能正在寻找工作(机器学习),然后构建总结和可视化来检验模型的工作原理(数据科学)。这是发现模型缺陷的一个重要方法,也是解决算法偏差的重要方法。这是数据科学家常常负责开发产品的机器学习组件的原因之一。

人工智能生成行为

人工智能是迄今为止这三种标识中最古老也是最广为人知的,因此定义它最具有挑战性。这个术语已经被炒作泛滥,这要归功于研究人员,记者以及寻求金钱或者关注的创业公司。

·当你筹备资金时,这是人工智能

·当你招聘时,就是ML

·当你正在执行时,这就是线性回归

·当你调试时,就是printf()

让我沮丧的是这引起了强烈的反弹,因为这意味着一些应该被称为人工智能的工作却没有得到相应的描述。一些研究人员甚至还抱怨人工智能的影响:“人工智能是我们目前还做不到的”。那么我们可以用AI来描述什么工作呢?

“人工智能”定义中的一个共同点是自主代理人执行或推荐操作,一些我认为应该描述为AI的系统包括:

·游戏规则(深蓝,AlphaGo)

·机器人与控制理论(运动规划,行走两足机器人)

·优化(谷歌地图选择路线)

·自然语言处理(bots2)

·强化学习

同样,我们可以看到它与其他领域有很多重叠之处。而深度学习横跨了ML和AI两个领域,这非常有趣。典型的用例是对数据进行训练,然后生成预测,但在AlphaGo这样的博弈算法中却取得了巨大的成功。(这与早期的游戏系统不同,比如深蓝,它更专注于探索和优化未来的解决方案空间)。

但也有区别。如果我分析一些销售数据并发现某个特定行业的客户比其他行业的客户更新的更多,那么输出的是一些数字和图形,而不是指定操作。

请不要将那些训练算法的人描述为“利用了人工智能的力量”。

- Dave Gershgorn (@davegershgorn) 2017年9月18日。

人工智能和机器学习之间的区别更加微妙,历史上的ML经常被认为是人工智能的一个分支(特别是计算机视觉,其实它是一个典型的人工智能问题)。但我认为,ML领域很大程度上是由人工智能“中断”的,部分原因是上面描述的反弹:大多数从事预测问题的人不喜欢把自己描述为人工智能研究员。(它能通过统计数据帮助许多ML实现重大突破,而这些数据在人工智能的其他领域却没有那么大的影响力)。这意味着如果你可以用“Y预测X”来描述一个问题,那么我建议你避免使用AI这个词。

案例研究:如何一起使用这三者?

    假设我们正在制造一辆自动驾驶汽车,并且正在研究如何在停车标记处自动停车的具体问题。那么我们将需要使用这三个领域的技能。

机器学习:汽车必须能够通过摄像头识别停车标志。我们构建了数据集,其中包含数以百万计的街边对象的照片,并训练一种算法来预测哪些有停止标志。

人工智能:一旦我们的汽车能够识别停车标志了,就需要决定什么时候执行刹车动作。太早太晚都非常危险,而且我们需要它能应对不同的路况(例如,它要能意识到在湿滑路面上刹车不会快速减速),这是一个控制理论的问题。

数据科学:在街头测试中,我们发现车辆性能不够好,因为总会略过一些停车标志。通过对街头测试数据的分析,我们得出了结论:在日出之前和日落之后,更容易错过停车标志。这让我们意识到,我们大部分的训练数据只包含白天的影像,所以我们构造了一个包括了夜间图像的更好的数据集,然后重新回到机器学习步骤进行研究测试。

我们常说的“机器人”指的是解释自然语言,然后以实物回应的系统。这可以从文本挖掘中区分出来,其目标是提取见解(数据科学)或文本分类,其目标是对文档进行分类(机器学习)。

 

本文由北邮@爱可可-爱生活 老师推荐,阿里云云栖社区组织翻译。

文章原标题《What's the difference between data science, machine learning, and artificial intelligence? | Variance Explained》

作者:David Robinson

译者:奥特曼,审校:袁虎。

文章为简译,更为详细的内容,请查看原文

相关文章
AI训练师入行指南(三):机器学习算法和模型架构选择
从淘金到雕琢,将原始数据炼成智能珠宝!本文带您走进数字珠宝工坊,用算法工具打磨数据金砂。从基础的经典算法到精密的深度学习模型,结合电商、医疗、金融等场景实战,手把手教您选择合适工具,打造价值连城的智能应用。掌握AutoML改装套件与模型蒸馏术,让复杂问题迎刃而解。握紧算法刻刀,为数字世界雕刻文明!
40 6
2024云栖大会回顾|PAI ArtLab x 通往AGI之路系列活动,PAI ArtLab助力行业AI创新
2024云栖大会回顾|PAI ArtLab x 通往AGI之路系列活动,PAI ArtLab助力行业AI创新
Python 高级编程与实战:深入理解数据科学与机器学习
本文深入探讨了Python在数据科学与机器学习中的应用,介绍了pandas、numpy、matplotlib等数据科学工具,以及scikit-learn、tensorflow、keras等机器学习库。通过实战项目,如数据可视化和鸢尾花数据集分类,帮助读者掌握这些技术。最后提供了进一步学习资源,助力提升Python编程技能。
AI训练师入行指南(四):模型训练
本文以“从璞玉到珍宝”为喻,深入探讨AI模型训练的全过程。数据集是灵魂原石,领域适配性、质量和规模决定模型高度;优化器如刻刀手法,学习率调整和正则化确保精细雕刻;超参数优化与多模态注意力机制提升性能。通过案例解析(如DeepSeek-Chat、通义千问),展示特定数据如何塑造专属能力。最后提供避坑工具箱,涵盖过拟合解决与资源不足应对策略,强调用`torch.save()`记录训练历程,助力打造智能传世之作。
23 0
Python 高级编程与实战:深入理解数据科学与机器学习
在前几篇文章中,我们探讨了 Python 的基础语法、面向对象编程、函数式编程、元编程、性能优化和调试技巧。本文将深入探讨 Python 在数据科学和机器学习中的应用,并通过实战项目帮助你掌握这些技术。
容器化机器学习流水线:构建可复用的AI工作流
本文介绍了如何构建容器化的机器学习流水线,以提高AI模型开发和部署的效率与可重复性。首先,我们探讨了机器学习流水线的概念及其优势,包括自动化任务、确保一致性、简化协作和实现CI/CD。接着,详细说明了使用Kubeflow Pipelines在Kubernetes上构建流水线的步骤,涵盖安装、定义流水线、构建组件镜像及上传运行。容器化流水线不仅提升了环境一致性和可移植性,还通过资源隔离和扩展性支持更大规模的数据处理。
Java+机器学习基础:打造AI学习基础
随着人工智能(AI)技术的飞速发展,越来越多的开发者开始探索如何将AI技术应用到实际业务场景中。Java作为一种强大的编程语言,不仅在企业级应用开发中占据重要地位,在AI领域也展现出了巨大的潜力。本文将通过模拟一个AI应用,从背景历史、业务场景、优缺点、底层原理等方面,介绍如何使用Java结合机器学习技术来打造一个AI学习的基础Demo。
121 18
基于 PAI-ArtLab 使用 ComfyUI 搭建对话式 AI 女友
本实验介绍了一款名为“AI虚拟女友——胡桃”的应用,通过ComfyUI后端与WebUI展示效果,结合LLM节点和知识图谱工具包(KG),实现角色人设稳定及长期记忆功能。用户可通过输入信息与AI互动,并自定义人设知识图谱和角色LoRA。操作步骤包括登录PAI ArtLab平台、加载工作流文件、配置角色参数并与AI对话。此外,还提供了Graph RAG技术详解及常见问题解答,帮助用户更好地理解和使用该系统。
AI时代下的PolarDB:In-DB一体化模型训练与推理服务
本次分享主题为“AI时代下的PolarDB:In-DB一体化模型训练与推理服务”,由阿里云资深专家贾新华和合思信息刘桐炯主讲。内容涵盖PolarDB的关键能力、AI硬件与软件结构支持、典型应用场景(MLops、ChatBI、智能搜索),以及合思实践案例——AI对话机器人提升客户响应效率。通过简化流程、SQL统一管理及内置算法,PolarDB显著降低了AI应用门槛,并在多个行业实现最佳实践。
164 3
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构。本文介绍了K-means算法的基本原理,包括初始化、数据点分配与簇中心更新等步骤,以及如何在Python中实现该算法,最后讨论了其优缺点及应用场景。
261 6

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等