楼主: _wallstreetcat_
897 1

机器学习新手十大算法之旅 [推广有奖]

  • 0关注
  • 36粉丝

已卖:114份资源

讲师

9%

还不是VIP/贵宾

-

威望
0
论坛币
88 个
通用积分
41.5574
学术水平
14 点
热心指数
13 点
信用等级
13 点
经验
6402 点
帖子
257
精华
0
在线时间
235 小时
注册时间
2017-3-16
最后登录
2024-10-20

楼主
_wallstreetcat_ 企业认证  发表于 2018-7-12 10:49:18 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币


机器学习中,有一个叫做 “ 无免费午餐 ” 的定理(NFL)。简而言之,我们无法找到一个放之四海而皆准的最优方案,这一点对于监督学习(即预测建模)尤为重要。


例如,你不能说神经网络总是比决策树好,反之亦然。因为其中有很多因素在起作用,比如数据集的大小和结构。


因此,您应该针对您的问题尝试多种不同的算法,同时,保留一组数据,即“测试集”来评估性能并选择优胜者。


当然,您尝试的算法必须适合您的问题,所以需要选择正确的机器学习任务。打个比方,如果你需要打扫房子,你可能会用吸尘器、扫帚或拖把,但你不会拿出铲子开始挖掘。


大原则


在所有监督机器学习算法的基础上,有一个共同的原则。


机器学习算法被描述为学习一个目标函数(f),它最好地将输入变量(X)映射到输出变量(Y): Y = f(X)


这是一项通用的学习任务,即我们想在给出新的输入变量(X)后预测(Y),但我们不知道函数(f)是什么样子或者它的形式,不然我们就会直接使用它,而不需要使用机器学习算法从数据中学习了。


最常见的机器学习类型是学习映射Y = f(X)来为新的X做出Y的预测。这被称为预测建模或预测分析,我们的目标是使最准确的预测成为可能。


对于渴望了解机器学习基本原理的机器学习新手来说,这里有一个关于数据科学家使用的10种机器学习算法的鸟瞰。


1.线性回归


线性回归可能是统计学和机器学习中最著名和最容易理解的算法之一。


预测建模主要关注的是最小化模型的误差,以牺牲可解释性为代价使最准确的预测成为可能。我们借鉴各种的领域的算法来处理统计数据以达到预测目的。


线性回归的表示是一个方程,它描述了一条线,通过寻找输入变量系数(B)的特定权重,拟合输入变量(x)和输出变量(y)之间的关系。


例如:y = B0 + B1 * x


我们将在给定输入x的情况下预测y,线性回归学习算法的目标是找到系数B0和B1的值。 可以使用不同的技术从数据中学习线性回归模型,如普通最小二乘的线性代数解和梯度下降优化。


线性回归已经有200多年的历史了,并被广泛研究。在使用此技术时,一些很好的经验法则是删除非常相似(相关)的变量,并尽可能从数据中删除噪声。这是一种快速简单的技术,也是一种很好的算法。


2.逻辑回归


逻辑回归是机器学习在统计学领域借鉴的另一种技术。它是二进制分类问题(具有两个类值的问题)的首选方法。


逻辑回归就像线性回归,目标是找到每个输入变量的系数的值。与线性回归不同的是,输出的预测是用一个叫做logistic函数的非线性函数进行转换。


逻辑函数看起来像一个大S,它会将任意值转换到0到1的范围。这很有用,因为我们可以将一个规则应用于逻辑函数的输出以将值压缩到0和1(例如IF小于0.5然后输出0)并预测一个类值。


由于模型的学习方式,逻辑回归的预测也可以作为属于0类或1类的给定数据实例的概率。这对于需要为预测提供概率解释的问题很有用。


与线性回归一样,当您删除与输出变量无关的属性以及彼此非常相似(相关)的属性时,逻辑回归确实更有效。这是一个快速有效地学习二分类问题的模型。


3.线性判别分析


逻辑回归是一种传统上仅局限于两类分类问题的分类算法。如果你有两个以上的类,那么线性判别分析算法是首选的线性分类技术。


LDA的表示非常直接。它包括数据的统计属性,为每个类计算。对于单个输入变量,包括:


  • 每个类别的均值

  • 每个类别的方差



通过计算每个类的判别值,并对具有最大值的类进行预测。该技术假定数据具有高斯分布(钟形曲线),因此最好事先从数据中删除异常值。这是一种简单而有效的分类预测建模方法。


4.分类和回归树


决策树是一种重要的预测建模算法。


决策树模型用二叉树来表示,二叉树来自于算法和数据结构。每个节点代表一个输入变量(x)和该变量上的分裂点(假设变量是数值)。




树的叶节点包含一个输出变量(y),用于进行预测。过程是遍历树的分叉直到到达叶节点并在该叶节点上输出类值。


