机器学习数据挖掘常用算法简单总结(看成目录也行,很多作者觉得比较好的讲解)

一、分类算法(监督学习)
1.决策树
idea:特征选择–>构造决策树–>剪枝
核心概念:信息增益,信息增益比,基尼系数,SSE

决策树种类
2.KNN
idea:为了判断未知样本的类别,以所有已知类别的样本作为参照,计算未知样本与距离最近的K个已知样本的距离,根据少数服从多数的投票法则,将未知样本与K个最邻近样本中所属类别占比较多的归为一类。
视频链接
3.贝叶斯分类
idea:
(1)P(A|B)=P(AB)/P(B)
(2)P(A∩B) = P(A)*P(B|A)=P(B)*P(A|B)即P(A|B)=P(B|A)*P(A)/P(B)
(3)对于给出的待分类项,求解在此项出现的条件下各个类别出现的概率,哪个最大,就认为此待分类项属于哪个类别。通俗来说,就好比这么个道理,你在街上看到一个黑人,我问你你猜这哥们哪里来的,你十有八九猜非洲。为什么呢?因为黑人中非洲人的比率最高,当然人家也可能是美洲人或亚洲人,但在没有其它可用信息下,我们会选择条件概率最大的类别,这就是朴素贝叶斯的思想基础
(4)在这里插入图片描述
(5)第3步用贝叶斯定理算在这里插入图片描述

4.BP神经网络
idea:在这里插入图片描述
其中w权重,θ是自变量集,loss一般内核是训练集和实际值的差值
梯度下降

5.SVM
idea:SVM就是一个二分类器,它的目标是找到一个超平面,并使两类数据离超平面越远越好。

二、集成学习(组合方法)
Bagging
idea:所有基础模型都一致对待,每个基础模型手里都只有一票。然后使用民主投票的方式得到最终的结果
典型算法:随机森林(特点是有放回取样,随机选择样本和特征集)

Boosting
idea:Boosting 和 bagging 最本质的差别在于他对基础模型不是一致对待的,而是经过不停的考验和筛选来挑选出精英,然后给精英更多的投票权,表现不好的基础模型则给较少的投票权,然后综合所有人的投票得到最终结果。
(1)通过加法模型将基础模型进行线性的组合。
(2)每一轮训练都提升那些错误率小的基础模型权重,同时减小错误率高的模型权重。
(3)在每一轮改变训练数据的权值或概率分布,通过提高那些在前一轮被弱分类器分错样例的权值,减小前一轮分对样例的权值,来使得分类器对误分的数据有较好的效果。
典型算法:adaboost,gbdtboost,xgboost

三、聚类(无监督学习)
1.kmeans
idea:以空间中的K个点为中心进行聚类,对最靠近它的对象进行归类。通过迭代的方法不断的更新各聚类中心的值,直到最好的聚类结果。
(1)在N个数据中,随机挑选K个数据(也就是最后聚类为K类)做为聚类的初始中心。
(2)分别计算每个数据点到这K个中心点的欧式距离,离哪个中心点最近就分配到哪个簇中。
(3)重新计算这K个簇数据的坐标均值,将新的均值作为聚类的中心。
(4)重复2和3步骤,直到簇中心的坐标不再变换或者达到规定的迭代次数,形成最终的K个聚类。

2.层次聚类
idea:
(1)初始时将所有的样本当作类簇
(2)计算簇之间的距离,找到距离最小的簇c1,c2
(3)合并c1,c2
(4)重复2,3直到阈值

3.DBSCAN
视频
idea:类似于传销,不断地去发展下线
具体步骤:
(1) 首先确定半径r和minPoints. 从一个没有被访问过的任意数据点开始,以这个点为中心,r为半径的圆内包含的点的数量是否大于或等于minPoints,如果大于或等于minPoints则改点被标记为central point,反之则会被标记为noise point。
(2) 重复1的步骤,如果一个noise point存在于某个central point为半径的圆内,则这个点被标记为边缘点,反之仍为noise point。重复步骤1,直到所有的点都被访问过。
优点:不需要知道簇的数量
缺点:需要确定距离r和minPoints

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值