当前位置:首页 > 消费电子 > 消费电子
[导读]机器学习算法不会要求一个问题被 100%求解,取而代之的是把问题转化为最优化的问题,用不同的算法优化问题,从而比较得到尽量好的结果。

没有哪一种算法能够适用所有情况,只有针对某一种问题更有用的算法。

机器学习算法不会要求一个问题被 100%求解,取而代之的是把问题转化为最优化的问题,用不同的算法优化问题,从而比较得到尽量好的结果。因此对于数据科学家来说,理解算法显得格外重要,理解不同算法的思想可以帮助数据科学家更从容地面对不同的应用场景。

本文列出了常用的机器学习算法的基本概念、主要特点和适用场景,希望可以在大家选择合适的机器学习算法解决实际问题时起到一点参考作用。

本文主要提及的机器学习算法包括:

K近邻(KNN)算法

朴素贝叶斯算法

决策树算法

SVM算法

adaboost算法

EM算法(期望最大化算法)

下面我们将具体展开介绍。

1.K近邻(KNN)算法

KNN算法的基本介绍:假若一个特征空间中大多数的样本属于某一个类别,则在这个特征空间中,k个最相似的样本也属于这个类别。

该算法由两个步骤组成:(1)对于一个给定的搜索训练集按一定距离度量,来找到一个 的值。(2)在这个KNN当中,根据大多数分为一致的类来进行分类。

用以下这幅图可以很好的解释KNN算法:

不同形状的点,为不同标签的点。其中绿色点为未知标签的数据点。现在要对绿色点进行预测。由图不难得出:

如果k=3,那么离绿色点最近的有2个红色三角形和1个蓝色的正方形,这3个点投票,于是绿色的这个待分类点属于红色的三角形。

如果k=5,那么离绿色点最近的有2个红色三角形和3个蓝色的正方形,这5个点投票,于是绿色的这个待分类点属于蓝色的正方形。

K近邻(KNN)算法优点:

·算法原理简单,容易理解,也较容易实现。

·不需要进行训练,只需要保存训练样本和标签。

·不易受小错误概率的影响。经理论证明,最近邻的渐进错误率最坏时不超过两倍的贝叶斯错误率,最好时接近或达到贝叶斯错误率。

K近邻(KNN)算法缺点:

·K的选择不固定。

·预测结果容易受到噪声数据的影响。

·当样本不平衡时,新样本的类别偏向训练样本中数量占优的类别,容易导致预测错误。

·当数据量较大时,具有较高的计算复杂度和内存消耗,因为对每一个待分类的文本,都要计算它到全体已知样本的距离,才能求得它的K个最近邻。

适用场景及主要应用领域:

由于KNN方法主要靠周围有限的邻近的样本,而不是靠判别类域的方法来确定所属类别的,因此对于类域的交叉或重叠较多的待分样本集来说,KNN方法较其他方法更为适合。在实际应用当中,KNN算法在人脸识别、文字识别、医学图像处理等领域可以取得良好的分类效果。

K近邻(KNN)算法需要注意的问题:

·数据特征之间量纲不统一时,需要对数据进行归一化处理,否则会出现大数吃小数的问题;

·数据之间的距离计算通常采用欧式距离;

·kNN算法中K值的选取会对结果产生较大的影响,一般k值要小于训练样本数据的平方根;

·通常采用交叉验证法来选择最优的K值。

2.朴素贝叶斯算法


朴素贝叶斯分类是一种十分简单的分类算法,即对于给出的待分类项,求解在此项出现的条件下各个类别出现的概率,哪个最大,就认为此待分类项属于哪个类别。

以判定外国友人为例做一个形象的比喻。

若我们走在街上看到一个黑皮肤的外国友人,让你来猜这位外国友人来自哪里。十有八九你会猜是从非洲来的,因为黑皮肤人种中非洲人的占比最多,虽然黑皮肤的外国人也有可能是美洲人或者是亚洲人。但是在没有其它可用信息帮助我们判断的情况下,我们会选择可能出现的概率最高的类别,这就是朴素贝叶斯的基本思想。

下图为朴素贝叶斯算法的流程:

朴素贝叶斯算法注意点:

·当特征属性值的值类型不是离散值而是连续值的时候,需要通过高斯分布做概率的计算;

·为了避免统计概率中出现概率为0的情况,可以引入Laplace校准,它的思想非常简单,就是对没类别下所有划分的计数加1。

适用场景及主要应用领域:

1. 朴素贝叶斯算法对待预测样本进行预测,过程简单速度快;

2. 对于多分类问题也同样很有效,复杂度也不会有大程度上升;

