tensorflow ,卷积层梯度为 0

今天 在测试多GPU并行实验时,采用. 
tf.train.GradientDescentOptimizer优化器   卷积层的梯度都为 0, 模型保持不动 ,换成

AdadeltaOptimizer就好了,原因 还不清楚。待补充

a

tf.train.GradientDescentOptimizer

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个简单的深度卷神经网络的代码示例,其中包含两个卷层和一个全连接层: ```python import numpy as np import tensorflow as tf # 定义输入和输出的维度 input_shape = (None, 28, 28, 1) output_shape = (None, 10) # 定义卷层的参数 conv1_filters = 32 conv1_kernel_size = (3, 3) conv2_filters = 64 conv2_kernel_size = (3, 3) # 定义全连接层的参数 fc1_units = 128 # 定义输入和输出的占位符 inputs = tf.placeholder(tf.float32, shape=input_shape) labels = tf.placeholder(tf.float32, shape=output_shape) # 第一层卷层 conv1 = tf.layers.conv2d(inputs=inputs, filters=conv1_filters, kernel_size=conv1_kernel_size, padding='same', activation=tf.nn.relu) pool1 = tf.layers.max_pooling2d(inputs=conv1, pool_size=(2, 2), strides=(2, 2)) # 第二层卷层 conv2 = tf.layers.conv2d(inputs=pool1, filters=conv2_filters, kernel_size=conv2_kernel_size, padding='same', activation=tf.nn.relu) pool2 = tf.layers.max_pooling2d(inputs=conv2, pool_size=(2, 2), strides=(2, 2)) # 全连接层 flatten = tf.layers.flatten(inputs=pool2) fc1 = tf.layers.dense(inputs=flatten, units=fc1_units, activation=tf.nn.relu) # 输出层 logits = tf.layers.dense(inputs=fc1, units=output_shape[1]) predictions = tf.nn.softmax(logits) # 定义损失函数和优化器 cross_entropy = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(labels=labels, logits=logits)) optimizer = tf.train.AdamOptimizer().minimize(cross_entropy) # 训练模型 with tf.Session() as sess: # 初始化变量 sess.run(tf.global_variables_initializer()) # 读取数据集 train_data = ... train_labels = ... # 训练模型 for i in range(num_epochs): # 随机抽取一批样本进行训练 indices = np.random.choice(len(train_data), batch_size) batch_data = train_data[indices] batch_labels = train_labels[indices] # 计算损失函数和梯度,并更新模型参数 loss, _ = sess.run([cross_entropy, optimizer], feed_dict={inputs: batch_data, labels: batch_labels}) # 每隔一定步数输出损失函数值 if i % print_every == 0: print("Epoch {}/{}: Loss = {}".format(i, num_epochs, loss)) ``` 以上只是一个简单的示例,实际应用中可能需要根据具体任务的要求对网络结构和参数进行进一步的调整和优化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值