什么是机器学习?有哪些应用?终于有人讲明白了

article/2025/10/14 17:02:11

作者:星环科技人工智能平台团队

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

导读:人工智能的快速发展,带动了相关技术的繁荣。近些年,国内外的科技公司对机器学习人才都有大量需求。怎样入行机器学习?本文带你从0开始学起。

01 机器学习的背景

当提及机器学习时,我们的脑海里一般会浮现出这样一幅画面:

一个拥有类似人类智能的机器人正在像人类一样尝试理解一件事情。

这样的画面让人觉得是遥不可及的科幻世界。但实际上,机器学习与人类的生产生活已经密不可分了。早在20世纪90年代,一个非常成功的机器学习案例已经使数亿人受益:今天为人所熟知的垃圾信息过滤。该案例成功后,出现了诸多效仿者,并且在现代社会已经有十分广泛的应用。

  • 商家在推荐系统与广告计算方面使用机器学习,前者会在海量的商品中恰如其分地选中你所喜欢的一款,让你欣然完成交易,而后者因其精确的广告点击率计算,为企业创造了显著的收益;

  • 在金融领域,机器学习参与了反欺诈、反洗钱风控等常人难以胜任的工作,其在时间序列预测方面也有自己的一席之地;

  • 智能问答机器人以及电话接线员已经大幅减少了企业用人成本;

  • 在制造业中,如何精益化生产、如何轻而易举地发现残次品等,皆有其用武之地。我们已深处于一个无时无刻不接触机器学习的时代。

02 机器学习的定义

如果从更精细的角度去描述机器学习,那么首先要给出机器学习历史上两个著名的定义。机器学习(machine learning)一般被定义为一个系统自我改进的过程。从字面意义上说,机器指计算机,学习是这个自我改进的过程。最初机器学习这个名字由Arthur Samuel提出,他给了机器学习一个非正式的定义。

  • Arthur Samuel的机器学习定义

机器学习是一个这样的领域:计算机在程序员并不对其进行显式编程的情况下进行自我学习的能力。

具体来讲,机器学习是一门针对算法与统计模型的学科,主要是利用计算机系统高效地执行特殊任务,该任务没有显式的指令,而是依靠模型和推断等。

机器学习算法会建立一个关于样本数据的数学模型,这些样本数据通常被称为“训练集”(training data)。这样做的目的是在执行任务时不去进行显式的预测或决策,这同时也表明了机器学习不是一个已确定好的规则和流程。

机器学习算法可以被用于邮件过滤、网络入侵检测以及计算机视觉等。机器学习与利用计算机进行预测的计算数学比较接近。

上面的定义稍有一些佶屈聱牙,但大体上是说:“机器是怎么判断的”这一点不是由人显式定义的,而是计算机自己获得的。这里有一个更加工程化的定义,即Tom M.Mitchell为机器学习领域研究的算法特征提出的一个广为引用且更加正式的定义。

  • Tom M.Mitchell的机器学习定义

机器学习这门学科所关注的问题是:计算机程序如何随着经验积累自动提高性能;如果针对某类任务T,一个计算机程序的用P衡量的性能可根据经验E来自我完善,那么我们称这个计算机程序在从经验E中学习,针对某类任务T,它的性能可用P来衡量。

《统计学习基础》一书中写道:许多领域都产生了大量的数据,统计学家的工作就是让所有这些数据变得有意义——提取重要的模式和趋势,理解“数据在说什么”。我们称之为从数据中学习

综上所述,机器学习模仿人类学习的过程,不能对机器置入显式的判断规则,而是由机器在某种任务场景(基于某种经验)和某种评判标准下不断提升自己表现的过程。

举个例子,当你使用电子邮箱时,你的垃圾邮件过滤系统可以预先从带有人为标记的垃圾邮件以及带有人为标记的正常邮件中学习到垃圾邮件到底会有怎样的特征表现。这些用以训练系统的数据集被称为训练集,其中每一个样本被称作训练样本

在这个案例中,任务T是对新来的邮件打上好或者不好的标签;经验E是上述训练集;而性能P需要被定义,例如你可以用预测的正确比例去定义模型表现的好坏,该指标被称作准确率(accuracy)且广泛应用于机器学习的分类任务中。

03 机器学习的任务类型

如上所述,机器学习要应对很多应用场景,并包含面对各种数据的经验,而机器学习系统也包含不同的类型,所以我们有必要在不同层面上对它们进行较为粗略的区分,这些“不同层面”可以是:

  • 是否在人类的监督下进行学习;

  • 是否增量学习或者在数据流上学习;

  • 是否仅仅将新数据点与老数据点进行比较,抑或建立一个预测模型,类似于科学家通常所做的(基于数据或基于模型)。

