Keras 中的特征提取

Posted

技术标签:

【中文标题】Keras 中的特征提取【英文标题】:Feature extraction in Keras 【发布时间】:2017-09-06 17:15:35 【问题描述】:

我正在使用预训练的 resnet50inception v3 网络从我的图像中提取特征,然后将其与我的 ML 算法一起使用。

推荐使用哪些层进行特征提取?

我目前正在使用:"mixed10" in Inception v3"avg_pool" in resent50。不过,这些功能在 XGBoost 中的建模效果很好。

谢谢。

【问题讨论】:

【参考方案1】:

没有关于如何选择特征提取层的一般规则,但您可以使用简单的经验法则。您进入网络越深入 - 您将拥有的 ImageNet 特定语义特征就越少。但同时 - 您也获得了较少的语义功能。

我要做的是在两个拓扑中使用pool 层 - 如果这不起作用 - 然后我会通过将深度设置为元参数来更深入。

【讨论】:

您是指 include_top=True(默认)的“avg_pool”还是 include_top=False 的“global_average_pooling2d_1”? 在哪个拓扑中? resnet50 对于 include_top=True 和 False 有 'avg_pool'。 inceptionv3 对于 include_top=False 具有“global_average_pooling2d_1”,对于 include_top=True 具有“avg_pool”。在我看来,提取特征的正确方法是从 include_top=True(默认)和 resnet50 或 inceptionv3 的 'avg_pool' 层开始。对吗? 对我来说也不错。 相关点:您是否发现有必要在用于 ML 算法或相似性指标之前对提取的特征向量进行归一化?

以上是关于Keras 中的特征提取的主要内容,如果未能解决你的问题,请参考以下文章

从 LSTM 到 Sklearn 模型的特征提取

当用作预训练特征提取器时,VGG16 应该提取多少特征?

如何用Keras自定义层?

Keras:如何将 CNN 模型与决策树连接起来

深度学习框架哪家强?MXNet称霸CNNRNN和情感分析,TensorFlow仅擅长推断特征提取

图像特征提取方法