06-logistic回归

数据集

  • 手写数字数据集

image-20210226164852513

这个数据集:训练集有60000个样本,测试集有10000个样本,类别有10个。

  • CIFAR-10 数据集

image-20210226165735229

这个数据集:训练集有50000个样本,测试集有10000个样本,类别有10个。

激活函数

  • sigmoid函数

σ(x)=11+ex\sigma(x) = \frac{1}{1+e^{-x}}

分类的结果是概率,结果需要在$[0,1]$中

其他的一些激活函数:

1.  erf(π2x)2.  x1+x23.  tanh(x)4.  2πarctan(π2x)5.  2πgd(π2x)6.  x1+x\begin{align} & 1.\ \ \mathbb{erf}(\frac{\sqrt{\pi}}{2}x) \\ & 2.\ \ \frac{x}{\sqrt{1+x^2}} \\ & 3.\ \ \tanh(x) \\ & 4.\ \ \frac{2}{\pi}\arctan(\frac{\pi}{2}x) \\ & 5.\ \ \frac{2}{\pi}\mathbb{gd}(\frac{\pi}{2}x) \\ & 6.\ \ \frac{x}{1+|x|}\\ \end{align}

logistic回归模型

  • 定义模型

y^=xw+b\hat y = x*w + b
  • 逻辑回归模型

y^=σ(xw+b)\hat y = \sigma(x*w+b)
  • 线性单元

image-20210226172204981
  • 逻辑回归单元

image-20210226172228412

损失函数

  • 线性函数损失函数

loss=(y^y)2=(xwy)2loss = (\hat y - y)^2 = (x*w-y)^2
  • 二分类损失函数

loss=(ylogy^+(1y)log(1y^))loss = -(y\log{\hat y}+(1-y)\log{(1-\hat y)})
  • 小批量损失函数

loss=1Nn=1Nynlogy^n+(1yn)log(1y^n)loss = -\frac{1}{N}\sum\limits_{n=1}^Ny_n\log{\hat y_n} + (1-y_n)\log{(1-\hat y_n)}

对比

  • 线性

image-20210226173657175
  • 逻辑回归

实现

  • 步骤

  1. 预处理数据

  2. 设计模型并使用类torch.nn.Module

  3. 构造损失函数和优化器

  4. 训练数据

  • 代码

  • 测试

image-20210227113654374

最后更新于

这有帮助吗?