这三个层面并不会互相排斥,相反,一个机器学习任务往往是这三种区分的组合。例如,一个先进的深度学习系统在一个实时数据流上学习如何区分垃圾邮件,这显然是一个基于模型的在线监督学习系统。

根据是否在人类的监督下进行学习这个问题,机器学习任务区分如下:

  • 监督学习:监督学习算法依赖具有标签的训练数据来建立数学模型。例如,如果任务是鉴定图片是否包含某种实体,那么训练集的图片中就应该同时存在包含与不包含该实体的图片,同时,每张图片需标注是否包含该实体的标签。根据标签的数值特征(连续、离散),监督学习又可以分为分类问题回归问题

  • 半监督学习:在某些情况下,并不是所有的输入数据集都被有效标注了,即训练集中包含已标注的样本和未标注的样本。实际上未标注样本与已标注样本拥有同样的分布,在训练时若能利用这一点,则会很有帮助。

  • 无监督学习:无监督学习算法完全利用不带标签的训练数据去训练一个模型。无监督学习用于探索数据的分布,例如将点聚类等。无监督学习可用于发现数据的潜在模式,并将数据按组归类,还可用于特征学习和数据降维等。

  • 强化学习:在动态环境中以正或负强化的形式给出反馈,并用于自动驾驶车辆,或者学习与人类对手玩游戏等。

  • 主动学习:在预算访问有限等情况下,算法通过交互式的形式来询问用户和其他信息源,以更新和预测新的数据点所期望的输出。

  • 元学习:元学习是要“学会如何学习”,即利用以往的知识经验来指导新任务的学习。

相应地,根据是否在实时数据流上学习这个问题,机器学习任务区分如下:

  • 离线学习:在离线学习中,系统不能在增量的数据上进行学习,只能在更新的全部数据集上重新学习,这必然会增加更多的时间成本和计算资源。一旦模型完成学习便应立即部署到系统中运行,且不再继续学习。如果用户想对新来的数据进行学习,那么必须将新数据和旧数据组合,重新训练模型,停止旧系统并将其替换成新系统。

  • 在线学习:在线学习中,用户可以增量地训练模型,将数据一次一次地喂入模型,每一次独立的数据组被称作mini-batch,每一次新的学习都快速而轻便。

是否对比旧数据点上,机器学习任务区分如下:

  • 基于样本的学习

  • 基于模型的学习

04 构建机器学习应用的步骤

机器学习有很多任务场景,为了简要说明机器学习的大体应用方法与步骤,这里以较为常见的手写识别任务为例。

根据Tom M.Mitchell对机器学习的定义,手写识别任务的T、P、E分别为:

  • 任务T:训练出高准确率的手写识别模型;

  • 性能P:分类的准确率、召回率等;

  • 训练经验E:带标签的手写图片。

首先介绍一系列关键概念。

  • 特征:特征是事物某些突出性质的表现,即区分事物的关键,当需要对事物进行分类或者识别时,我们会根据事物的特征去区分,并依次建立一个模型。对于单个事物而言,可能有多个特征存在。而对于一组事物,某个特征项会有不同取值分布。

  • 标签:对于特征而言,标签表示这个事物是什么,例如通过某个人的言行举止、穿着打扮可以大体判定其具有某种性格或者某种社会地位。这种性格或者社会地位就是标签。机器学习的任务就是针对新输入的数据,根据其特征来确定其标签。

  • 数据切分:机器学习有训练的过程,在这个过程中应用了训练经验E,而训练经验E则来源于原始数据。一般来说,原始数据分为三个部分,即训练集、验证集和测试集,其分配比例分别为70%、20%和10%。

    训练集用以训练模型,验证集用以调优模型参数,而在经过训练集和验证集的训练之后,开发者获得了一系列模型,此时测试集用以选择模型。在数据切分时,一定要注意抽样方法的选择,务必保证三个数据集的数据分布大体一致。

  • 交叉验证与网格调参:大多数时候,应考虑数据切分产生的数据分布不均的影响。在训练模型时往往用交叉验证的方式,同时会使用网格调参去寻找最优参数。

    交叉验证指将数据分为K份,进行K次训练,每次训练抽取其中的K-1份数据作为训练集,其余一份作为验证集,训练时通常使用网格调参,于是便可以得到K个模型。在K个模型中,选择在验证集上表现最佳的一个模型即可。

    网格调参是指对于需要调整的参数,每个参数设置一组预设值。每组预设值根据不同的取值组合成繁多的取值组合。如同设置一个高维的网络,每个组合都是其中的一个交叉点,在每个组合数据上验证模型的性能,并获得最佳的组合。

  • 模型评价:简而言之就是评价模型的性能,如前所述,需要通过模型评价选择出最优秀的模型。对于分类和回归问题来说,存在不同的模型评价指标。