树的学习速度很快,预测的速度也很快。它们通常适用于广泛的问题,不需要对数据进行任何特殊的准备。


5.朴素贝叶斯


朴素贝叶斯(Naive Bayes)是一种简单但功能惊人的预测建模算法。


该模型由两种可以直接从训练数据中计算的概率组成: 1) 每个类的概率; 2) 给定每个x值后每个类的条件概率。


一旦计算出概率模型,就可以用贝叶斯定理对新数据进行预测。当你的数据是实值时,通常假设一个高斯分布(钟形曲线),这样你就可以很容易地估计这些概率。


朴素贝叶斯之所以称“朴素”,是因为它假设每个输入变量是独立的。这对于真实数据来说是一个很强的、不切实际的假设,然而,该技术对于大量复杂问题非常有效。


6.K近邻


KNN算法非常简单和有效。通过对K个最相似的实例(邻居)对整个训练集进行搜索并汇总这些K个实例的输出变量,可以对一个新的数据点进行预测。


对于回归问题,它可能是平均输出变量,对于分类问题,可能是模型(或最常见)类值。


关键在于如何确定数据实例之间的相似性。如果您的属性都具有相同的比例(例如,以英寸为单位),最简单的技术是使用欧几里得距离,您可以根据每个输入变量之间的差异直接计算该数字。


KNN可能需要大量内存或空间来存储所有数据,但只在需要预测时才进行计算(或学习)。您还可以随着时间的推移更新和策划您的训练实例,以保持预测准确。


当维数提高时,空间的体积提高得很快,因而可用数据变得很稀疏,这会对算法的性能产生负面影响。这被称为维度灾难。故建议您只使用那些与预测输出变量最相关的输入变量。


7.学习矢量量化


k近邻的一个缺点是您需要挂载整个训练数据集。学习向量量化算法(或简称LVQ)是一种人工神经网络算法,它允许您选择要挂载的训练实例。


LVQ的表示是一组码本向量(codebook vector),这些都是在开始时随机选择的,并根据学习算法的多次迭代对训练数据集进行最佳的总结。


在学习之后,码本向量可以用来做出像k近邻那样的预测。通过计算每个码本向量和新数据实例之间的距离,可以找到最相似的邻(最佳匹配的码本向量)。


然后返回最佳匹配单元的类值(或回归时的真实值)作为预测。如果您重新缩放数据,使其具有相同的范围(如0到1之间),则可获得最佳结果。


如果您发现KNN在您的数据集上表现良好,请尝试使用LVQ来减少存储整个训练数据集的内存需求。


8.支持向量机


支持向量机(Support Vector Machines)可能是最流行和最受关注的机器学习算法之一。


超平面是分割输入变量空间的线。在SVM中,通过选择一个超平面,并根据输入变量空间中的类(类0或类1),来最好地分离输入变量空间中的点。


在二维中,你可以把它想象成一条直线,并假设所有的输入点都可以被这条直线分开。


支持向量机学习算法通过超平面的方法,找出使得类间达到最佳分离的系数。


超平面与最近的数据点之间的距离称为边距,能够将两个类分离得最好的或最优的超平面是具有最大边距的那条线,它是由几个关键点决定的,这些点与定义超平面和构造分类器直接相关,被称为支持向量。


SVM可能是最强大的开箱即用分类器之一,非常值得在您的数据集中进行这样的尝试。


9.装袋和随机森林


随机森林是最流行和最强大的机器学习算法之一。它是一种称为引导聚集算法(Bootstrap Aggregation)或装袋(Bagging)的集成机器学习算法。


Bootstrap是一种强大的统计方法,比如求平均值,您可以从数据样本中均匀有放回地取出一部分求平均值,然后把得到的平均值再求一个平均,这样可以更好地估计真实平均值。


在装袋(Bagging)中,用到同样的方法,装袋法并不仅适用于决策树,但对决策树尤其有用,从训练数据中抽多个样本,然后为每个数据样本构建模型。


当您需要对新数据进行预测时,每个模型都会进行预测,并对预测进行平均,以便更好地估计真实的输出值。


随机森林是这种方法的一个改进,在这种方法中,创建决策树,以便通过引入随机性来进行次优分割,而不是选择最佳分割点。


因此,为每个数据样本创建的模型与其他情况下的模型更加不同,但仍然精确。将预测结果结合起来,可以更好地估计潜在结果的真实值。


如果您使用具有高方差的算法(如决策树)得到不错的结果,那么您通过装袋算法通常可以得到更好的结果。


10.提升和自适应增强

...

由于字数限制,完整文章请转到BigQuan社区查看,原文链接:机器学习新手十大算法之旅




二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝


沙发
hifinecon 发表于 2018-7-14 18:28:46
Thank you so much for this wonderful information.

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
扫码
拉您进交流群
GMT+8, 2026-2-5 02:30