2022年你应该知道的五大机器学习算法,解释型算法降维算法榜上有名聚类向量

本文介绍了5大常用机器学习模型类型:集合学习算法,解释型算法,聚类算法,降维算法,相似性算法,并简要介绍了每种类型中最广泛使用的算法模型。我们希望本文可以做到以下三点:

1、应用性。涉及到应用问题时,知识的普适性显然非常重要。所以我们希望通过给出模型的一般类别,让你更好地了解这些模型应当如何应用。

1

集合学习算法

(随机森林XGBoost,LightGBM,CatBoost)

什么是集合学习算法?

为了理解什么是集合学习算法,首先,你需要知道什么是集合学习。集合学习是一种同时使用多个模型,以达到比使用单一模型更好的性能的方法。

从概念上讲,可以参考下面这个比喻:

我们向一个班里的学生提出一个数学问题。他们有两种解答方式:合作解答和单人解答。生活经验告诉我们,如果全班同学一起合作,那么学生之间可以互相检查,协作解决问题,并最终给出一个唯一的答案。然而单人作答就没有这种检查的福利了——即使他/她的答案错了,也没有人能帮他/她检验。

这里的全班协作就类似于一个集合学习算法,即由几个较小的算法同时工作,并形成最终的答案。

应用

集合学习算法主要应用于回归和分类问题或监督学习问题。由于其固有的性质,集合学习算法优于所有传统的机器学习算法,包括NaveBayes、SVM和决策树。

算法

随机森林:随机森林由许多相互独立的决策树构成。

XGBoost:类似于梯度提升(GradientBoost)算法,但添加了剪枝,NewtonBoosting,随机化参数等功能,因而比梯度提升更强大。

LightGBM:利用基于梯度的单边采样(GOSS)技术过滤数据的一种提升算法,目前实验已经证实比XGBoost更快,且有时更准确。

CatBoost:一种基于梯度下降的算法。

2

解释型算法

(线性回归、逻辑回归、SHAP、LIME)

什么是解释型算法?

解释型算法使我们能够识别和理解结果有统计学意义的变量。因此,与其创建模型来预测响应变量的值,不如创建解释性模型来帮助我们理解模型中变量之间的关系。

而从回归的角度来看,人们往往强调统计学上显著的变量,这是因为对于从一个整体中提取出的样本数据,如果想对样本做出结论,首先必须确保变量拥有足够的显著性,并由此做出有把握的假设。

解释性模型通常用于需要作出解释的场景。比如展示「为什么」做出某个决定,或者解释两个或多个变量之间「如何」相互关联。

在实践中,你的机器学习模型的可解释性与机器学习模型本身的性能一样重要。如果你不能解释一个模型是如何工作的,那么这个模型就很难取信于人,自然也就不会被人们应用。

基于假设检验的传统解释模型:

线性回归:如果2个或者多个变量之间存在“线性关系”,就可以通过历史数据,建立变量之间的有效“模型”,来预测未来的变量结果。例如,y=B0+B1*x。

Logistic回归:逻辑回归主要解决二分类问题,用来表示某件事情发生的可能性。

解释机器学习模型的算法:

SHAP:即来自博弈论的沙普利加和解释,实际是将输出值归因到每一个特征的shapely值上,依此来衡量特征对最终输出值的影响。

LIME:LIME算法是MarcoTulioRibeiro2016年发表的论文《"WhyShouldITrustYou"ExplainingthePredictionsofAnyClassier》中介绍的局部可解释性模型算法。该算法主要用于文本类与图像类的模型中。

3

聚类算法

(k-Means,分层聚类法)

什么是聚类算法?

聚类算法是用来进行聚类分析的一项无监督学习任务,通常需要将数据分组到聚类中。与监督学习的已知目标变量不同,聚类分析中通常没有目标变量。

聚类算法可以用于发现数据的自然模式和趋势。聚类分析在EDA阶段非常常见,因为可以得到更多的数据信息。

同样,聚类算法能帮你识别一组数据中的不同部分。一个常见的聚类细分是对用户/客户的细分。

K-means聚类:K均值聚类算法是先随机选取K个对象作为初始的聚类中心。然后计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。

层次聚类:通过计算不同类别数据点间的相似度来创建一棵有层次的嵌套聚类树。

4

降维算法

(PCA,LDA)

什么是降维算法?

降维算法是指减少数据集输入变量(或特征变量)数量的技术。本质上来说降维是用来解决“维度诅咒”的。(维度诅咒:随着维度(输入变量的数量)的增加,空间的体积呈指数级增长,最终导致数据稀疏。)

