目录
- 概率问题
- 各种对比
- 第一章 绪论
- 第二章 模型评估与选择
- 第三章 线性模型
- 第六章 支持向量机SVM
- 第四章决策树DT
- 第八章集成学习
-
- 1.根据霍夫丁不等式,多个弱学习器集成的错误率指数下降
- 2.AdaBoost每轮调整样本权重,更关注上一次没学好的样本
- 3.分类器组合(相当于加权投票)
- 4.AdaBoost:加性模型,损失是指数函数,学习算法为前向分步算法时的二分类学习方法
- 5.GBDT:二叉cart树,分类、回归,树的累加没有α系数,先计算已有t-1树的负梯度,在平方损失下就是残差,让待学习的树去拟合负梯度(残差)
- 6.XGBoost
- 7.AdaBoost vs GBDT
- 8.GBDT vs XGBoost
- 9.GBDT vs LR
- 10.Bagging:基于自助采样,造好多树,因为采样所以树都不一样;分类投票,回归平均
- 11.RF随机森林:在Bagging基础上,引入随机属性选择,随机选k个(推荐k=log2 d)
- 12.随机森林简单易实现、计算开销小,性能不错
- 13.Boosting vs Bagging
- 14.为什么决策树当基分类器:
- 15.Bagging注重方差,Boosting注重偏差
- 第九章 聚类
- 深度学习
-
- 1.优化算法:SGD、Adam、牛顿法
- 2. 激活函数
- 3. 平方损失 & 交叉熵损失
- 4. BN、LN等
- 5.dropout
- 6.过拟合与欠拟合
- 7. 参数初始化方法
- 8. RNN & LSTM & GRU
- 9. 梯度消失和爆炸怎么解决
- 10.交叉熵、相对熵(KL散度)、互信息
- 11. LSTM为什么用sigmoid和tanh
- 12. LSTM的tanh能不能换ReLU
- 13. pytorch实现一个attention
- 14. [1574.删除最短的子数组使剩余数组有序](https://leetcode-cn.com/problems/shortest-subarray-to-be-removed-to-make-array-sorted/)
概率问题
各种对比
LR vs SVM
LR 对比 SVM
- LR是参数模型,SVM是非参数模型
- LR用对数似然函数,SVM用hinge loss
- SVM只考虑支持向量,LR全局
- LR给概率,SVM只能分类
如何选择LR和SVM
- 如果Feature的数量很大,跟样本数量差不多,这时候选用LR或者是Linear Kernel的SVM
- 如果Feature的数量比较小,样本数量一般,不算大也不算小,选用SVM+Gaussian Kernel
- 如果Feature的数量比较小,而样本数量很多,需要手工添加一些feature变成第一种情况。或者上深度学习
决策树 vs LR
GBDT vs LR
- 决策边界:线性回归是一条直线;LR是曲线;GBDT可能是多条线
- GBDT并不一定总好于其他(没有免费午餐原则)
AdaBoost vs GBDT
- AdaBoost:调整样本权值;组合方式加权多数表决;一般用来分类
- GBDT:向负梯度方向优化;将弱分类器叠加;用cart树;目标函数可选多;一般用来回归
GBDT vs XGBoost
- Xgb是GBDT的工程实现
- XGBoost显示加入了正则项,GBDT在构建完树之后才剪枝
- GBDT使用一阶导,XGB用了二阶泰勒展开
- GBDT用cart树,XGB支持多种,包括线性分类器
- GBDT每轮用全部数据,XGBoost类似随机森林,支持采样(列抽样)
- GBDT没有缺失值处理,XGBoost能处理
- XGBoost并行计算
CART vs ID3 vs C4.5
Boosting vs Bagging
第一章 绪论
第二章 模型评估与选择
1.评估方法
留出法、交叉验证、自助法(有放回采样,bagging,没选中的概率1/e=0.368)
2.评估指标
(1)查准率Precision P = TP/(TP + FP), 查全率Recall R = TP/(TP+FN)
p-r曲线比面积,F1是调和平均,或者Fβ是加权调和平均
(2)ROC与AUC
TPR = TP/TP+FN 敏感性 所有正样本中有多少被预测为正例
FPR = FP/TN+FP 特异性 所有负样本中有多少被预测为正例
当正负样本的分布发生变化时,ROC曲线的形状能够基本保持不变,而P-R曲线的形状一般会发生较剧烈的变化。
(3)AUC计算方法
AUC是衡量二分类模型优劣的一种评价指标,表示预测的正例排在负例前面的概率。
-
计算梯形面积
-
算rank
-
另一种物理意义
3.泛化误差期望 = 偏差+方差+噪声
4.归一化
Min-Max Scaling、Z-Score Normalization,决策树不需要归一化,其它通过梯度下降的要
5.正则化
Q:L1比L2更稀疏
(1)梯度值
L1:
L2:
L2和L1在w的系数不同,导致w趋向于0的时候参数减小就很慢,而L1就容易变0。
(2)先验概率
L1范数:拉普拉斯分布 L2范数:高斯分布
(3)等高线图形方法
(4)函数叠加方法
Q:为什么权重变小可以缓解过拟合
A:在过拟合的时,拟合函数的系数往往非常大。过拟合,就是拟合函数需要顾忌每一个点,最终形成的拟合函数波动很大。在某些很小的区间里,函数值的变化很剧烈。这就意味着函数在某些小区间里的导数值(绝对值)非常大,由于自变量值可大可小,所以只有系数足够大,才能保证导数值很大。
而正则化是通过约束参数的范数使其不要太大,所以可以在一定程度上减少过拟合情况。
6.过拟合与欠拟合
(1)降低过拟合:
- 扩增数据
- 降低模型复杂度(采取合适的模型、降低特征数量、BN、Dropout、EarlyStopping)
- 正则化
- 集成学习
(2)降低欠拟合:
- 添加特征
- 增加模型复杂度
- 减小正则化系数
第三章 线性模型
1.线性模型的优点
形式简单、易于建模、有很好的可解释性
2.一元线性回归
基于均方误差最小化来进行模型求解的方法称为“最小二乘法”
对w和b求偏导得0后解得:
3.多元线性回归
X为满秩矩阵或正定矩阵时
反之,有多个解,可引入正则化进行约束选择
4.对数几率回归(LR)
(1) 二分类,广义线性模型,用Sigmoid
(2)优点
- 形式简单,模型的可解释性非常好
- 模型效果不错,可并行开发
- 训练速度较快
- 资源占用小
- 方便输出结果调整(输出的是概率,定阈值就行)
(3)缺点
- 准确率不高(模型简单);
- 难处理数据不平衡;
- 无法筛选特征。
(4)对数损失函数==极大似然函数取对数
(5)极大似然法求解w和b
对率回归模型最大化“对数似然”(loglikelihood),即令每个样本属于其真实标记的概率越大越好
(6)推导
根据
,
有
一阶导:
二阶导:
梯度下降法:
牛顿法:
(7)为什么用极大似然而不用例如平方损失做优化
用极大似然函数梯度下降和xy相关,与sigmoid无关,比较稳定,如果用平方损失函数更新就与sigmoid的梯度相关,其梯度不大于0.25,训练缓慢。
(8)重复特征对结果没啥影响,就是慢,相当于每个特征作用变为原来1/n
(9)用Sigmoid的理由
- 伯努利分布属于指数族分布,带入后求解得到映射函数为Sigmoid
伯努利分布和指数族分布的概率公式进行对比,可以得到 T ( Y ) = Y T(Y) = Y T(Y)=Y,然后 h ( x ) = E ( T ( Y ) ) = E ( Y ) = θ h(x) = E(T(Y)) = E(Y) = \theta h(x)=E(T(Y))=E(Y)=θ,其中 η = w T x = l n θ 1 − θ \eta = w^Tx = ln \frac{\theta}{1-\theta} η=wTx