Sparse Autoencoder

Tutorial of Unsupervised Feature Learning and Deep Learning by Andrew Ng

Neural Networks

activation function:

  1. sigmoid function: 值域[0,1]
    \begin{equation}
    f(z) = \frac{1}{1+\exp(-z)}
    \end{equation}

一阶导数为:$f’(z) = f(z)(1-f(z))$

  1. tanh function (hyperbolic tangent) 双曲正切函数: 值域[ − 1,1]

\begin{equation}
f(z) = \tanh(z)=\frac{e^z-e^{-z}}{e^z+e^{-z}}
\end{equation}

一阶导数为:$f’(z) = 1-(f(z))^2$

Neural Network model

“feedforward neural network”
input layer $\to$ hidden layer $\to$ output layer

每层的神经元数量不计bias unit(bias unit对应intercept term,y=Wx+b 中的b)

设神经网络有$n_l$层,则图中 input layer (记为$L_1$,3 input units) $\to$ hidden layer ($L_2$,3 hidden units; $L_3$,2 hidden units) $\to$ output layer (记为$L_{n_l}$,2 output units)

第$l$ 层对应的参数为$W^l,b^l$,则

\begin{equation}
z^{l+1} = W^l a^l+b^l
\end{equation}

\begin{equation}
a^{l+1} = f(z^{l+1})
\end{equation}

$a^{l+1}$是一个向量,代表第$l+1$层的activation。其中$a^1$是输入x,$a^{n_l}$为输出y

feedforward neural network, the connectivity graph does not have any directed loops or cycles

Backpropagation Algorithm

反向传播算法从输出层开始,反向计算每个节点的残差,并用这些残差计算代价方程对每一个参数的偏导数。

数学原理

中文译者有给出数学证明

Gradient checking and advanced optimization

Autoencoders and Sparsity

Visualizing a Trained Autoencoder

Sparse Autoencoder Notation Summary