一起学西瓜书03 线性模型

基本形式

一起学西瓜书03 线性模型

线性模型的常用形式可以写成这样f(x)=wTx+bf(x) = w^Tx + b,其中 w 和 x都是向量,这里的x可以有n个,相对应的w也有n个,展开来写其实就是y=w1x1+w2x2+......+wnxny = w_1x_1+ w_2x_2+......+ w_nx_n 我们将已知的x和y的数据传给机器,它会在学习后得到最佳的w和b,使得我们的线性模型得以确定
除此之外,线性模型具有可解释性,比如下面的例子
w直观的表现了各个属性在预测中的重要性,因为w本身就是权重的含义

一起学西瓜书03 线性模型
一起学西瓜书03 线性模型
本章将介绍几种经典的线性模型,先从回归任务开始,然后讨论二分类和多分类任务

线性回归

一起学西瓜书03 线性模型

一元线性回归

这个相对来说比较简单,在统计学里面已经学过
一起学西瓜书03 线性模型
大概解释一下上面的公式
我们已有的一堆数据(xi,yi)(x_i,y_i)现在我们需要求解的是权重w和b,假设我们的预测值为y,我们的目标就是让我们预测的y与真实值之间的差距最小,也就是上面公式最小二乘法的含义 将y^与y相减再平方,最后把每组的差距都累加
**那么问题来了,我们如何确定w和b的值呢 **
我们使用最常用的方法: 求导
因为有2个参数需要我们计算,所以就求它们的偏导就可以了,这里可能需要一点点数学基础
一起学西瓜书03 线性模型

多元线性回归

跟一元类似,只不过求偏导要在满秩的情况下可以得出一个结论
一起学西瓜书03 线性模型
一起学西瓜书03 线性模型
一起学西瓜书03 线性模型
一起学西瓜书03 线性模型
高维的数据使用梯度下降算法,这里推荐一下pytorch,梯度下降算法将在后面详细介绍
推导这里省略了,使用python编写一个案例来看看
一起学西瓜书03 线性模型
一起学西瓜书03 线性模型

对数线性回归

一起学西瓜书03 线性模型
一起学西瓜书03 线性模型

二分类任务

一起学西瓜书03 线性模型
理想的函数是单位阶跃函数,也就是在我们的二分类问题中,如果预测值大于0就算正确的结果,小于0就算错误的,如果刚好取到临界值,就可任意判断属于对的或错的
但是单位阶跃函数是不连续的,就不能求导,这里我们引入一个最常用的**函数 Sigmoid函数
如下图,它很好达到了我们想要的效果
一起学西瓜书03 线性模型
它的函数式如下图:我们求的导数是计算 lny1yln\frac{y}{1-y}
一起学西瓜书03 线性模型
我们采用极大似然法来估计w和b的值,详细的推导可以阅读西瓜书
一起学西瓜书03 线性模型

线性判别分析 LDA

一起学西瓜书03 线性模型
一起学西瓜书03 线性模型
最大化目标的含义
其中分母的含义是同类样例投影点的协方差

分子是类中心直接的距离,要尽量大
一起学西瓜书03 线性模型
一起学西瓜书03 线性模型
如何确定w
一起学西瓜书03 线性模型
一起学西瓜书03 线性模型

多分类问题

一起学西瓜书03 线性模型

一对一

一起学西瓜书03 线性模型

一对其余

一起学西瓜书03 线性模型

两种策略比较

一起学西瓜书03 线性模型
一起学西瓜书03 线性模型

多对多

一起学西瓜书03 线性模型
一起学西瓜书03 线性模型

类别不平衡问题

一起学西瓜书03 线性模型
在样本分布均匀的情况下
y1y>1\frac{y}{1-y}>1的时候,我们预测为正例
也就是说 预测的值大于0.5为正,小于0.5为负
但是当我们碰到样本分布不均匀的情况该怎么办,下面介绍一下处理的方法

  • 再缩放
  • 欠采样
  • 过采样
  • 阈值移动

再缩放

假设训练集是样本总体的无偏采样,我们可以通过再缩放,把m+和m-乘过去,然后结果与1进行比较
一起学西瓜书03 线性模型
在无法基于训练集类别数量推断真是几率的情况下,我们要采用以下几种办法

欠采样

删除一些数据
一起学西瓜书03 线性模型

过采样

增加一些数据
一起学西瓜书03 线性模型

阈值移动

一起学西瓜书03 线性模型

优化提要

这里推荐一下梯度下降算法
一起学西瓜书03 线性模型

总结

一起学西瓜书03 线性模型

相关文章: