【Machine Learning系列】带你快速学习十大机器学习算法

前言

机器学习算法是一类用于从数据中学习模式和规律的算法。这些算法可以通过训练样本的输入和输出来推断出模型的参数,然后用于预测新的未知数据。

在这里插入图片描述


机器学习算法

当谈到机器学习算法时,有很多不同的算法可以使用,以下是十大基本的机器学习算法:

  • 线性回归算法 Linear Regression
  • 支持向量机算法 (Support Vector Machine,SVM)
  • 最近邻居/k-近邻算法 (K-Nearest Neighbors,KNN)
  • 逻辑回归算法 Logistic Regression
  • 决策树算法 Decision Tree
  • k-平均算法 K-Means
  • 随机森林算法 Random Forest
  • 朴素贝叶斯算法 Naive Bayes
  • 降维算法 Dimensional Reduction
  • 梯度增强算法 Gradient Boosting

机器学习算法大致可以分为三类:

  • 监督学习算法 (Supervised Algorithms):在监督学习训练过程中,可以由训练数据集学到或建立一个模式(函数 / learning model),并依此模式推测新的实例。该算法要求特定的输入/输出,首先需要决定使用哪种数据作为范例。例如,文字识别应用中一个手写的字符,或一行手写文字。主要算法包括神经网络、支持向量机、最近邻居法、朴素贝叶斯法、决策树等。
  • 无监督学习算法 (Unsupervised Algorithms):这类算法没有特定的目标输出,算法将数据集分为不同的组。
  • 强化学习算法 (Reinforcement Algorithms):强化学习普适性强,主要基于决策进行训练,算法根据输出结果(决策)的成功或错误来训练自己,通过大量经验训练优化后的算法将能够给出较好的预测。类似有机体在环境给予的奖励或惩罚的刺激下,逐步形成对刺激的预期,产生能获得最大利益的习惯性行为。在运筹学和控制论的语境下,强化学习被称作“近似动态规划”(approximate dynamic programming,ADP)。

这些算法在不同的问题和数据集上具有不同的优势和适用性,选择合适的算法取决于具体的任务和数据特征。 接下来向大家介绍一下这些算法:

1. 线性回归算法 Linear Regression

回归分析(Regression Analysis)是统计学的数据分析方法,目的在于了解两个或多个变量间是否相关、相关方向与强度,并建立数学模型以便观察特定变量来预测其它变量的变化情况。

线性回归算法(Linear Regression)的建模过程就是使用数据点来寻找最佳拟合线。公式,y = m*x + c,其中 y 是因变量,x 是自变量,利用给定的数据集求 m 和 c 的值。
线性回归又分为两种类型,即简单线性回归(simple linear regression),只有 1 个自变量;多变量回归(multiple regression),至少两组以上自变量。

img

下面是一个线性回归示例:基于 Python scikit-learn 工具包描述。

img

2. 支持向量机算法(Support Vector Machine,SVM)

支持向量机/网络算法(SVM)属于分类型算法。SVM模型将实例表示为空间中的点,将使用一条直线分隔数据点。需要注意的是,支持向量机需要对输入数据进行完全标记,仅直接适用于两类任务,应用将多类任务需要减少到几个二元问题。

img

img

img

3. 最近邻居/k-近邻算法 (K-Nearest Neighbors,KNN)

KNN算法是一种基于实例的学习,或者是局部近似和将所有计算推迟到分类之后的惰性学习。用最近的邻居(k)来预测未知数据点。k 值是预测精度的一个关键因素,无论是分类还是回归,衡量邻居的权重都非常有用,较近邻居的权重比较远邻居的权重大。

KNN 算法的缺点是对数据的局部结构非常敏感。计算量大,需要对数据进行规范化处理,使每个数据点都在相同的范围。

img

img

img

延伸:KNN 的一个缺点是依赖于整个训练数据集,学习向量量化(Learning Vector Quantization,LVQ)是一种监督学习的人神经网络算法,允许你选择训练实例。LVQ 由数据驱动,搜索距离它最近的两个神经元,对于同类神经元采取拉拢,异类神经元采取排斥,最终得到数据的分布模式。如果基于 KNN 可以获得较好的数据集分类效果,利用 LVQ 可以减少存储训练数据集存储规模。典型的学习矢量量化算法有LVQ1、LVQ2和LVQ3,尤以LVQ2的应用最为广泛。

