ANNs
人工神经网络
神经网络解决的问题是线性不可分的问题,但线性不可分问题可以拆分为线性运算的组合
1.神经网络结构
可以将感知机看作是一种单层神经网络,可以解决线性问题
那么多层感知机就被称为神经网络,用来解决线性不可分问题
2.模型表示(全链接)
假设$z_i^{(l)}$是第l层第i个神经单元的的净输入,$a_i^{(l)}$是第l层第i个神经单元的的激活值,$g_l(.)$是第l层的激活函数
最终模型的表达无法表示,但每一层的均可知:
前向传播:$\vec x =\vec {a^{(0)}}\rightarrow (\vec {z^{(1)}}\rightarrow\vec {a^{(1)}})\rightarrow……\rightarrow(\vec {z^{(l)}}\rightarrow\vec {a^{(l)}}=h_{\vec w,\vec b}(x))$
3.损失函数(多分类为例)
设最后一层的激活函数是softmax,即$\vec {a^{(l)}} = softmax(\vec {z^{(l)}})$
5.优化方法
1.梯度下降
2.反向传播
7.自动梯度计算
数值微分,符号微分(对公式求导)、自动微分$\Rightarrow$计算图
8.激活函数
1.Sigmoid
2.Softmax
3.Relu
4.LeakyRelu
5.swish函数
$\beta$是可学习固定参数或者超参数
6.maxout
9.卷积神经网络
全连接NN无法表示局部不变特征(无法胜任图像分类)
所以需要卷积神经网络来进行扩展,卷积神经网络学习的参数是卷积核的参数
这里的卷积表示的是直接对位相乘$\vec r = \vec w *\vec x$
基本结构:一般由卷积层,polling层(降采样层)和全连接层构成
10.循环神经网络RNN
用来处理具有时序的数据