降维技术适用于很多情况,比如:当数据集中的特征很多而实际需要的输入变量很少时,或者当ML模型过度拟合数据时,都可以使用降维技术。

主成分分析(PCA):一种使用最广泛的数据降维算法。PCA的主要思想是将n维特征映射到k维上,这k维是在原有n维特征的基础上重新构造出来的,全新的正交特征。

线性判别分析(LDA):用于在有两个以上的类时进行线性分类。

5

相似性算法

(KNN、欧几里得距离、余弦、列文斯坦、Jaro-Winkler、SVD...)

什么是相似性算法?

相似性算法是指那些计算记录/节点/数据点/文本对的相似性的算法。所以相似性算法包含许多种类,例如有比较两个数据点之间距离的相似性算法,如欧氏距离;也有计算文本相似性的相似性算法,如列文斯坦算法。

你可以用什么原料来替代蓝莓?

网易云应该根据你已经喜欢过的歌曲来推荐什么歌曲?

亚马逊应该根据你的订单历史推荐什么产品?

K邻近:通过在整个训练集上搜索与该数据点最相似的K个实例(近邻)并且总结这K个实例的输出变量,从而得出预测结果。

欧几里德距离:一个通常采用的距离定义,指在m维空间中两个点之间的真实距离,或者向量的自然长度(即该点到原点的距离)。

余弦相似度:利用向量空间中两个向量夹角间的余弦值衡量两个个体之间差异的大小,余弦值接近1,夹角趋于0,表明两个向量越相似,余弦值接近于0,夹角趋于90度,表明两个向量越不相似。

列文施泰因算法:指两个字串之间,由一个转成另一个所需的最少编辑操作次数。

Jaro-Winkler算法:Jaro–Winklerdistance适合于较短的字符之间计算相似度。0分表示没有任何相似度,1分则代表完全匹配。

奇异值分解(SVD)(不完全属于相似性算法,但与相似性有间接关系):定义一个m×n的矩阵A的SVD为:A=UΣVT,其中U是一个m×m的矩阵,Σ是一个m×n的矩阵,除了主对角线上的元素以外全为0,主对角线上的每个元素都称为奇异值,V是一个n×n的矩阵。U和V都是酉矩阵,即满足UTU=I,VTV=I。

以上就是对当前主流的机器学习算法的总结,希望本文能帮助你更好地了解各种ML模型以及它们的应用场景。当然,纸上得来终觉浅,如果本文使你有所收获,那就请开始你的应用之路吧,看看你能用ML解决什么问题!

