Featured image of post 《神经网络与深度学习》 Ch3 线性模型

《神经网络与深度学习》 Ch3 线性模型

本章介绍了机器学习中最基础与常见的几种线性模型

术语表

决策函数

将输入结果直接映射到离散值(标签)的非线性函数,记作$g(\dot): \mathbb{R} \to \mathbb{D}$

常用决策函数

  • 二分类:符号函数$sgn(x)$
    • Logistic
    • 线性SVM
    • 感知器
  • 多分类:argmax函数
    • Softmax
    • 广义感知器

决策边界

在特征空间中所有满足$f(x;\omega)=0$的点所组成的超平面

线性可分

二分类线性可分

$$\exists \omega^,\forall (x,y) \in \mathcal{D},yf(x\;\omega^)>0$$

多分类线性可分

手段

一对多余

手段类似一颗决策树,其限制为节点若有子节点则一个节点是一类,另一个节点是一颗具有相同结构的子决策树。

为什么会有难确定类别区域?

因为在两个(及以上)决策区域所划不同的类别区域相交时,这几个决策区域给出了相悖的结果,不能判别哪个是正确的

一对一

手段是一个"决策森林",每一棵树用于区分这个样本点更相似哪一个类,即转换为$C_n^2$个二分类问题。

为什么会有难确定类别区域

因为在三个(及以上)决策区域所划不同类别区域相交时给出相悖结果

Argmax方式

这是对一对多余的改进,须C个判别函数

思路

如何判别一个样本属于类c,只需找到一个类c使得$$\forall\tilde{c}(c\neq\tilde{c}),f_c>f_\tilde{c}$$ 即$$y=\overset{C}{\underset{c=1}{\operatorname{argmax}}}f_c(x;\omega_c)$$

多类线性可分

若存在C个权重向量$\omega^_1,…,\omega^C$ 使得第c类的所有样本都满足$$\forall\tilde{c}(c\neq\tilde{c}),f_c>f\tilde{c}$$则称D是线性可分的。

二分类线性模型

Logistic回归

使用Logistic函数作为激活函数。标准Logistic函数记作$\sigma()$

几率

样本x为正反例后验概率的比值,即$$odd=\frac{p(y=1|\mathbf{x})}{p(y=0|\mathbf{x})}$$ 所以$$\omega^Tx=ln(odd)$$

损失函数

使用交叉熵损失函数]],优化方法使用批量梯度下降法或更高阶的优化法如[[牛顿法

(狭义)感知机

学习思路

错误驱动的在线学习算法,每次分错样本($y\mathbf{\omega}^T\mathbf{x}<0$)就用该样本更新权重。$$\omega \leftarrow \omega+yx$$。这种感知机的损失函数为$$\mathcal{L}(\omega;x,y)=max(0,y\mathbf{\omega}^T\mathbf{x})$$

感知机的收敛性

令$$R=\underset{n}{\operatorname{max}}||x^{(n)}||$$而$\gamma$是类间间隔。 若训练集D线性可分,则两类感知机权重更新次数不超过$\frac{R^2}{\gamma^2}$

改良

目标:

  • 强化泛化能力
  • 强化鲁棒性
    • 迭代次序在后面的错误样本比前面的错误样本影响更大
    • 需要模型有记忆能力
投票感知器

令$\tau_k$是第k磁更新权重是迭代次数,则置信系数$c_k$设置为从$c_k=\tau_{k+1}-\tau_k$(为什么?因为一次参数更新迭代次数越多使用的样本就越多,越和样本实际情况贴近)。 $$\hat{y}=sgn(\sum_{k=1}^{K}(c_ksgn(\omega_K^Tx)))$$

平均感知器

减少投票感知器带来的额外开销,使用参数平均来减少参数数量 $$y=sgn(avg(\omega^T)x)$$ 每次迭代时更新$\overline{\omega}$,$$\overline{\omega}\leftarrow \overline{\omega} +\omega_t$$

多分类线性模型

Softmax回归

什么是Softmax函数

Softmax函数是一个将多个标量映射为一个概率分布的函数。 定义为$$softmax(x_k)=\frac{exp(x_k)}{\sum^K_{i=1}exp(x^i)}$$ 目标为$x_1,…,x_K \to z_1,…, z_K$,且$z$接受约束如下:$$\begin{aligned}z_k \in (0,1), \forall k\ \sum_{k=1}^Kz_k=1\end{aligned}$$ 简写为$$\hat{z}=\frac{exp(\mathbf{x})}{ \mathbf{1}^T_K exp(\mathbf{x}) }$$

Softmax回归

$$\hat{y}=\overset{C}{\underset{c=1}{\operatorname{argmax}}} \mathbf{\omega^T_c x}$$

参数学习

使用交叉熵损失函数,采用梯度下降法 因为权重向量是冗余的,所以Softmax回归常常要用正则化约束其参数,也可利用此特性避免上溢出问题

广义感知器

支持向量机

之后单独开一节来讲。

使用 Hugo 构建
主题 StackJimmy 设计