那么对于一个手写识别任务来说,机器学习的应用步骤如下所述:

  • 数据预处理:手写数据的图片就是其数据特征,0,…,9的数字为其标签。首先需要将图片转换为数值特征,此步骤称为数据预处理。手写识别图片为灰度图且只有一个通道,那么每张图片就可以抽选特征成为一个数组,例如将图片转换为180×180维的由[0,1]组成的一组数据,然后再让模型去学习。

  • 数据切分:将数据按照7/2/1的比例切分成训练集、验证集和测试集。此处需要注意的是,为了不让数据的分布产生差别,三个数据集中的每一个都包含所有的标签类别,需要采用分层抽样技术。

  • 选择模型(一组泛函):对于分类来说,有很多模型类型可以使用。每种模型代表一组泛函,学习的目的就是搜索泛函中性能优异的函数。针对分类问题,可用的函数族有很多,例如逻辑回归、决策树、支持向量机以及神经网络等。

  • 选择目标函数:根据所选模型的不同,应选择相应的目标函数以及优化方法。合适的目标函数与优化方法搜索出的模型参数可以使模型达到最优的性能。例如,对于逻辑回归,可用的目标函数为交叉熵;对于决策树,在分裂时目标函数为熵或者基尼系数;而对于AdaBoost模型,则选取对数损失函数。

  • 根据目标函数选择相应的优化方法:最常用的优化方法是梯度下降法、牛顿法等。需要目标函数有较好的性质才能找到其最优解。

  • 根据评价函数计算性能,并优化模型参数:通过选取合适的模型-目标函数-优化方法,模型在这个流程中学习到了参数。此时,模型已经可以执行预测工作。

  • 了解模型性能:对于分类问题有很多模型评价指标,例如查准率、查全率、F1值、AUC值、PR曲线等。若计算得出的模型性能并非十分优秀,那么就要重新进行参数搜索。

  • 最终获得模型

这里提供了一张Checklist(检查表)。

  • 宏观审视问题,问题的转化(有监督、无监督或者分类回归);

  • 获取数据;

  • 探索数据;

  • 发现数据的潜在规律模式,为开始训练模型做好准备;

  • 训练尽可能多的模型并列举出性能最好的几个;

  • 调优模型并将模型融合;

  • 预测并展示结果;

  • 部署、监测并维护系统。

关于作者:星环科技人工智能平台团队由五十多位优秀的研发工程师和算法工程师组成,逾八成具有国内外名校硕士及以上学历。其中研发子团队的工作重心为一站式人工智能建模平台Sophon;算法子团队则负责基础算法的研发及改进,并在数据挖掘、传统机器学习、计算机视觉、自然语言处理、知识图谱等领域进行前瞻性研究以及项目实施落地。

本文摘编自《机器学习实战:基于Sophon平台的机器学习理论与实践》,经出版方授权发布。

延伸阅读

《机器学习实战》

点击上图了解及购买

推荐语:星环科技人工智能平台团队实战总结,机器学习的实战书籍,既能了解人工智能相关的算法原理,也能结合可落地的具体应用场景进行实战。


http://chatgpt.dhexx.cn/article/YvtIa3bR.shtml

相关文章

各种机器学习的应用场景分别是什么?

[转] https://www.leiphone.com/news/201712/RqsxWpjPOPFy6Qm4.html 关于这个问题我今天正好看到了这个文章,讲的正是各个算法的优劣分析,很中肯。 正好14年的时候有人做过一个实验[1],比较在不同数据集上(121个)&…

【机器学习】机器学习在社会科学中的应用

机器学习在社会科学中的应用 在科学研究中,从方法论上来讲,都应先见森林,再见树木。当前,人工智能科技迅猛发展,万木争荣,更应系统梳理脉络。为此,我们特别精选国内外优秀的综述论文&#xff0c…

机器学习应用

监督学习和非监督学习 监督学习: 有标签的,回归和分类,场景:用户流失预测 非监督学习:无标签,聚类和降维,场景:用户细分 数据不平衡 类别不平衡。数据在某些维度上多,…

【机器学习】为什么机器学习难于应用

摘要: 本文主要讲述了如何管理机器学习应用方面的棘手问题 应用机器学习是有挑战性的。 在机器学习领域,你必须要在没有正确答案的问题上做出很多决定!例如: 用什么框架? 用什么数据作为输入,要输出什么数…

机器学习在社会科学中的应用

