计划,1月内完成回顾
一、统计学习
输入——模型——输出
- 损失函数,衡量一次预测的好坏。0-1损失、平方损失、绝对损失、对数损失等
- 风险函数,衡量平均意义下模型的预测好坏。通常是sum(loss(xi))
- 在训练集不断优化降低风险,会导致模型复杂然后在测试集出现过拟合,预测能力较弱。随着模型复杂度提升,训练误差趋近0,而测试误差是先减小后增大。
- 真正好的模型:训练集上的误差要小,且模型要简单。因此为防止过拟合需要正则化,即sum(loss(xi)) + k*J(f),J(f)表示正则项,作为模型复杂度的惩罚(是其单调增函数),k作为调整参数。
- 正则化,通常是参数向量的L1,L2范数(回归问题中)
- k折交叉验证,数据分为k份,k-1份训练,剩下一份测试,迭代k次
- 判别模型,针对输入x,学习如何输出y,大部分模型都是判别模型(除了朴素贝叶斯和隐马尔可夫)
- 准确率=将正类预测为正类/(将正类预测为正类 + 将负类预测为正类)
- 召回率=将正类预测为正类/(将正类预测为正类 + 将正类预测为负类)
- F值是准确率和召回率的调和,两个指标都高时,F值才会高
11.回归,按输入变量的个数:一元回归和多元回归;按输入与输出的关系,可以是线性回归或非线性回归 - 回归,常用平方损失函数,通过最小二乘法求解。
二、感知机
- 感知机是二分类线性模型,目标:学习划分正负类的线性超平面,方法:利用梯度下降对损失函数进行极小化。是神经网络、svm的基础。具体理解方式不同,详见对应部分。
- 线性可分,如果存在一个超平面S,将正负实例完全分开,称为线性可分;否则数据集线性不可分
- 超平面的学习过程,等价于对f(x)=sign(wx+b)的寻找。wx+b=0作为分类超平面,当wx+b>0时输出+1,wx+b<0输出-1
- 令g(x)=wx+b,对于任意点x,其在超平面的投影的为xp,有以下公式推导:
-- x-xp=r(w / ||w||),括号内是单位向量
-- x=xp + r(w / ||w||)
-- g(x)=g(xp+r(w/||w||)),由g(xp)=0
-- g(x)=wxp+b+wr(w/||w||),由向量乘法,ww=|w||w|cos夹角
-- g(x)=r||w||,对于任意点x,其判别函数gx=wx+b 正比于其到超平面的距离* - 感知机学习算法,即通过降低误分类的损失 ,有以下推导(线性可分数据集,算法一定可以收敛)
-- 误分类的个数不是参数w,b的连续可导函数,不易优化
-- 使用L(w,b)=sum(-y(wx+b)/||w||),即误分类的所有点到超平面距离之和.g(x)=wx+b=r||w||
-- 简化1/||w||,L(w,b)=sum(-y*(wx+b)),显然损失函数在分类正确时为0,错误时非负
-- 感知机学习问题,转为对损失函数的最优化问题,使用随机梯度下降算法
-- 分别对w,b进行偏导,然后迭代优化
-- 步骤见《统计机器学习》P29,下面实例计算加深理解 - 感知机学习算法的对偶形式(批量更新?)
公式参考
推导公式可以看《模式分类》P178
三、KNN —k近邻法
四、朴素贝叶斯
五、决策树
六、随机森林与GBDT
七、逻辑回归
八、SVM
九、神经网络
https://hit-scir.gitbooks.io/neural-networks-and-deep-learning-zh_cn/content/chap1/c1s1.html
网友评论