【人工智能】深度学习:神经网络模型
神经网络基础知识
BP神经网络的概念
单个神经元的结构
CNN模型汇总
LeNet5 模型
AlexNet 模型
VGG模型
Inception Net(GoogleNet)模型
ResNet (残差网络)
RNN模型(循环神经网络)
为什么需要RNN
RNN结构
LSTM(长短期记忆网络)模型
LSTM结构
GRU模型
GRU结构
计算重置门rtr_trt和候选状态h~t\tilde{h}_th~t
计算更新门ztz_tzt和当前状态hth_tht
边走、边悟迟早会好 |
神经网络(Neural Network)是一种模拟人脑神经元连接方式的计算模型。其基本组成部分是神经元(Neurons),通过加权连接和激活函数构成复杂的网络结构。神经网络广泛应用于模式识别、分类和回归等领域。
BP神经网络(Backpropagation Neural Network)是多层前馈神经网络的训练算法,通过误差反向传播调整网络权重以最小化输出误差。它主要包括以下步骤:
单个神经元的基本结构包括:
公式表示为: y=f(∑i=1nwixi+b)y = f\left( \sum_{i=1}^{n} w_i x_i + b \right)y=f(∑i=1nwixi+b) 其中,fff是激活函数,wiw_iwi是权重,xix_ixi是输入,bbb是偏置项。
卷积神经网络(CNN)是一种专门处理图像数据的神经网络,具有卷积层、池化层和全连接层等结构。常见的CNN模型有LeNet5、AlexNet、VGG、Inception Net(GoogleNet)和ResNet。
LeNet5是最早的卷积神经网络之一,由Yann LeCun等人在1998年提出,用于手写数字识别。其结构包括:
AlexNet由Alex Krizhevsky等人在2012年提出,标志着深度学习在图像识别领域的突破。其结构包括:
VGGNet由Simonyan和Zisserman在2014年提出,其特点是使用非常小的卷积核(3x3)和较深的网络结构。常见的VGG模型包括VGG16和VGG19,分别包含16和19个卷积层和全连接层。其结构包括:
Inception Net由Google提出,主要特点是Inception模块,能够在同一层上并行进行不同尺寸卷积和池化操作。其结构包括:
ResNet由微软研究院提出,主要特点是引入残差连接,解决深度网络中的梯度消失和退化问题。其结构包括:
RNN是一种用于处理序列数据的神经网络,其特点是具有循环连接,能够保留序列信息。RNN在时间序列预测、自然语言处理等领域有广泛应用。
传统神经网络在处理序列数据时无法保留之前的信息,而RNN通过循环连接,能够保留并利用序列中的上下文信息,使得其在处理时间序列数据时更为有效。
RNN的基本结构包括:
公式表示为: ht=f(Wihxt+Whhht−1+bh)h_t = f(W_{ih}x_t + W_{hh}h_{t-1} + b_h)ht=f(Wihxt+Whhht−1+bh) yt=g(Whoht+bo)y_t = g(W_{ho}h_t + b_o)yt=g(Whoht+bo) 其中,fff是隐藏层的激活函数,ggg是输出层的激活函数,WWW和bbb分别是权重和偏置项。
LSTM是一种改进的RNN,能够有效解决长期依赖问题。其通过引入记忆单元和门控机制,控制信息的保留和遗忘。
LSTM的基本结构包括:
公式表示为: ft=σ(Wf⋅[ht−1,xt]+bf)f_t = \sigma(W_f \cdot [h_{t-1}, x_t] + b_f)ft=σ(Wf⋅[ht−1,xt]+bf) it=σ(Wi⋅[ht−1,xt]+bi)i_t = \sigma(W_i \cdot [h_{t-1}, x_t] + b_i)it=σ(Wi⋅[ht−1,xt]+bi) C~t=tanh(WC⋅[ht−1,xt]+bC)\tilde{C}_t = \tanh(W_C \cdot [h_{t-1}, x_t] + b_C)C~t=tanh(WC⋅[ht−1,xt]+bC) Ct=ft⋅Ct−1+it⋅C~tC_t = f_t \cdot C_{t-1} + i_t \cdot \tilde{C}_tCt=ft⋅Ct−1+it⋅C~t ot=σ(Wo⋅[ht−1,xt]+bo)o_t = \sigma(W_o \cdot [h_{t-1}, x_t] + b_o)ot=σ(Wo⋅[ht−1,xt]+bo) ht=ot⋅tanh(Ct)h_t = o_t \cdot \tanh(C_t)ht=ot⋅tanh(Ct)
GRU(Gated Recurrent Unit)是一种简化的LSTM模型,减少了计算复杂度,保留了LSTM的长短期记忆能力。
GRU的基本结构包括:
公式表示为: rt=σ(Wr⋅[ht−1,xt]+br)r_t = \sigma(W_r \cdot [h_{t-1}, x_t] + b_r)rt=σ(Wr⋅[ht−1,xt]+br) zt=σ(Wz⋅[ht−1,xt]+bz)z_t = \sigma(W_z \cdot [h_{t-1}, x_t] + b_z)zt=σ(Wz⋅[ht−1,xt]+bz) h~t=tanh(Wh⋅[rt⋅ht−1,xt]+bh)\tilde{h}_t = \tanh(W_h \cdot [r_t \cdot h_{t-1}, x_t] + b_h)h~t=tanh(Wh⋅[rt⋅ht−1,xt]+bh) ht=(1−zt)⋅ht−1+zt⋅h~th_t = (1 - z_t) \cdot h_{t-1} + z_t \cdot \tilde{h}_tht=(1−zt)⋅ht−1+zt⋅h~t
重置门rtr_trt控制前一个时间步的隐藏状态如何影响当前时间步的候选状态: rt=σ(Wr⋅[ht−1,xt]+br)r_t = \sigma(W_r \cdot [h_{t-1}, x_t] + b_r)rt=σ(Wr⋅[ht−1,xt]+br) 候选状态h~t\tilde{h}_th~t是当前时间步的潜在新信息: h~t=tanh(Wh⋅[rt⋅ht−1,xt]+bh)\tilde{h}_t = \tanh(W_h \cdot [r_t \cdot h_{t-1}, x_t] + b_h)h~t=tanh(Wh⋅[rt⋅ht−1,xt]+bh)
更新门ztz_tzt决定当前时间步的隐藏状态如何更新: zt=σ(Wz⋅[ht−1,xt]+bz)z_t = \sigma(W_z \cdot [h_{t-1}, x_t] + b_z)zt=σ(Wz⋅[ht−1,xt]+bz) 当前时间步的隐藏状态hth_tht通过前一个隐藏状态和当前候选状态的加权和计算: ht=(1−zt)⋅ht−1+zt⋅h~th_t = (1 - z_t) \cdot h_{t-1} + z_t \cdot \tilde{h}_tht=(1−zt)⋅ht−1+zt⋅h~t
这些模型和概念构成了神经网络在图像识别、自然语言处理等领域的基础和核心技术。
感谢支持 听忆.-CSDN博客
众口难调从心就好 |
TAG:神经网络模型