img

4. 逻辑回归算法 Logistic Regression

逻辑回归算法(Logistic Regression)一般用于需要明确输出的场景,如某些事件的发生(预测是否会发生降雨)。通常,逻辑回归使用某种函数将概率值压缩到某一特定范围。
例如,Sigmoid 函数(S 函数)是一种具有 S 形曲线、用于二元分类的函数。它将发生某事件的概率值转换为 0, 1 的范围表示。

Y = E ^(b0+b1 x)/(1 + E ^(b0+b1 x ))

以上是一个简单的逻辑回归方程,B0,B1是常数。这些常数值将被计算获得,以确保预测值和实际值之间的误差最小。

img

img

5. 决策树算法 Decision Tree

决策树(Decision tree)是一种特殊的树结构,由一个决策图和可能的结果(例如成本和风险)组成,用来辅助决策。机器学习中,决策树是一个预测模型,树中每个节点表示某个对象,而每个分叉路径则代表某个可能的属性值,而每个叶节点则对应从根节点到该叶节点所经历的路径所表示的对象的值。决策树仅有单一输出,通常该算法用于解决分类问题。

一个决策树包含三种类型的节点:

  • 决策节点:通常用矩形框来表示
  • 机会节点:通常用圆圈来表示
  • 终结点:通常用三角形来表示

简单决策树算法案例,确定人群中谁喜欢使用信用卡。考虑人群的年龄和婚姻状况,如果年龄在30岁或是已婚,人们更倾向于选择信用卡,反之则更少。
通过确定合适的属性来定义更多的类别,可以进一步扩展此决策树。在这个例子中,如果一个人结婚了,他超过30岁,他们更有可能拥有信用卡(100% 偏好)。测试数据用于生成决策树。

img

img

注意:对于那些各类别样本数量不一致的数据,在决策树当中信息增益的结果偏向于那些具有更多数值的特征。

6. k-平均算法 K-Means

k-平均算法(K-Means)是一种无监督学习算法,为聚类问题提供了一种解决方案。
K-Means 算法把 n 个点(可以是样本的一次观察或一个实例)划分到 k 个集群(cluster),使得每个点都属于离他最近的均值(即聚类中心,centroid)对应的集群。重复上述过程一直持续到重心不改变。

img

7. 随机森林算法 Random Forest

随机森林算法(Random Forest)的名称由 1995 年由贝尔实验室提出的random decision forests 而来,正如它的名字所说的那样,随机森林可以看作一个决策树的集合。
随机森林中每棵决策树估计一个分类,这个过程称为“投票(vote)”。理想情况下,我们根据每棵决策树的每个投票,选择最多投票的分类。

img

img

8. 朴素贝叶斯算法 Naive Bayes

朴素贝叶斯算法(Naive Bayes)基于概率论的贝叶斯定理,应用非常广泛,从文本分类、垃圾邮件过滤器、医疗诊断等等。朴素贝叶斯适用于特征之间的相互独立的场景,例如利用花瓣的长度和宽度来预测花的类型。“朴素”的内涵可以理解为特征和特征之间独立性强。

与朴素贝叶斯算法密切相关的一个概念是最大似然估计(Maximum likelihood estimation),历史上大部分的最大似然估计理论也都是在贝叶斯统计中得到大发展。例如,建立人口身高模型,很难有人力与物力去统计全国每个人的身高,但是可以通过采样,获取部分人的身高,然后通过最大似然估计来获取分布的均值与方差。

img

9. 降维算法 Dimensional Reduction

在机器学习和统计学领域,降维是指在限定条件下,降低随机变量个数,得到一组“不相关”主变量的过程,并可进一步细分为特征选择和特征提取两大方法。

