问题标签 [vgg-net]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
277 浏览

machine-learning - 微调VGG,得到:1减2造成的负维度大小

我正在为 MNIST 任务微调 VGG19 模型。MNIST中的图像是(28,28,1),是一个通道。但是VGG想要输入的是(?,?,3),也就是三个通道。

所以,我的方法是在所有 VGG 层之前再添加一个 Conv2D 层,将 (28,28,1) 数据更改为 (28,28,3),这是我的代码:

现在我的输入形状是正确的(我认为)。

这是我的整个模型: # 更改输入形状:inputs = Input(shape=(28,28,1)) x = Conv2D(3,kernel_size=(1,1),activation='relu')(inputs)

我得到了:

我已经搜索了问题,一种解决方案是添加

但这对我不起作用。

我的代码有什么问题?

0 投票
1 回答
1085 浏览

python - 无法使用 Keras fit_generator 重现结果

我刚刚注意到每次运行 Keras 模型时都会得到不同的结果。我已经在 GitHub 上尝试了这个问题的解决方案,基本上:

  • 在导入其他任何东西之前设置种子
  • 设置shuffle=Falsefit_generator()

即使我这样做了,我似乎仍然无法重现相同的结果。

我已经在我刚刚链接的问题上发布了同样的问题,但由于可见性,我决定也在这里发布,希望任何人都可以帮助我找出问题所在。

0 投票
2 回答
320 浏览

python-3.x - 在 VGG-16 上停止和重新开始训练

我正在使用预训练的 VGG-16 模型进行图像分类。我正在添加自定义最后一层,因为我的分类类的数量是 10。我正在为模型训练 200 个时期。

我的问题是:如果我在某个时期随机停止(通过关闭 python 窗口)训练,有什么办法吗?比如说没有。50 和从那里恢复?我已经阅读了有关保存和重新加载模型的信息,但我的理解是这仅适用于我们的自定义模型,而不适用于 VGG-16 等预训练模型。

0 投票
1 回答
3161 浏览

keras - 从头开始训练 VGG16

我试图从头开始训练我的 VGG16 网络。为此,我从https://gist.github.com/baraldilorenzo/07d7802847aaad0a35d3下载了架构

其中一位作者将代码编写为 vgg-16_keras.py 代码。在此代码中,预期的默认图像大小为 224x224。我的输入图像也具有相同的尺寸。所以,大小没有问题。

接下来,我做了一些细微的更改,以便我的架构准备好在我手头的一些示例图像上训练我的模型。当我尝试训练我的模型时,出现“负维度”错误。为了调试代码,我尝试获取一些函数,它可以为我提供不同层的输出尺寸,但不幸的是没有。

我正在发布我的代码以及错误消息

请注意,我没有对代码中给出的尺寸和超参数值进行任何更改。我只是从文档的角度修改了代码,例如命名不同的层、添加注释等。

另外,建议我自己诊断未来此类错误的方法。

错误信息如下:

0 投票
2 回答
6078 浏览

image - 如何使用 1 通道图像作为 VGG 模型的输入

我首先使用 3 通道图像作为 VGG16 模型的输入,没有问题:

现在我想改用 1 通道图像。所以我这样做了:

但我收到一条错误消息:

在 Keras 中将 1 通道图像转换为 3 通道图像的正确方法是什么?

0 投票
1 回答
4862 浏览

python - Pytorch 保存和重新加载模型

对于 VGG16 模型,我有以下结构:

使用以下代码保存模型时:

我收到以下错误:

AttributeError:“VGG”对象没有属性“hidden_​​layers”

然而,VGG 有 hidden_​​layers。如何通过学习迁移保存 VGG?

0 投票
1 回答
1619 浏览

python - 如何正确使用 vgg 模型的中间层

我所做的是:

但我收到以下错误消息:

我觉得我这样做的方式有问题,但无法找出正确的方式。

0 投票
1 回答
1995 浏览

python - Pytorch 通过知识转移保存和加载 VGG16

我正在使用以下语句保存具有知识转移的 VGG16:

并使用以下语句重新加载:

state_dict = torch.load('checkpoint.pth') model.load_state_dict(state_dict)

只要我重新加载 VGG16 模型并使用以下代码为其提供与以前相同的设置,它就可以工作:

如何避免这种情况?如何在无需重新加载 VGG16 和重新定义分类器的情况下重新加载模型?

0 投票
0 回答
55 浏览

r - 在小图像 dataset.in r by keras 上训练 VGG16 时出错

我只想训练一个分类器来分类来自纽约和洛杉矶的街景图像。

一切都适用于图像输入或数据处理。

但是它在最后一个函数中报告了一个错误。

ValueError:检查目标时出错:预期 block5_pool 有 4 个维度,但得到了形状为 (20, 1) 的数组

代码如下。如何解决调试这个问题?我跳过了数据清理部分。

0 投票
0 回答
3645 浏览

python - 在 Keras 中是否有可能具有宽度和高度为 32x32 的 input_shape?

我正在使用带有 Keras 和 Tensorflow 的 Python 作为后端,我想为我的模型使用尽可能小的输入图像。
VGG19 应用程序表示它允许输入形状的宽度和高度低至 32。几周前,Keras 网站上的最小值为 48。我用 48 没有问题。现在,我想尝试 32,但我不能这样做,因为我得到:

我提到我将 Keras 更新到了 2.2.2 版本,并且我还删除了 VGG19 的权重模型文件(来自~/.keras/models/)。如果我将 input_shape 设置为 (48, 48, 3),它会再次下载模型,否则会出现上述错误。

简而言之,我的代码只想加载预训练模型:

任何想法都值得赞赏。