3.在分布独立这个假设成立的情况下,贝叶斯分类器效果奇好,会略胜于逻辑回归,同时需要的样本量也更少一点。

4.对于类别类的输入特征变量,效果非常好。对于数值型变量特征,我们是默认它符合正态分布的。

主要应用领域

·文本分类/垃圾文本过滤/情感判别:多分类较为简单,同时在文本数据中,分布独立这个假设基本是成立的。垃圾文本过滤(比如垃圾邮件识别)和情感分析(微博上的褒贬情绪)用朴素贝叶斯也通常能取得很好的效果。

·多分类实时预测:对于文本相关的多分类实时预测,朴素贝叶斯算法被广泛应用,简单又高效。

·推荐系统:朴素贝叶斯和协同过滤(Collaborative Filtering)是一对好搭档,协同过滤是强相关性,但是泛化能力略弱,朴素贝叶斯和协同过滤一起,能增强推荐的覆盖度和效果。深度学习(Deep Learning)是人工神经网络研究的前沿领域。深度学习方法是具有多级特征表示的表示学习方法,通过组合简单的非线性模块,从原始输入开始逐层学习出更高级、更抽象的特征表示。深度学习的典型应用包括计算机视觉领域的卷积神经网络(Convolutional Neural Network, CNN),自然语言处理领域的循环神经网络(Recurrent Neural Network, RNN),进行无监督特征学习的自编码器(Auto-Encoder)等。 我们在深度学习领域的研究工作分为理论研究和应用研究两个方面:理论研究的内容是设计新的深度学习模型和对现有的模型进行分析改进;应用研究的内容是将深度学习方法应用于计算机视觉、机器人设计、数据挖掘等实际任务中,以及参与ImageNet等竞赛活动。深度学习的实质是深度神经网络,一般的神经网络有 3~4 层,而深度神经网络包含上百层,深度学习的提出和发展归功于大数据的出现和计算性能的提高。

深度学习和传统机器学习的共同点是对数据进行分析,不同之处在于:

传统机器学习需要人工对数据进行特征提取,然后应用相关算法对数据进行分类,利用已有数据特征和数据标签(或者没有数据标签)对数学模型进行训练以达到最优,继而对新数据进行分类和预测。

深度学习不需要人工对训练数据进行特征提取,直接利用深度神经网络对数据特征进行自学习、分类,因此人类也不知道机器是如何进行学习的。

图2是传统机器学习和深度学习过程的区别。

机器学习算法的基本概念

机器学习算法可以看作是一种从输入到输出的映射函数,它可以根据给定的数据集(训练集)来调整自身的参数,使得输出能够尽可能地符合预期的结果(标签或目标函数)。机器学习算法的核心问题是如何找到最优的参数,以及如何评估参数的好坏。

为了解决这些问题,机器学习算法通常需要以下几个要素:

模型:模型是机器学习算法的数学表达式,它定义了输入和输出之间的关系,以及参数的含义和范围。模型可以是线性的、非线性的、概率的、确定性的等等,不同的模型有不同的复杂度和适用性。

目标函数:目标函数是机器学习算法的优化目标,它衡量了模型输出和预期结果之间的差距,也称为损失函数或代价函数。目标函数可以是平方误差、交叉熵、对数似然等等,不同的目标函数有不同的性质和优缺点。

优化算法:优化算法是机器学习算法的求解方法,它通过迭代更新参数来最小化或最大化目标函数,也称为学习算法或训练算法。优化算法可以是梯度下降、牛顿法、随机梯度下降等等,不同的优化算法有不同的收敛速度和稳定性。

超参数:超参数是机器学习算法中需要人为设定的参数,它们影响了模型的结构、复杂度和泛化能力,也称为调节参数或元参数。超参数可以是学习率、正则化系数、隐藏层个数等等,不同的超参数有不同的敏感度和范围。

机器学习算法的分类

机器学习算法可以根据不同的标准进行分类,其中最常见的是根据学习方式和任务类型进行分类。

根据学习方式分类

根据学习方式,机器学习算法可以分为以下三类:

监督学习:监督学习是指给定输入和输出之间存在明确的对应关系,也就是说,每个输入都有一个正确的或期望的输出。监督学习的目标是让模型能够从训练集中学习到这种对应关系,并能够泛化到未知的输入上。监督学习的典型应用有分类、回归、序列标注等。

无监督学习:无监督学习是指给定输入之间不存在明确的对应关系,也就是说,没有预先定义好的输出或标签。无监督学习的目标是让模型能够从训练集中发现输入数据的内在结构或规律,并能够对未知的输入进行合理的处理。无监督学习的典型应用有聚类、降维、生成等。