本文把目前机器学习技术在社会科学研究中的应用分成三类:第一,数据生成(Data Generating Process):机器学习可以帮助学者获得以前很难或无法获得的数据;第二,预测(Prediction&#x…

【Machine Learning】20.应用机器学习的一些建议

20.应用机器学习的一些建议 1.导入包2. 评估学习算法(以线性回归为例)2.1 分离数据集可视化数据集 2.2 误差计算2.3 比较模型在训练集和测试集上的表现 3.Bias and Variance3.1 可视化数据集3.2 找到optimal degree最佳次数3.3 Tuning Regularization调整…

机器学习之应用举例

#Photo OCR Photo Optical Character Recognition(照片光学字符识别),注重的问题是如何让计算机读出图片中的文字信息。 1、给定某种图片,它将图像扫描一遍,然后找出照片中的文字信息; 2、重点关注这些文…

机器学习的应用–大数据

说完机器学习的方法,下面要谈一谈机器学习的应用了。无疑,在2010年以前,机器学习的应用在某些特定领域发挥了巨大的作用,如车牌识别,网络攻击防范,手写字符识别等等。但是,从2010年以后&#xf…

什么是机器学习?有哪些算法和分类?又有哪些应用?看完你就懂了

导读:本文从大数据的概念讲起,主要介绍机器学习的基础概念,以及机器学习的发展过程,用一个形象的例子讲解大数据生态中的机器学习,并按照传统机器学习(包括分类、聚类、回归、关联规则、协同过滤、数据降维…

1.2 机器学习的应用

机器学习无处不在。 问:为什么机器学习已经成为人工智能的一个子领域? 答:通过编程能够让机器做一些事情,比如:如何找到从A到B的最短距离,现实生活对应着GPS导航。但是,有时候编程也存在难点&…

什么是机器学习?应用场景以及未来趋势

机器学习 (ML) 被定义为人工智能 (AI) 的一门学科,它使机器能够自动从数据和过去的经验中学习,以识别模式并在最少的人工干预下做出预测。本文介绍了机器学习的基础知识、其类型以及最重要的五个应用程序。它还分享了 2022 年机器学习的十大趋势。 目录…

学机器学习有什么用?机器学习可以应用哪些领域?

机器学习的目前在各个领域都非常实用,可以带来很多好处,包括以下几点: 学机器学习有什么用? 自动化:机器学习可以帮助自动处理大量数据和任务,减少人工处理的工作量。 预测性能:机器学习模型可…

机器学习有哪些应用场景?机器学习有什么用?

机器学习是一种广泛应用于各个领域的技术,以下列举几个机器学习的应用场景: 机器学习有哪些应用场景?机器学习有什么用? 金融领域:机器学习可以应用于信用评估、风险管理、欺诈检测等方面,帮助银行和保险公…

机器学习实战 | Python机器学习算法应用实践

作者:韩信子ShowMeAI 教程地址:https://www.showmeai.tech/tutorials/41 本文地址:https://www.showmeai.tech/article-detail/201 声明:版权所有,转载请联系平台与作者并注明出处 收藏ShowMeAI查看更多精彩内容 引言 …

机器学习的应用方面,主要有哪些?

1、图像处理\识别(人脸识别、图片分类) 2、自然语言处理 3、网络安全(垃圾邮件检测、恶意程序\流量检测) 4、自动驾驶 5、机器人 6、医疗拟合预测 7、神经网络 8、金融高频交易 9、互联网数据挖掘/关联推荐 人工智能、大…

机器学习在各个领域的实际应用

机器学习在各个领域的实际应用 经常会被问到,现在机器学习、人工智能这么火,那么它到底有什么实际应用呢,在本文中,分享了一个来自Github的项目,这个项目整理了包括机器学习等数据科学技术在工业界的开源项目&#xff…

机器学习的应用——关于正确应用机器学习

引言 前阵子看到一篇文章,学习了一段时间的机器学习算法后,再回头看机器学习问题,发现要想利用机器学习去很好的求解一个问题,其实并不是一件容易办到的事情,尤其是能够对整个模型的解释方面,要想能够对模型…

机器学习在生活中的九大有趣应用

No1:虚拟个人助理 Siri、小冰、度秘是现在虚拟个人助理的典型例子。顾名思义,当你通过语音询问时,他们便会找寻相应的信息,比如你问“我今天的日程安排是什么?”“从德国到伦敦的航班是什么?”等类似的问题…

机器学习可以应用在哪些场景?机器学习有什么用?

我们在说机器学习分类的时候,简单介绍了一下不同机器学习方法,主要是解决是什么问题,在本节中具体介绍一些常用的应用场景,主要说明这些应用到底怎么用,不对其中的算法以及原理做深入的介绍。 机器学习的应用 1. 分类…

安装Linux操作系统(Centos)

安装Linux操作系统(Centos) 文章目录 安装Linux操作系统(Centos)一、创建虚拟机1.1.新建虚拟机1.2.选择虚拟机硬件兼容性1.3.选择虚拟空白磁盘1.3.选择Linux对应的Centos版本1.4.虚拟机命名和存放位置1.5.设置处理器配置1.6.设置机器内存1.7.网络类型选择1.8.I/O控制器类型1.9.…