深度学习训练过程训练的是什么

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

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上的某个像素。
 

你可能感兴趣的:(深度学习训练过程训练的是什么)