作者:mizrke | 来源:互联网 | 2023-09-04 16:26
基本概念:
机器学习:使用算法学习概率分布或者函数的过程(抽象版);从样本中按照一定的计算学习规则的过程(简化版);
统计学习:基于数据构建概率模型的学习方法,是统计学、概率论、信息论、最优理论及计算科学等的交叉。
统计学习方法三要素:模型、策略、算法。
深度学习:多层神经网络的学习方法
模型 | 要学习的概率分布或函数(假设空间) |
策略 | 学习准则或者如何选择模型 |
算法 | 如何通过输入计算得到输出 |
深度学习和多层神经网络的区别:
深度学习 | 多层神经网络 | 深度模型 |
一系列学习方法 | 一种模型 | 一系列模型 |
为了让层数较多的多层神经网络可以训练,能够work而演化出来的一系列的新方法 | 就是很多层的神经网络 | CNN(1993) DBN(2006) DBM |
基于统计学习的多层神经网络训练效果差原因:
其通过BP(反向传播)算法来训练,通过输出和标签值的比较和调整,迭代训练整个网络,直到符合标准(整体是一个梯度下降算法)。而当层数增加(7层以上),残差传播到最前面的层已经变得很小,即出现梯度扩散/消失(根源在于非凸目标代价函数导致求解陷入局部最优),影响精度。
所以传统的神经网络训练,一般只能训练3层以下的网络。
解决办法:使用新的激活函数ReLU,缓解梯度消失。
深度学习的改进之处:
新的学习方法:
(1)通过数据学习得到初始值,更接近全局最优。
(2)新的激活函数
(3)新的权重初始化方法
(4)新的损失函数
(5)新的过拟合方法等
新的结构:
CNN:卷积神经网络,视野,权值共享等。(有监督)
LSTM:长短期记忆网络,避免长期依赖的长期记忆机制。
GRU:Gated Recurrent Unit,混合了LSTM的忘记门和输入门,混合了细胞状态和隐藏状态。
据说效果都差不多,但是GRU结构更简单,计算更快。
更多详情参考:
https://www.zhihu.com/question/26017374
总的来说,目前因为有imgaenet等数据库的存在,使得监督学习得以进行,所以现在更多地是进行有监督的深度学习。
而最近谷歌也开源了超大型视频数据库,视频长达50万小时。标签经过多重筛选设置。
深度学习有监督和无监督训练:http://blog.csdn.net/u012526120/article/details/49591213
一开始(1993年左右)CNN由于没有很好地学习算法和硬件条件,无法很好地完成学习,后来的2006年的DBN基于深度置信网络和DBM(深度波尔兹曼机)提出的无监督学习算法,相对其它传统的统计学习算法能取得更好的效果,深度学习被重新重视。
2012年,imagenet竞赛中的Alexnet模型取得优异成绩后,带动了有监督深度学习的热潮。
经典算法: 机器学习算法面试小结
回归 | one | all |
线性 | 最优化误差函数&#xff08;最小二乘法<极大似然估计>&#xff09; | 优点&#xff1a;简单&#xff0c;容易理解 缺点&#xff1a;对非线性拟合不好 |
局部加权回归
| 对数据赋权值、斤大远小类似局部回归、然后组合&#xff1f; | 优点&#xff1a;可以学习高维度的数据 缺点&#xff1a;暂时不知 赋权值&#xff1a;高斯核&#xff08;正太分布、近大原小&#xff09; |
树回归 | 分类后回归
| 优点&#xff1a;可以处理高维数据&#xff0c;切分后回归即可 缺点&#xff1a;结果不易理解抽象化 |
逻辑
| 逻辑函数映射到(0,1),分类 |
|
聚类(Partition-based methods) | one | all |
K-Means&#xff08;补分类过程&#xff09; | 按N个最近的数据中的多数分 | 1.懒惰学习算法 2.一股脑塞进内存&#xff0c;计算出最"近"的N个点&#xff0c;然后将均值输出。 |
Knearl-K-Means | 将不规则数据投射到更高层空间 | 1.在必要的时候&#xff0c;用核方法投射高更高维度&#xff0c;进行划分。结果再投射回二维。 |
其它&#xff0c;基于圈圈大小&#xff0c;圈圈内样本数量划分的。 | https://www.zhihu.com/question/34554321/answer/64372216 |
|
分类模型 | one | all |
决策树 | 定义&#xff1a;以最纯净的方式进行二分类迭代&#xff0c;形成一棵2叉树。
应用场景&#xff1a;理解数据的构成/结构&#xff0c;实际的分类使用一般会使用集成的方法。 | 缺点&#xff1a; 1.容易过拟合&#xff0c;如果停止条件是每个叶子节点只有一种分类&#xff0c;算法就会尽量使得叶子结点完美纯净。 1.5.于是降低分类停止条件&#xff0c;设置阈值&#xff08;分类条件和分类的相关程度&#xff08;叶子结点纯净度&#xff09;、叶子结点树木&#xff09;。 2.还是容易过拟合。&#xff08;噪音数据过多&#xff0c;无法准确分割&#xff1b;缺少代表性数据&#xff0c;无法分割出该类&#xff1b;多重比较&#xff0c;量大了选出来的优秀可能只是随机优秀。&#xff09; 3.于是迭代裁剪叶子节点&#xff0c;进行交叉验证&#xff0c;以最优&#xff08;泛化能力最好&#xff09;树为最终模型。&#xff08;可能需要进行蛮多次裁剪&#xff1a;如果每处叶子节点都只留一个代表性节点&#xff09;
优点&#xff1a; 0.非参数学习&#xff1a;不必考虑是否线性可分、有离群点等 1.可读性比较好&#xff0c;具备良好的可描述性。 2.效率高&#xff0c;一次构建&#xff0c;反复使用&#xff1f;&#xff1f;&#xff08;哪个模型不是的呢&#xff09;&#xff0c;计算次数最多为树的深度。 常用算法&#xff1a;ID3和 C4.5(用信息增益比确定分类特征) 信息增益比 集成学习了解一下&#xff08;boost和adboost&#xff09; 模型选择了解一下&#xff08;真正例率、ROC曲线、AUC值、代价曲线&#xff09;
随机森林和梯度提升树&#xff08;回归树迭代减小误差&#xff09;了解一下 |
随机森林 | 综合多棵决策树的分类效果&#xff0c;防止过拟合
应用场景&#xff1a;流失客户类别预测、风险评估
| 解决的问题&#xff1a;决策树的过拟合和噪声数据问题 解决方案&#xff1a;两个随机&#xff1a;随机样本、随机特征。 更多优点&#xff1a; - 可处理高维度数据&#xff08;不用做特征选择&#xff09;
- 数据集适应能力强&#xff1a;离散数据、连续型数据都可以处理。随机抽样、特征离散化处理。
缺点&#xff1a;有过拟合风险&#xff08;降低树的深度、裁剪叶节点、降低子树随机选取特征和样本量&#xff09; 关键在于&#xff1a;最小叶结点书目、最大子树树木、每课子树的数据数量、特征数量等的调整。&#xff08;玄学范畴&#xff09; 说说随机森林
|
SVM | 定义&#xff1a;从几何的角度划分数据&#xff0c;特点是考虑到了潜在的数据&#xff0c;使得潜在数据都能很比较好地进行划分。&#xff08;具有鲁棒性&#xff09;
应用场景&#xff1a;都可以试试&#xff1f;,数据量不大的分类问题
| 本质&#xff1a;基于概率?? 优点&#xff1a;不易过拟合,适合小样本。&#xff08;一天以内可以训练出来模型的量&#xff09; 缺点&#xff1a;内存密集型&#xff0c;涉及到对样本的随机访问。核函数选择是关键&#xff0c;但是这是属于玄学。 核函数选择&#xff1a;样本量大时&#xff0c;可想办法增加特征&#xff0c;用线性核&#xff08;统一映射和不映射的情况&#xff0c;不区分&#xff09;的SVM或者是线性回归。如果样本量不大&#xff0c;可采用高斯核的SVM&#xff08;映射到无穷维度&#xff09;。 优点&#xff1a;具有鲁棒性、有考虑到潜在的数据 |
多层神经网络 | 多种刺激&#xff0c;多次处理&#xff0c;不同权重&#xff0c;模拟人脑神经处理。
应用场景&#xff1a;
| 缺点&#xff1a; - 随机的初始化参数
- 对不相关参数较敏感&#xff08;图片&#xff09;
- 部分有意义参数无法提取&#xff08;图片分类&#xff09;
- 增加层数&#xff0c;会产生梯度扩散&#xff08;往后的参数&#xff09;
- 没有时间维度
优点&#xff1a; - 对音频和图像比其它分类算法有效
- 黑盒模型&#xff0c;只需要处理输入和输出即可&#xff0c;不需要关注内部函数
深度学习中的激活函数与梯度消失 非常详细&#xff08;梯度表达式&#xff09;
深度学习——激活函数Sigmoid/Tanh/ReLU
大白话讲解BP算法 |
深度学习模型 | 应用场景&#xff1a;图像识别、文本识别、游戏操作学习
| 缺点&#xff1a; - 黑盒模型&#xff0c;解释型不好
- 对不相关参数较敏感&#xff08;图片&#xff09;
- 部分有意义参数无法提取&#xff08;图片分类&#xff09;
优点&#xff1a; - 通过数据计算初始权值
- 可以学习的层数更深&#xff0c;可达到上千层
- 有多种新模型&#xff1a;LSTM可以释放长期记忆的存储&#xff0c;达到类似效果。(RNN无法作到)
- GRU简化版本的LSTM&#xff0c;设置了两种机制&#xff1a;更新和重置。比lstm少了一种。&#xff08;输入输出和遗忘机制&#xff09;
|
朴素贝叶斯 | 贝叶斯公式&#xff1a; P(Y|X)&#61;P(X|Y)P(Y)P(X)&#xff1a;P(Y|X)&#61;P(X|Y)P(Y)P(X) / P(X) 条件独立假设&#xff1a;事件X、Y互相独立 朴素贝叶斯&#xff1a;拆Y P&#xff08;X|Y1&#xff09;P&#xff08;X|Y2&#xff09;...P&#xff08;Y1Y2&#xff09;/P(X) &#xff08;要求事件Y在X发生的条件下发生的概率&#xff0c;即X、Y的概率为先验概率&#xff0c;通过易获取的X在Y发生的情况下发生的概率求解。 其中&#xff0c;XY相互独立&#xff0c;XY可拆解&#xff0c;此处拆解Y&#xff0c;可分解出多个贝叶斯公式&#xff0c;分别求解&#xff09;
应用场景&#xff1a;文本分类&#xff08;垃圾邮件识别、情感分析&#xff09;
| 缺点&#xff1a; - 独立性不能得到很好的验证
- 有些词语重复出现&#xff0c;可能影响准确计算。
- 有些词语未出现&#xff0c;P&#xff08;y&#xff09;&#61;0使得整个式子等于零
- 自然语言处理中语序问题&#xff0c;贝叶斯无法处理语序
优点&#xff1a; - 即使独立性不那么好的情况&#xff0c;模型也好用。
- 模型简单&#xff0c;有理论基础
- 易拓展&#xff0c;若shu
一些技巧&#xff1a; - 多项式模型&#xff08;重复计算输出*词频&#xff09;、伯努利模型&#xff08;只算一次&#xff09;、混合模型。&#xff08;区别伯努利丢掉了词频&#xff0c;统计欠完美&#xff09;
- 平滑技术
- N元语言模型&#xff0c;依据链式法则将词语之间的依赖关系用概率乘积表示。
|
逻辑回归 | 定义&#xff1a;通过最逻辑回归函数&#xff1a;正则化投射到特定值域。
应用场景&#xff1a;数据类别间大致是线性可分的分类问题
| 缺点&#xff1a; 优点&#xff1a; - 很好的概率解释
- 正则化&#xff08;引入先验分布&#xff0c;缩小解空间&#xff0c;减小求出错误解的可能性&#xff09;
|
LDA线性判别分析 | 降维/分类
应用场景&#xff1a;
| 缺点&#xff1a; - 不适合非高斯分布的样本
- 依赖均值而非方差时&#xff0c;分类效果比PCA好
- 降维类别数有限制&#xff1a;k-1
- 可能过拟合
优点&#xff1a; |
Q&A&#xff1a;
集成学习&#xff1a;
Something needed to be explored more
- 分类学习算法——一个统一的视角
- 决策书的结点裁剪
- 特征工程——特征离散化&#xff0c;特征交叉
- 回归树和分类树
- 多层神经网络
- 梯度表达式和sigmod函数的关系
感知器为什么是支持向量机的基础&#xff1f;
链式法则是什么&#xff1f;
- 局部加权回归是如何处理的
各种算法的代码实现
具体算法数学理解