一些数据集可能包含许多难以处理的变量。特别是资源丰富的情况下,系统中的数据将非常详细。在这种情况下,数据集可能包含数千个变量,其中大多数变量也可能是不必要的。在这种情况下,几乎不可能确定对我们的预测影响最大的变量。此时,我们需要使用降维算法,降维的过程中也可能需要用到其他算法,例如借用随机森林,决策树来识别最重要的变量。

10. 梯度增强算法 Gradient Boosting

梯度增强算法(Gradient Boosting)使用多个弱算法来创建更强大的精确算法。它与使用单个估计量不同,而是使用多个估计量创建一个更稳定和更健壮的算法。梯度增强算法有几种:

  • XGBoost — 使用线性和树算法
  • LightGBM — 只使用基于树的算法
    梯度增强算法的特点是精度较高。此外,LightGBM 算法具有令人难以置信的高性能。

总结

机器学习算法的学习是一个长期的过程,需要不断地练习和实践才能够掌握。通过坚持不懈地学习和实践,你将能够快速掌握机器学习算法并应用于实际问题中。


好书推荐

点赞+评论+收藏本文,随机抽6人送!

在这里插入图片描述

《机器学习Python版》

介绍:机器学习初学者入门指南,使用Python语言以及scikit-learn库,掌握开发机器学习系统所需的流程、模式和策略。

详情:点此查看

在这里插入图片描述

  • 119
    点赞
  • 148
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 122
    评论
众所周知,人工智能是当前最热门的话题之一, 计算机技术与互联网技术的快速发展更是将对人工智能的研究推向一个新的高潮。 人工智能是研究模拟和扩展人类智能的理论与方法及其应用的一门新兴技术科学。 作为人工智能核心研究领域之一的机器学习, 其研究动机是为了使计算机系统具有人的学习能力以实现人工智能。 那么, 什么是机器学习呢? 机器学习 (Machine Learning) 是对研究问题进行模型假设,利用计算机从训练数据中学习得到模型参数,并最终对数据进行预测和分析的一门学科。 机器学习的用途 机器学习是一种通用的数据处理技术,其包含了大量的学习算法。不同的学习算法在不同的行业及应用中能够表现出不同的性能和优势。目前,机器学习已成功地应用于下列领域: 互联网领域----语音识别、搜索引擎、语言翻译、垃圾邮件过滤、自然语言处理等 生物领域----基因序列分析、DNA 序列预测、蛋白质结构预测等 自动化领域----人脸识别、无人驾驶技术、图像处理、信号处理等 金融领域----证券市场分析、信用卡欺诈检测等 医学领域----疾病鉴别/诊断、流行病爆发预测等 刑侦领域----潜在犯罪识别与预测、模拟人工智能侦探等 新闻领域----新闻推荐系统等 游戏领域----游戏战略规划等 从上述所列举的应用可知,机器学习正在成为各行各业都会经常使用到的分析工具,尤其是在各领域数据量爆炸的今天,各行业都希望通过数据处理与分析手段,得到数据中有价值的信息,以便明确客户的需求和指引企业的发展。
经典算法 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 数输出,可以建立独的决策树处理不同。 数输出,可以建立独的决策树处理不同。 数输出,可以建立独的决策树处理不同。 数输出,可以建立独的决策树处理不同。 数输出,可以建立独的决策树处理不同。 数输出,可以建立独的决策树处理不同。 数输出,可以建立独的决策树处理不同。 数输出,可以建立独的决策树处理不同。 数输出,可以建立独的决策树处理不同。 数输出,可以建立独的决策树处理不同。 从数据产生决策树的机器学习 技术叫做从数据产生决策树的机器学习 技术叫做从数据产生决策树的机器学习 技术叫做从数据产生决策树的机器学习 技术叫做从数据产生决策树的机器学习 技术叫做从数据产生决策树的机器学习 技术叫做从数据产生决策树的机器学习 技术叫做从数据产生决策树的机器学习 技术叫做从数据产生决策树的机器学习 技术叫做从数据产生决策树的机器学习 技术叫做, 通俗说就是决策树。 通俗说就是决策树。 通俗说就是决策树。 通俗说就是决策树。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 122
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陈橘又青

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值