Python Alex网络用于特征提取
我试图为ImageNet获取可靠的特征,以便对其进行进一步分类。为了实现这一点,我想使用tensorflow和Alexnet进行特征提取。这意味着我想从CNN的最后一层获取值。有人能写一段Python代码来解释它是如何工作的吗?如前所述,这并不是stackoverflow的真正目的,但在实践中,许多人确实选择编写代码来帮助解释答案(因为这通常更容易)。 所以我假设这只是沟通失误,你真的想问以下两个问题之一:Python Alex网络用于特征提取,python,classification,tensorflow,feature-extraction,Python,Classification,Tensorflow,Feature Extraction,我试图为ImageNet获取可靠的特征,以便对其进行进一步分类。为了实现这一点,我想使用tensorflow和Alexnet进行特征提取。这意味着我想从CNN的最后一层获取值。有人能写一段Python代码来解释它是如何工作的吗?如前所述,这并不是stackoverflow的真正目的,但在实践中,许多人确实选择编写代码来帮助解释答案(因为这通常更容易)。 所以我假设这只是沟通失误,你真的想问以下两个问题之一: 如何获取TensorFlow中Alexnet最后一层的值 从深层卷积网络(如alexne
cifar10
示例代码(它松散地基于AlexNet)作为示例。网络的前向传递构建在推断
函数中,该函数返回表示softmax层输出的变量。要实际获得预测的图像标签,只需将logits argmax,如下所示:(我省略了一些设置代码,但是如果您已经运行了alexnet,那么您已经可以使用它了)
因此,仅仅抓住最后一层的特征就如同要求它们一样简单。唯一的问题是,在本例中,cifar10不会以本机方式公开它们,因此需要修改cifar10.inference函数以返回这两个参数:
# old code in cifar10.inference:
# return softmax_linear
# new code in cifar10.inference:
return softmax_linear, local4
然后修改对cifar10.inference的所有调用,就像我们刚才展示的那样:
logits,local4 = cifar10.inference(images)
predictions = tf.argmax(logits,1)
# Actually run the computation, this time asking for both answers
labels,last_layer = session.run([predictions, local4])
就这样<代码>最后一层包含您为模型提供的所有输入的最后一层
至于第二个问题,这是一个更深层次的问题,但我猜这就是为什么你想研究它。我建议从阅读这方面发表的一些论文开始。我不是这里的专家,但我确实喜欢周伯雷的作品。例如,尝试查看中的图2。这是一篇本地化论文,但它使用了非常相似的技术(博雷的几篇论文也使用了这种技术)。正如前面提到的,这并不是stackoverflow真正的目的,但在实践中,许多人确实选择编写代码来帮助解释答案(因为这通常更容易)。
所以我假设这只是沟通失误,你真的想问以下两个问题之一:
cifar10
示例代码(它松散地基于AlexNet)作为示例。网络的前向传递构建在推断
函数中,该函数返回表示softmax层输出的变量。要实际获得预测的图像标签,只需将logits argmax,如下所示:(我省略了一些设置代码,但是如果您已经运行了alexnet,那么您已经可以使用它了)
因此,仅仅抓住最后一层的特征就如同要求它们一样简单。唯一的问题是,在本例中,cifar10不会以本机方式公开它们,因此需要修改cifar10.inference函数以返回这两个参数:
# old code in cifar10.inference:
# return softmax_linear
# new code in cifar10.inference:
return softmax_linear, local4
然后修改对cifar10.inference的所有调用,就像我们刚才展示的那样:
logits,local4 = cifar10.inference(images)
predictions = tf.argmax(logits,1)
# Actually run the computation, this time asking for both answers
labels,last_layer = session.run([predictions, local4])
就这样<代码>最后一层包含您为模型提供的所有输入的最后一层
至于第二个问题,这是一个更深层次的问题,但我猜这就是为什么你想研究它。我建议从阅读这方面发表的一些论文开始。我不是这里的专家,但我确实喜欢周伯雷的作品。例如,尝试查看中的图2。这是一篇本地化论文,但它使用了非常类似的技术(博莱的几篇论文也使用了这种技术)。“有人能写一段python代码,解释一下它是如何工作的吗?”-我想你误解了。请阅读下面的文章:“有人能写一段python代码来解释它是如何工作的吗?”-我想你误解了。拿起这本书,仔细阅读。