svm 问题
原理: svm是一种二分类模型,基本模型是在特征空间中寻找==间隔最大化==的分离超平面的线性分类器
- [x] 线性可分时
- [x] 近似线性可分时
- [x] 线性不可分时
利用间隔最大化求得最优分离超平面,解是唯一的,此时分隔超平面所产生的分类结果也是鲁棒性最好的,对未知实例的泛化能力也是最强的
为什么要将求解SVM 的原始问题转换为对偶问题了?
- [x] 对偶问题更容易求解,引进了kkt约束条件,减小了搜寻的范围,但是确使原始的优化问题变得复杂,为了使问题变得易于处理,我们把目标函数和约束全部融入 拉格兰日函数中进行求解
- [x] 很自然的引入核函数 ,推广到非线性分类中
为什么svm要引入核函数 ?
当样本在原始空间线性不可分时,可将样本从原始空间映射到一个更高维的特征上,使得样本在这个特征空间内是线性可分的
svm 对缺失值比较敏感
没有处理缺失值的能力 ,svm希望样本在特征空间上线性可分,所以特征空间的好坏对svm很重要
逻辑回归
逻辑回归假设数据服从伯努利分布,通过极大化似然函数,运用梯度下降来求解参数,来达到二分类的目的
逻辑回归的损失函数为什么要使用极大似然函数,不选平方损失函数了?
因为如果使用平方损失函数,你会发现梯度更新的速度和sigmod函数本身的梯度是相关的,然而sigmod函数梯度在定义域内的梯度都不大于0.25
gbdt 和 xgboost
介绍
gbdt 通过采用加法模型(基函数的线性组合),不断减小训练过程的残差来达到将数据分类或者回归的算法
训练过程 : 通过多轮迭代,每轮迭代产生一个弱分类器,每个分类器在上一轮分类器的残差基础上进行训练,弱分类器一般选择 cart 树
gbdt 怎样生成特征
逻辑回归本身适合处理线性可分的数据,如果我们想让逻辑回归处理非线性的数据,其中一种方式便是组合不同特征,增强逻辑回归对非线性分布的拟合能力
- 1、显示的把数模型复杂度作为正则项加到优化目标中
- 2、公式的推导中用到了二阶导数,用了二阶泰勒展开
- 3、实现了分裂点寻找近似算法
- 4、利用的特征的稀疏性
- 5、数据事先排序并且以block形式存储,有利于并行计算
需要调节的参数:
通用参数;
- booster[默认gbtree]:选择每次迭代的模型,有两种选择,基于线性的模型&基于树的模型
- nthread 多线程控制
booster参数:
- max_depth[默认6]
- max_leaf_nodes 最大的节点或叶子的数量
- lambda 权重的L2正则化项
- alpha 权重的L1正则化项
介绍一下卷积神经网络
一般的全连接网络,考虑的是输入全局的信息而非局部,在卷积网络中,以图片输入为例,我们不在是一次性全部输入,而是通过局部卷积的方式,其中卷积网络中主要包含三个重要的概念:
- 感受野
- 共享权重
- 池化
参考 https://www.nowcoder.com/discuss/15168?type=2&order=3&pos=117&page=3&from=mnks201