思享国logo
返回顶部

点赞数

2

回复数

1

被浏览

280

最受欢迎的十大机器学习算法-part1

2018-01-25 14:51更新
  • 热点聚焦

在机器学习领域,“没有免费的午餐”是一个不变的定理。简而言之,没有一种算法是完美的,可以作为任何问题的最佳解决方案。认清这一点,对于解决监督学习问题(如预测建模问题)尤其重要。

我们不能总说神经网络就是比决策树好,反之亦然。影响算法性能的因素有很多,比如数据集的大小和结构。

因此,对于自己的问题,要尝试多种不同的算法,并使用测试数据集来评估各个算法的性能,以选出效果最优的那一个。

当然,前面所尝试的算法必须要适合自己的问题,这也正是你要选对正确的机器学习任务的地方。比如,需要打扫房子的时候,你会使用真空吸尘器、扫帚或拖把,但绝不应该用铲子在屋内挖坑。

重要的原则

话虽如此,但所有用于预测建模的有监督机器学习算法却有一个共同的原则:

机器学习算法的本质是找到一个目标函数(f),使其成为输入变量(X)到输出变量(Y)之间的最佳映射:Y = f(X)

这是最常见的学习任务,给定任意新的输入变量(X),我们就能预测出输出变量(Y)的值。因为我们不知道目标函数(f)的形式或样子,所以才要机器去把它找出来。不然的话,我们就可以直接用目标函数来进行预测了,而非还要用机器学习算法来学习数据了。

最常见的机器学习类型就是找到最佳映射Y = f(X),并以此来预测新X所对应的Y值。这一过程被称为预测建模或预测分析,目标是尽可能到出最为准确的预测。

对于渴望理解机器学习基本概念的各位新手,我们特地整理出数据科学家最常用的十大机器学习算法,便于大家快速上手。

1- 线性回归

线性回归可能是统计学和机器学习中最为知名、最易于理解的一个算法。

预测建模主要关注的是如何最小化模型的误差,或是如何在一个可解释性代价的基础上做出最为准确的预测。我们将借用、重用和窃取包括统计学在内的多个不同领域的算法,并将其用于这些目的。

线性回归所表示的是描述一条直线的方程,通过输入变量的特定权重系数(B)来找出输入变量(x)和输出变量(y)之间最适合的映射关系。

1

线性回归

例如:y = B0 + B1 * x

给定输入x,我们可以预测出y的值。线性回归学习算法的目标是找到系数B0和B1的值。

找出数据的线性回归模型有多种不同的技巧,例如将线性代数解用于普通最小二乘法和梯度下降优化问题。

线性回归业已存在200多年,并已被广泛研究过。使用该算法的一些窍门,是尽可能地去除非常相似的相关变量以及数据中的噪声。这是一个快速、简单而又好用的算法。

2 - 逻辑回归

逻辑回归是机器学习借自统计领域的另一项技术,用于解决二元分类问题(有两个类值的问题)。

逻辑回归就像线性回归,因为它的目标是找出每个输入变量的加权系数值。与线性回归不同的是,逻辑回归预测输出值的函数是非线性的,也被称为逻辑函数。

逻辑回归的函数图像看起来是一个大的S形,并将任何值转换至0到1的区间。这种形式非常有用,因为我们可以用一个规则把逻辑函数的值转化成0和1(例如,如果函数值小于0.5,则输出1),从而预测类别。

2

逻辑回归

3 - 线性判别分析

一般来说,逻辑回归仅限于二元分类问题。 但如果分类类别超过两个,线性判别分析就成为你首选的线性分类算法。

线性判别分析的表达式非常简单。 它由数据的统计属性组成,并计算每个类别的属性值。对于单个输入变量,它包括:

  • 每个类别的平均值。
  • 所有类别的方差。

3

线性判别分析

4 - 分类和回归树

决策树是用于预测建模的一种重要机器学习算法。

决策树模型的表现形式为二叉树,也就是来自算法和数据结构方面的二叉树,没有什么特别。树上每个节点代表一个输入变量(x)与一个基于该变量的分离点(假定这个变量是数字)。

4

决策树

叶节点包含了用于预测的输出变量(y)。预测是通过遍历树的分离点开始,直到抵达每一个叶节点,并输出该叶节点的分类值。

决策树算法学习起来很快,预测速度也很快。决策树对于各种各样的问题都能做出准确的预测,并且无需对数据做任何特殊的预处理。

 5 - 朴素贝叶斯

朴素贝叶斯是一种简单而又强大的预测建模算法。

该模型由两种概率组成,它们都能从训练数据中直接计算出来:1)每个类别的概率; 2)对于给定的x值,每个类别的条件概率。一旦计算出来,概率模型就可以用于使用贝叶斯定理对新的数据进行预测。当你的数据是实值时,通常会假定一个高斯分布(钟形曲线),这样你就很容易计算出这些数据的概率。

5

朴素贝叶斯假定每个输入变量都是独立,所以被称为“朴素的”。这是一个强假设,对真实数据而言有点不切实际,但该方法在大范围的复杂问题上非常有效。

如果有人不理解朴素贝叶斯算法的话,这里提供一个参考链接:

http://blog.csdn.net/amds123/article/details/70173402

其余几种机器学习算法将在下次介绍。

您尚未登录, 登入  或  注册  后可查看全部

回复区