强化学习:强化学习是指给定输入和输出之间存在动态的交互关系,也就是说,每个输入都会产生一个反馈或奖励。强化学习的目标是让模型能够从训练集中学习到如何根据当前的状态选择最优的行为,并能够最大化累积的奖励。强化学习的典型应用有控制、游戏、导航等。

根据任务类型分类

根据任务类型,机器学习算法可以分为以下四类:

分类:分类是指将输入数据分配到预先定义好的类别中,也就是说,输出是离散的或有限的。分类可以是二分类(只有两个类别)或多分类(有多个类别)。分类的典型应用有垃圾邮件检测、人脸识别、情感分析等。

回归:回归是指预测输入数据的连续值或实数值,也就是说,输出是连续的或无限的。回归可以是线性回归(输出和输入之间存在线性关系)或非线性回归(输出和输入之间存在非线性关系)。回归的典型应用有房价预测、股票预测、年龄估计等。

聚类:聚类是指将输入数据分组到没有预先定义好的类别中,也就是说,输出是未知的或无标签的。聚类可以是硬聚类(每个数据只属于一个类别)或软聚类(每个数据可以属于多个类别)。聚类的典型应用有客户分群、图像分割、社交网络分析等。

生成:生成是指根据输入数据产生新的数据,也就是说,输出是新颖的或创造性的。生成可以是条件生成(根据给定的条件生成数据)或无条件生成(不需要任何条件生成数据)。生成的典型应用有图像生成、文本生成、语音合成等。

声明:该篇文章为本站原创,未经授权不予转载,侵权必究。
换一批
延伸阅读

业界应如何看待边缘人工智能?ST授权合作伙伴 MathWorks 公司的合作伙伴团队与ST 共同讨论了对边缘机器学习的看法,并与 STM32 社区分享了他们的设计经验。

关键字: AI 机器学习 处理器

双方的合作促成了尖端人工智能视觉解决方案,提高了效率、连通性和成本效益

关键字: 人工智能 智能家居 机器学习

【2024年4月24日,德国慕尼黑讯】英飞凌科技股份公司(FSE代码:IFX / OTCQX代码:IFNNY)发布全新PSOC™ Edge微控制器(MCU)系列的详细信息,该系列产品的设计针对机器学习(ML)应用进行了优...

关键字: 物联网 机器学习 MCU

TDK株式会社(东京证券交易所代码:6762)新近推出InvenSense SmartEdgeMLTM解决方案,这是一种先进的边缘机器学习解决方案,为用户提供了在可穿戴设备、可听戴设备、增强现实眼镜、物联网 (IoT)...

关键字: 机器学习 物联网 传感器

北京——2024年4月19日 亚马逊云科技宣布,Meta刚刚发布的两款Llama 3基础模型Llama 3 8B和Llama 3 70B现已在Amazon SageMaker JumpStart中提供。这两款模型是一系列...

关键字: 机器学习 基础模型

2024年4月18日 – 提供超丰富半导体和电子元器件™的业界知名新品引入 (NPI) 代理商贸泽电子 (Mouser Electronics) 很荣幸地宣布与Edge Impulse建立新的全球合作关系。Edge Im...

关键字: 机器学习 MCU CPU

北京——2024年4月18日 西门子中国和亚马逊云科技双方高层在西门子中国北京总部会晤,双方宣布签署战略合作协议,共同成立“联合创新团队”。基于亚马逊云科技在生成式AI领域的领先技术和服务,并结合西门子在工业领域的深厚积...

关键字: 生成式AI 机器学习 大数据

机器学习作为人工智能领域的重要组成部分,其过程涉及到多个核心环节。本文将详细阐述机器学习的四个主要步骤:数据准备、模型选择、模型训练与评估,以及模型部署与应用,以揭示机器学习从数据到应用的完整流程。

关键字: 数据 人工智能 机器学习

随着信息技术的迅猛发展和大数据时代的到来,机器学习成为了人工智能领域中的核心技术之一。机器学习是通过模拟人类学习行为,使计算机系统能够从数据中自动发现规律、提取特征并进行预测和决策的过程。它在诸多领域取得了广泛的应用,包...

关键字: 计算机 人工智能 机器学习

机器学习算法是人工智能领域中的核心技术之一,它通过对大量数据进行学习,自动发现数据中的规律和模式,从而实现对新数据的预测、分类、聚类等任务。本文将深入探讨机器学习算法的基本过程,包括数据准备、模型选择、训练与评估等关键步...

关键字: 数据 人工智能 机器学习
关闭