每个数据科学家都应该知道的10种机器学习方法

作者 | CDA数据分析师张君劢
原文 |
机器学习是研究和工业中的热门话题,新方法一直在发展。该领域的速度和复杂性使得即使
对于专家而言也难以跟上新技术 - 并且对于初学者而言可能是压倒性的难度。
为了揭开机器学习的神秘面纱并为刚接触核心概念的人提供学习途径,让我们看看十种不同的方法,包括简单描述,可视化和每个方法的示例。
机器学习算法(也称为模型)是表示问题上下文中的数据的数学表达式,通常是业务问题。目标是从数据到洞察。例如,如果在线零售商想要预测下一季度的销售额,他们可能会使用机器学习算法,根据过去的销售额和其他相关数据预测这些销售额。类似地,风车制造商可以通过视觉监控重要设备并通过训练识别危险裂缝的算法来提供视频数据。
所描述的十种方法提供了一个概述 - 以及您在磨练机器学习知识和技能时可以建立的基础:
回归方法属于有监督的ML类别。它们有助于基于一组先前数据预测或解释特定数值,例如基于类似属性的先前定价数据来预测房产的价格。
LED光柱
最简单的方法是线性回归,其中我们使用直线的数学方程(y = m * x + b)来模拟数据集。我们通过计算线的位置和斜率来训练具有许多数据对(x,y)的线性回归模型,该直线最小化所有数据点和线之间的总距离。换句话说,我们计算最接近数据中观测值的线的斜率(m)和y截距(b)。
让我们考虑更多线性回归的具体例子。我曾经使用线性回归来预测某些建筑物的能耗(以千瓦时为单位),将建筑物的年龄,楼层数,平方英尺和堵墙设备的数量汇总在一起。由
于有多个输入(年龄,平方英尺等),我使用了多变量线性回归。原理与简单的一对一线性回归相同,但在这种情况下,我创建的“线”基于变量的数量发生在多维空间中。
下图显示了线性回归模型与建筑物实际能耗的匹配程度。现在想象一下,您可以访问建筑物的特征(年龄,平方英尺等),但您不知道能耗。在这种情况下,我们可以使用拟合线来估算特定建筑物的能耗。
请注意,您还可以使用线性回归来估计每个因素的权重,这有助于最终预测消耗的能量。例如,一旦有了公式,就可以确定年龄,大小或身高是否最重要。
▲建筑能耗(kWh)的线性回归模型估计
回归技术的范围从简单(如线性回归)到复杂(如正则化线性回归,多项式回归,决策树和随机森林回归,神经网络等)。但不要陷入困境:首先研究简单的线性回归,掌握基础,然后继续前进。
2 分类
另一类有监督的ML,分类方法预测或解释类值。例如,他们可以帮助预测在线客户是否会购买产品。输出可以是是或否:买方或非买方。但分类方法不限于两类。例如,分类方法可以帮助评估给定图像是否包含汽车或卡车。在这种情况下,输出将是3个不同的值:1)图像包含汽车,2)图像包含卡车,或3)图像既不包含汽车也不包含卡车。
最简单的分类算法是逻辑回归 - 这使得它听起来像一个回归方法,但事实并非如此。逻辑回归基于一个或多个输入估计事件发生的概率。
例如,逻辑回归可以将学生的两个考试分数作为输入,以便估计学生将被录取到特定大学的概率。因为估计是概率,所以输出是介于0和1之间的数字,其中1表示完全确定性。对
紫外光固化树脂于学生,如果估计的概率大于0.5,那么我们预测他或她将被录取。如果估计的概率小于0.5,我们预测他或她将被拒绝。
下图显示了之前学生的分数以及他们是否被录取。Logistic回归允许我们绘制一条代表决策边界的线。
▲Logistic回归决策边界:是否入读大学?
因为逻辑回归是最简单的分类模型,所以它是开始分类的好地方。随着您的进步,您可以深入研究非线性分类器,例如决策树,随机森林,支持向量机和神经网络等。
应力3 聚类
使用聚类方法,我们进入无监督ML的类别,因为它们的目标是对具有相似特征的观察进行分组或聚类。聚类方法不使用输出信息进行训练,而是让算法定义输出。在聚类方法中,我们只能使用可视化来检查解决方案的质量。
最流行的聚类方法是K-Means,其中“K”表示用户选择创建的聚类数。(注意,有多种技术可以选择K的值,例如弯头法。)
粗略地说,K-Means对数据点的作用如下:
1. 随机选择数据中的K个中心。
2. 将每个数据点分配给最接近的随机创建的中心。
3. 重新计算每个集的中心。
4. 如果中心没有改变(或改变很少),则该过程结束。否则,我们返回到步骤2.(如果中心继续更改,为了防止无限循环结束,请提前设置最大迭代次数。)
下一个图将K-Means应用于建筑物的数据集。图中的每一列都表明了每栋建筑的效率。这四项测量涉及空调,插入式设备(微波炉,冰箱等),家用燃气和加热气体。我们选择K = 2进行聚类,这样可以很容易地将其中一个聚类解释为高效建筑,将另一个聚类解释为低效建筑。在左侧,您可以看到建筑物的位置,在右侧,您可以看到我们用作输入的四个尺寸中的两个:插入式设备和加热气体。
▲将建筑物聚类为高效(绿)和低效(红)组。
在探索聚类时,您将遇到非常有用的算法,例如基于密度的噪声应用空间聚类(DBSCAN),均值偏移聚类,凝聚层次聚类,使用高斯混合模型的期望最大化聚类等。
4 降维
顾名思义,我们使用降维来从数据集中删除最不重要的信息(有时是冗余列)。在实践中,我经常看到包含数百甚至数千列(也称为特征)的数据集,因此减少总数至关重要。例如,图像可以包含数千个像素,而不是所有像素对您的分析都很重要。或者,在制造过程中测试微芯片时,可能会对每个芯片应用数千个测量和测试,其中许多芯片提供冗余信息。在这些情况下,您需要降维算法以使数据集易于管理。
最流行的降维方法是主成分分析(PCA),它通过到最大化数据线性变化的新向量来减小特征空间的维数。当数据的线性相关性很强时,PCA可以显着减小数据的维度,而不会丢失太多信息。(事实上,您还可以衡量信息丢失的实际程度并进行相应调整。)
另一种流行的方法是t-Stochastic Neighbor emxxxxbedding(t-SNE),它可以减少非线性
维数。人们通常使用t-SNE进行数据可视化,但您也可以将其用于机器学习任务,例如减少特征空间和聚类,仅举几例。
下一个图显示了手写数字的MNIST数据库的分析。MNIST包含数千个从0到9的数字图像,研究人员用它们来测试它们的聚类和分类算法。数据集的每一行是原始图像的矢量化版本(大小28×28 = 784)和每个图像的标签(零,一,二,三,......,九)。请注意,我们因此将维度从784(像素)减少到2(我们的可视化中的维度)。投影到两个维度允许我们可视化高维原始数据集。
▲MNIST手写数字数据库的t-SNE迭代。
5 集成算法
想象一下,你决定制造一辆自行车,因为你对商店和网上的选择感到不满意。您可以从到所需的每个部件的最佳部分开始。一旦你组装了所有这些伟大的部件,最终的自行车将超越所有其他选项。
集成使用相同的想法,结合几个预测模型(监督ML),以获得比每个模型本身可以提供的更高质量的预测。例如,随机森林算法是一种集成算法,它结合了许多用不同数据集样本训练的决策树。因此,随机森林的预测质量高于使用单个决策树估计的预测质量。
将集成算法视为减少单个机器学习模型的方差和偏差的一种方法。这很重要,因为任何给定的模型在某些条件下可能是准确的,但在其他条件下可能不准确。使用另一个模型,相对精度可能会相反。通过组合这两个模型,可以平衡预测的质量。
Kaggle比赛的绝大多数顶级获胜者都使用某种方式的合奏方法。最流行的集成算法是随机森林,XGBoost和LightGBM。
6 神经网络与深度学习
与被认为是线性模型的线性和逻辑回归相比,神经网络的目标是通过向模型添加参数层来捕获数据中的非线性模式。在下图中,简单神经网络有四个输入,一个带有五个参数的隐藏层和一个输出层。
实际上,神经网络的结构足够灵活,可以构建我们众所周知的线性回归和逻辑回归。术语深度学习来自具有许多隐藏层的神经网络(见下图),并封装了各种各样的体系结构。
特别难以跟上深度学习的发展,部分原因是研究和行业社区的深度学习成果翻了一番,每天产生全新的方法论。 具有一个隐藏层的神经网络。
▲深度学习:具有多个隐藏层的神经网络。
为了获得最佳性能,深度学习技术需要大量数据 - 以及大量计算能力,因为该方法可以在大型架构中自我调整许多参数。很快就会清楚为什么深度学习从业者需要使用GPU(图形处理单元)增强的非常强大的计算机。
特别是,深度学习技术在视觉(图像分类),文本,音频和视频领域非常成功。最常见的深度学习软件包是Tensorflow和PyTorch。
7 迁移学习
让我们假装您是零售行业的数据科学家。您花了几个月的时间训练高质量的模型,将图像分类为衬衫,T恤和马球。你的新任务是建立一个类似的模型,将服装图像分类为牛仔裤,货物,休闲裤和正装裤。您是否可以将内置的知识转移到第一个模型中并将其应用到第二个模型中?是的,您可以使用迁移学习。
转移学习是指重新使用先前训练的神经网络的一部分并使其适应新的但类似的任务。具体来说,一旦您使用任务数据训练神经网络,您可以传输一小部分训练过的图层,并将它们与您可以使用新任务的数据训练的几个新图层组合在一起。通过添加几个层,新的神经网络可以快速学习并适应新任务。
迁移学习的主要优点是你需要更少的数据来训练神经网络,这一点尤为重要,因为深度学习算法的训练在时间和金钱(计算资源)方面都是昂贵的 - 当然,通常很难到足够的标记数据用于训练。
莱维特让我们回到我们的例子,并假设对于衬衫模型,你使用一个有20个隐藏层的神经网络。经过一些实验后,您意识到您可以转移18个衬衫模型层,并将它们与一个新的参数层相结合,以训练裤子的图像。因此裤子模型将有19个隐藏层。两个任务的输入和输出是不同的,但是可重复使用的层可以概括与两者相关的信息,例如布料,紧固件和形状的方面。
迁移学习变得越来越流行,现在有许多可靠的预训练模型可用于常见的深度学习任务,如图像和文本分类。
8 强化学习
想象一下,迷宫中的老鼠试图到隐藏的奶酪片。我们将老鼠暴露在迷宫中的次数越多,
到奶酪就越好。起初,老鼠可能会随机移动,但经过一段时间后,老鼠的体验有助于它实现哪些动作更接近奶酪。
老鼠的过程反映了我们使用强化学习(RL)来训练系统或游戏。一般来说,RL是一种机器学习方法,可以帮助代理人从经验中学习。通过在设定环境中记录操作并使用试错法,RL可以最大化累积奖励。在我们的示例中,老鼠是代理,迷宫是环境。老鼠的可能操作集是:前移,后移,左移或右移。奖励是奶酪。郧西三中

本文发布于:2024-09-22 05:23:39,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/208151.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数据   学习   使用   回归   模型   方法   聚类
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议