首页 > 编程知识 正文

如何训练深度思考

时间:2023-05-06 09:49:38 阅读:229417 作者:4622

本文来解释一下深度学习训练过程训练的是什么,换句话说,训练生成的模型文件里记录的是什么。
先笼统回答一下,记录的是网络节点的权重、偏置等参数。不懂网络节点指的是什么的话接着看下文。
先看一个常见的卷积网络层:

layer { name: "conv1" type: "Convolution" bottom: "conv1a" top: "conv2a" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 1 decay_mult: 0 } convolution_param { num_output: 96 pad: 2 kernel_size: 5 stride: 2 weight_filler { type: "msra" } bias_filler { type: "constant" } engine: CUDNN }}

卷积层num_output为96,要生成96个map,每个map是不同卷积核在bottom的每个map上进行卷积,并将每个对应位置上的值相加然后再加上一个偏置项。
在反向传播过程中,若第x层的a节点通过权值W对x+1层的b节点有贡献,则在反向传播过程中,梯度通过权值W从b节点传播回a节点。其中a节点,就比如上述卷积网络中bottom conv1a中某个map上的某个像素,b节点就比如top conv2a中某个map上的某个像素。
 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。