新手如何接触机器学习的这十大算法一定不能错过

人工智能

636人已加入

描述

在神经网络的成功的带动下,越来越多的研究人员和开发人员都开始重新审视机器学习,开始尝试用某些机器学习方法自动解决可以轻松采集数据的问题。然而,在众多的机器学习算法中,哪些是又上手快捷又功能强大、适合新手学习的呢?

机器学习领域有一条“没有免费的午餐”定理。简单解释下的话,它是说没有任何一种算法能够适用于所有问题,特别是在监督学习中。

例如,你不能说神经网络就一定比决策树好,反之亦然。要判断算法优劣,数据集的大小和结构等众多因素都至关重要。所以,你应该针对你的问题尝试不同的算法。然后使用保留的测试集对性能进行评估,选出较好的算法。

当然,算法必须适合于你的问题。就比如说,如果你想清扫你的房子,你需要吸尘器,扫帚,拖把。而不是拿起铲子去开始挖地。

不过,对于预测建模来说,有一条通用的原则适用于所有监督学习算法。

机器学习算法可以描述为学习一个目标函数 f,它能够最好地映射出输入变量 X 到输出变量 Y。有一类普遍的学习任务。我们要根据输入变量 X 来预测出 Y。我们不知道目标函数 f 是什么样的。如果早就知道,我们就可以直接使用它,而不需要再通过机器学习算法从数据中进行学习了。

最常见的机器学习就是学习 Y=f(X) 的映射,针对新的 X 预测 Y。这叫做预测建模或预测分析。我们的目标就是让预测更加精确。

针对希望对机器学习有个基本了解的新人来说,下面将介绍数据科学家们最常使用的 10 种机器学习算法。

1. 线性回归

线性回归可能是统计和机器学习领域最广为人知的算法之一。

以牺牲可解释性为代价,预测建模的首要目标是减小模型误差或将预测精度做到最佳。我们从统计等不同领域借鉴了多种算法,来达到这个目标。

线性回归通过找到一组特定的权值,称为系数 B。通过最能符合输入变量 x 到输出变量 y 关系的等式所代表的线表达出来。

数据采集

例如:y = B0 + B1 * x 。我们针对给出的输入 x 来预测 y。线性回归学习算法的目标是找到 B0 和 B1 的值。

不同的技巧可以用于线性回归模型。比如线性代数的普通最小二乘法,以及梯度下降优化算法。线性回归已经有超过 200 年的历史,已经被广泛地研究。根据经验,这种算法可以很好地消除相似的数据,以及去除数据中的噪声。它是快速且简便的首选算法。

2. 逻辑回归

逻辑回归是另一种从统计领域借鉴而来的机器学习算法。

与线性回归相同。它的目的是找出每个输入变量的对应参数值。不同的是,预测输出所用的变换是一个被称作 logistic 函数的非线性函数。

logistic 函数像一个大 S。它将所有值转换为 0 到 1 之间的数。这很有用,我们可以根据一些规则将 logistic 函数的输出转换为 0 或 1(比如,当小于 0.5 时则为 1)。然后以此进行分类。

数据采集

正是因为模型学习的这种方式,逻辑回归做出的预测可以被当做输入为 0 和 1 两个分类数据的概率值。这在一些需要给出预测合理性的问题中非常有用。

就像线性回归,在需要移除与输出变量无关的特征以及相似特征方面,逻辑回归可以表现得很好。在处理二分类问题上,它是一个快速高效的模型。

3. 线性判别分析

逻辑回归是一个二分类问题的传统分类算法。如果需要进行更多的分类,线性判别分析算法(LDA)是一个更好的线性分类方法。

对 LDA 的解释非常直接。它包括针对每一个类的输入数据的统计特性。对于单一输入变量来说包括:

类内样本均值

总体样本变量

数据采集

线性判别分析

通过计算每个类的判别值,并根据最大值来进行预测。这种方法假设数据服从高斯分布(钟形曲线)。所以它可以较好地提前去除离群值。它是针对分类模型预测问题的一种简单有效的方法。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分