THE END
1.最常用的五大算法总结!附算法题思路,看完茅塞顿开!转自:最常用的五大算法 https://blog.csdn.net/watson2016/article/details/77857824 一、贪心算法 贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的仅是在某种意义上的https://mp.weixin.qq.com/s?__biz=MjM5ODc2Mzk2MA==&mid=2451788978&idx=3&sn=1ec2d358dc201c95f7c85e8438c613b8&chksm=b11238658665b173f858315941fe08939c0e5ecaa29bf86d6f8bb0d5f1dd2e10c5c064646c38&scene=27
2.五大常用算法五大常用算法之一:分治算法 基本概念: 把一个复杂的问题分成两个或更多的相同的或相似的子问题。再把子问题分成更小的子问题。直到最后子问题可以简单的解决。 分成的子问题与原问题形式相同,并且互相独立,递归的解决这些子问题。然后将子问题的解合并得到原问题的较小模式。这就为使用递归技术提供了方便。分治与递归https://www.jianshu.com/p/bc02cd2fe06f
3.五大常用算法之一:分治算法五大常用算法之一:分治算法 分治算法: 一、基本概念 分治法是计算机科学中非常重要的算法。字面上的解释是“分而治之”,即将一个复杂的问题分为两个或两个以上相同或相似的子问题,然后将子问题分为更小的子问题。。。直到最后一个子问题可以简单地直接解决,原始问题的解决方案就是子问题的解决方案的结合。这一https://www.tulingxueyuan.cn/tlzx/jsp/3793.html
4.自动驾驶路径规划五大常用算法汽车技术自动驾驶路径规划五大常用算法 无人驾驶系统的核心可分为四个部分:感知、定位、规划和控制。规划承接环境感知,并下启车辆控制,是实现无人驾驶的关键技术之一。规划是指无人车为了到达某一目的地而做出决策和计划的过程,其规划出来的轨迹是带速度信息的路径,对于无人驾驶车辆而言,这个https://www.auto-testing.net/news/show-116633.html
5.笔记:五大常用算法51CTO博客笔记:五大常用算法 贪婪算法,动态规划算法,分治算法,回溯算法,分支限界算法 贪心算法 单源最短路 Dijkstra算法 最小生成树 Kruskal算法 Prim算法 动态规划算法 任意两点间的最短路 Floyd算法 01背包——m[ i ][ j ] 表示 在面对第 i 件物品,且背包容量为 j 时所能获得的最大价值,不断的更新它,因为得出的https://blog.51cto.com/u_11347864/6686752
6.衡量算法好坏的五大标准是什么?Worktile社区衡量算法好坏的五大标准: 1、时间复杂度; 2、空间复杂度; 3、正确性; 4、可读性; 5、健壮性。时间复杂度是指,执行算法所需要的计算工作量,这是一个代表算法输入值的字符串的长度的函数。 1、时间复杂度 在计算机科学中,时间复杂性,又称时间复杂度,算法的时间复杂度是一个函数,它定性描述该算法的运行时间。https://worktile.com/kb/p/34908
7.五大常用算法之四:回溯法五大常用算法之四:回溯法 标签: 算法 收藏 1、概念 回溯算法实际上一个类似枚举的搜索尝试过程,主要是在搜索尝试过程中寻找问题的解,当发现已不满足求解条件时,就“回溯”返回,尝试别的路径。回溯法是一种选优搜索法,按选优条件向前搜索,以达到目标。但当探索到某一步时,发现原先选择并不优或达不到目标,就https://www.imooc.com/article/27990
8.程序设计五大算法在程序设计中,有许多经典的算法被广泛应用于各种领域。下面将介绍程序设计中的五大算法,包括贪心算法、分治算法、动态规划算法、回溯算法和图算法。 1.贪心算法 贪心算法是一种简单而高效的算法,它通过每一步都选择当前最优解来达到全局最优解。贪心算法通常适用于那些具有最优子结构的问题,即问题的最优解可以通过https://wenku.baidu.com/view/18ed554dedfdc8d376eeaeaad1f34693dbef1011.html
9.五大常用算法之贪心算法,算法数据结构五大常用算法贪心算法基础知识点 贪心算法是一种常用的算法设计技术,通过一系列的选择来得到问题的解,所做的每个选择都是当前状态下局部最好的选择,即贪心选择。下面是贪心算法的基本概念、算法框架和应用场景。 贪心算法的基本概念 贪心算法是通过一系列的选择来得到问题的解,每个选择都是当前状态下局部最好的选择。贪心算法的基https://download.csdn.net/download/qq_40464803/85089599
10.五大常用算法:分治动态规划贪心回溯和分支界定五大常用算法:分治、动态规划、贪心、回溯和分支界定这五种算法引出了很多问题。慢慢的更新链接! 动态规划的五个典型算法:动态规划 1.最大连续子序列之和 2.数塔问题(二叉树从上往下遍历最大和问题) 3.01背包问题 4.最长递增子序列(LIS) 5.最长公共子序列(LCS) //最长公共子序列(LCS)两个字符串的最长连续公https://www.cnblogs.com/ranjiewen/p/6083952.html
11.金融科技发展带来五大新挑战!易纲:积极应对算法歧视等新型垄断问题金融科技发展带来五大新挑战!易纲:积极应对算法歧视等新型垄断问题 摘要 炒股第一步,先开个股票账户 中国人民银行行长易纲日前在国际清算银行(BIS)监管大型科技公司国际会议上表示,在技术进步的推动下,中国金融科技蓬勃发展。 与此同时,“金融科技的不断发展也给中国监管当局带来了新挑战。”易纲表示,一是无牌或超https://finance.eastmoney.com/a/202110092132432726.html
12.《集异璧之大成》阅读笔记及杂谈(附录一):人机博弈蒙特卡洛算法也常用于机器学习,特别是强化学习的算法中。一般情况下,针对得到的样本数据集创建相对模糊的模型,通过蒙特卡洛方法对于模型中的参数进行选取,使之于原始数据的误差尽可能的小。从而达到创建模型拟合样本的目的。 超复杂的搜索树 1·五大常用搜索算法https://www.gameres.com/846786.html
13.学好算法,你就可以轻轻松松解数独啦腾讯云开发者社区本文我们就来介绍五大经典算法的下一个 — 回溯算法。 2. 回溯算法 数学课堂上,老师说:“同学们,6 可以拆分成几加几呀?”,台下的同学们鸦雀无声,顿时有些冷场,老师一下子有点生气“掰着指头算不会吗?” 这个“掰着指头算”就是一个数字一个数字的尝试,通过穷举获得问题的结果集,对于复杂的有限空间的问题https://cloud.tencent.com/developer/article/2031645