本文主要讲解误差逆传播算法的实现。
BP网络
在将单层感知器转换为多层神经网络之后,其损失函数可以使用下面的军方误差的形式去表示,具体如下:
$$
E_k = \frac{1}{2} \sum_{j=1}^{l} (\hat{y}_j^k - y_j^k)^2
\tag{1}
$$
本文主要讲解误差逆传播算法的实现。
在将单层感知器转换为多层神经网络之后,其损失函数可以使用下面的军方误差的形式去表示,具体如下:
$$
E_k = \frac{1}{2} \sum_{j=1}^{l} (\hat{y}_j^k - y_j^k)^2
\tag{1}
$$
贝叶斯判定该准则被描述为:为了最小化总体风险,只需要在每个样本上选择那个能使条件风险$R(c|x)$最小的类别标记,即:
$$
h^\star (x) = \arg\min_{c \in \mathcal{Y}} R(c | x)
\tag{1}
$$
此时,$h^\star$称作贝叶斯最优分类器。
注:此时的$h^\star$并不是一个可以计算的值,只是一个贝叶斯最优分类器的理论指导。
形式一:
$$
\begin{align}
\min_x \quad & f_0(x) \\
s.t.\quad & f_i(x) \le 0 , \quad i = 1,\dots,m \\
& h_i(x) = 0, \quad i = 1,\dots,p
\end{align}
\tag{1}
$$
$$
\left \lbrace
\begin{matrix}
\omega^T\mathcal{x_1} + b = 0 \\
\omega^T \mathcal{x_2} + b = 0
\end{matrix}
\right .
\to \omega^T(\mathcal{x_1} - \mathcal{x_2}) = 0 \to \omega^T \mathcal{x} = 0
\tag{1}
$$
熵(Entropy),在本文中是指信息熵(Information
Entropy),简单的来说,就是指一件事情的不确定性的度量,其单位为(Bit)。相对的,信息的单位也是Bit,刚好是信息熵的反义词,是指一件事情的确定性。
首先,引入熵的计算公式:
$$
Ent(D) = - \sum_k^{| \mathcal{Y} |} P_k log_2{P_k}
\tag{1}
$$
自变量↓\因变量→ | 标量$y$ | 向量$\mathbf{y}$ | 矩阵$\mathbf{Y}$ |
---|---|---|---|
标量$x$ | $\frac{\partial y}{\partial x}$ | $\frac{\partial \mathbf{y}}{\partial x}$ | $\frac{\partial \mathbf{Y}}{\partial x}$ |
向量$\mathbf{x}$ | $\frac{\partial y}{\partial \mathbf{x}}$ | $\frac{\partial \mathbf{y}}{\partial \mathbf{x}}$ | $\frac{\partial \mathbf{Y}}{\partial \mathbf{x}}$ |
矩阵$\mathbf{X}$ | $\frac{\partial y}{\partial \mathbf{X}}$ | $\frac{\partial \mathbf{y}}{\partial \mathbf{X}}$ | $\frac{\partial \mathbf{Y}}{\partial \mathbf{X}}$ |
分子布局($numerator\ layout$)和分母布局($denominator\ layout$ )。
数据集:
$$
D = \lbrace (x_1, y_1),(x_2, y_2),\dots,(x_n, y_n) \rbrace \\
x \in \mathbb{R}^p; y \in \mathbb{R}
\tag{1}
$$
其中,每一个$x$都是一个$p$维的列向量,$y$ 是一个数。
$$
\left [
\begin{matrix}
1 & 1 & 1 \\ 1 & 1 & 1 \\ 1 & 1 & 1
\end{matrix}
\right ] * \frac{1}{9}
\tag{1}
$$