机器学习算法原理归纳总结:回归、聚类、支持向量、推荐、降维与神经网络
本文重点参考:
唐宇迪博士的课程PPT
[特别鸣谢]
完整版资料下载:机器学习算法原理详解+代码实战
1.回归算法
2.逻辑回归
3.决策树
-
决策树实际上是根据样本的特征个数对样本进行一步一步的细分,每个节点都将把样本按照一个衡量标准进行筛选,直到所有的样本筛选完成为止,而先筛选出来的样本将被作为前边的节点,后被筛选出的节点顺序也将往后排序
-
决策树的衡量标准为信息熵:
-
决策树过拟合风险很大
4.集成算法
Bagging模型,全称bootstrap aggregation,其实质为并行训练一堆分类器
- 典型代表:随机森林(随机:数据采样随机,特征选择随机;森林:很多个决策树并行放在一起)
4.1 随机森林
-
构造树模型
-
集成:之所以要进行随机,是要保证泛化能力,如果树都一样,那就没意义了
-
优势:
- 它能够处理很高维度(feature很多)的数据,并且不用做特征选择
- 在训练完后,它能够给出哪些feature比较重要
- 容易做成并行化方法,速度比较快
- 可以进行可视化展示,便于分析
4.2 Boosting模型
-
典型代表:AdaBoost, Xgboost
-
Adaboost会根据前一次的分类效果调整数据权重
-
Stacking可以堆叠各种各样的分类器(KNN,SVM,RF等等),分阶段:第一阶段得出各自结果,第二阶段再用前一阶段结果训练
5.聚类算法
5.1 K-MEANS
5.2 DBSCAN
- 全称:Density-Based Spatial Clustering of Applications with Noise
6.贝叶斯算法
-
主要解决的问题:
- 正向概率:假设袋子里面有N个白球,M个黑球,你伸手进去摸一把,摸出黑球的概率是多大
- 逆向概率:如果我们事先并不知道袋子里面黑白球的比例,而是闭着眼睛摸出一个(或好几个)球,观察这些取出来的球的颜色之后,那么我们可以就此对袋子里面的黑白球的比例作出什么样的推测
-
贝叶斯公式:
7.支持向量机
- 分类问题:将两个集群分隔开来的距离最近的向量成为支持向量,详解参考:https://blog.csdn.net/yohnyang/article/details/124081760
8.LDA与PCA算法
8.1 线性判别分析(LDA)
- 全称:
Linear Discriminant Analysis
- 用途:用于数据预处理中的降维、分类任务
- 目标:LDA关心的是能够最大化类间区分度的坐标轴成分,将特征空间(数据集中的多维样本)投影到一个维度更小的K维子空间中,同时保持区分类别的信息
- 原理:投影到维度更低的空间中,使得投影后的点,会形成按类别区分,一簇一簇的情况,相同类别的点,将会在投影后的空间中更接近方法
8.2 主成分分析(PCA)
- 用途:降维中最常用的手段
- 目标:提取最有价值的信息(基于方差)
9.EM算法
-
全称:Expectation-Maximization,期望最大化
- 最大似然
- EM算法推导
- GMM(高斯混合模型)
9.1 最大似然估计
- 一个栗子:假如你去赌场,但是不知道能不能赚钱,你就在门口堵着出来一个人就问一个赚了还是赔了,如果问了5个人都说赚了,那么你就会认为,赚钱的概率肯定是非常大的。
- 已知:(1)样本服从分布的模型, (2)观测到的样本
求解:模型的参数 - 总的来说:极大似然估计就是用来估计模型参数的统计学方法。
9.2 EM算法
-
算法原理推导:
-
EM算法流程
- 初始化分布参数 θ \theta θ
- E-Step:根据参数 θ \theta θ 计算每个样本属于 zi 的概率(也就是我们的Q)
- M-Step:根据Q,求出含有 θ \theta θ 的似然函数的下届并最大化它,得到新的参数 θ \theta θ
- 不断的迭代更新下去
9.3 GMM(高斯混合模型)
- 数据可以看作是从数个 Gaussian Distribution 中生成出来的
- GMM 由 K 个 Gaussian 分布组成,每个 Gaussian 称为一个“Component”
- 类似k-means方法,求解方式跟EM一样
- 不断的迭代更新下去
10. 神经网络
-
常规方法:
-
实现流程:
- 1.预处理你的数据:对你数据中的特征进行归一化(normalize),让其具有零平均值(zero mean)和单位方差(unit variance)。
- 2.如果数据是高维数据,考虑使用降维方法,比如PCA
- 3.将数据随机分入训练集和验证集。按照一般规律,70%-90% 数据作为训练集
- 4.在验证集上调优,尝试足够多的k值,尝试L1和L2两种范数计算方式。
-
关于损失函数:
-
神经网络,详解-> https://blog.csdn.net/yohnyang/article/details/124516301
-
模型组成结构:
-
举例:
转载:https://blog.csdn.net/yohnyang/article/details/128316144
查看评论