[英]How to add a regression head after the fully connected layer in convolutional network using Tensorflow?
我是深度学习和Tensorflow的新手,由于我正在进行的项目,我不得不学习这个主题。 我正在使用卷积网络来检测和查找图像中单个对象的位置。 我正在使用Standford CS231n类中引入的方法。 讲师提到了在网络中完全连接的层之后连接回归头以找到对象的位置。 我知道DNNRegressor
中有DNNRegressor。 我应该用它作为回归头吗?
在我修改Tensorflow关于使用ConvNet来识别我的案例的手写数字的教程之前。 我不太确定如何将回归头添加到该程序,以便它还可以找到该对象的边界框。
本周我有机会接触机器学习和深度学习,如果我问了一个非常愚蠢的问题,道歉,但我真的需要找到解决问题的方法。 非常感谢你。
我也在寻找这个问题,我在文档中找到了以下部分。
密集(完全连接)层,对卷积层提取的特征进行分类,并由池化层进行下采样。 在密集层中,层中的每个节点都连接到前一层中的每个节点。
根据这个引用, 似乎你不能做回归而是分类 。
编辑:经过一些研究,我发现了一种在tensorflow
使用fully-connected
层的tensorflow
。
import tensorflow.contrib.slim as slim
#create your network **net**.
#In the last step, you should use
y_prime = slim.fully_connected(net, 1, activation_fn=None, reuse=reuse)
loss = tf.reduce_mean(tf.square(y_prime - y)) #L2 norm
lr = tf.placeholder(tf.float32)
opt = tf.train.AdamOptimizer(learning_rate=lr).minimize(loss)
您可以在最后一步之前添加更多fully connected
图层,这可以包含更多节点。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.