- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我不是“猫与狗”,而是在一个全新的网络(无迁移学习)上尝试“猫与其他一切”,使用我分类为“猫”或“的大量随机互联网图像”没有猫”类别。
不幸的是,我的网络似乎不会针对此任务进行随机训练。
我的网络是基本的多层 CNN,有一个大的密集层,最后有一个 sigmoid 神经元,输出 0 或 1 来表示“是猫”或“不是猫”。我的“猫”图像由许多不同品种的猫在不同环境和背景下的多种姿势和角度的裁剪图像组成。我尝试了各种形式的数据增强、图像加权和数据/验证改组,但仍然无法从中获得有用的网络。
我错过了什么?我的架构或方法有问题吗?我是机器学习新手,使用 Keras 而不是 Tensorflow。
我的网络架构如下:
Input 320x320 RGB image into network, then:
1a) Conv layer, 32 filters, 3x3
1b) Relu and max pooling 2x2.
2a) Conv layer, 32 filters, 3x3
2b) Relu and max pooling 2x2
3a) Conv layer, 64 filters, 3x3
3b) Relu and max pooling 2x2
4) Flatten
5a) Dense 64 neurons
5b) Relu
5c) Dropout 0.5
5d) Final dense 1 neuron, sigmoid activation. (0 = cat in image, 1 = no cat in image)
我正在使用二进制交叉熵和图像旋转/移位/翻转/等。用于数据增强。我的数据集高度不平衡,每 5 张非猫图片对应 1 张猫图片。我保留了 25% 的数据集用于验证,同样具有 1:5 的不平衡。我对拟合生成器进行了加权,从而使猫图像的权重提高了 5 倍。
架构、初始化等是否存在问题,或者我只是严重低估了在现代硬件上从头开始训练 CNN 所需的时间?
最佳答案
“猫 vs 狗”示例经常使用 VGG16,如 fast.ai 中所示。当然。
其16层网络被VGG团队在ILSVRC-2014 ImageNet中使用竞赛。请参阅one implementation in Keras 。
您可以下载权重,然后将图像缩小到(3 channel x 224x224 像素)后将其应用于您的问题。
关于machine-learning - 是什么让这个简单的 CNN 无法对图像是否包含猫进行分类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47223531/
有使用过 Linux 系统的小伙伴,肯定会使用过 cat 这个命令。当然,在 Linux 下,此猫非彼猫,这里的 cat 并不代表猫,而是单词 concatenate 的缩写。 cat 命令是一个
Closed. This question needs to be more focused。它当前不接受答案。
我知道我可以穿越 List秒 import cats.instances.list._ import cats.syntax.traverse._ def doMagic(item: A): M[B]
标准库在List上提供了unzip方法: scala>val l = List((1, "one"), (2, "two"), (3, "three"), (4, "four"), (5, "five
我正在经历https://www.scala-exercises.org/对于猫来说。我想我明白Apply.ap 是什么意思。但我看不到它有任何用途。 有什么区别: Apply[Option].map
我是 cat 和函数式编程方面的新手,我正在努力对 EitherT 等函数式数据类型进行单元测试。有示例代码: class Library[F[_]]() { def create(book:
基本上我试图理解这些命令之间的区别: cat >(tee f.txt) echo yolo > >(tee t.txt) 前两个命令具有完全相同的结果:打印“yolo”,然后终端返回控制权,这正是我
我正在经历https://www.scala-exercises.org/对于猫来说。我想我明白Apply.ap 是什么意思。但我看不到它有任何用途。 有什么区别: Apply[Option].map
我是 cat 和函数式编程方面的新手,我正在努力对 EitherT 等函数式数据类型进行单元测试。有示例代码: class Library[F[_]]() { def create(book:
给定: import cats.syntax.cartesian._ type M[X] = Future[Either[Error, X]] val ma: M[A] = ??? val mb: M
我想使用来自该存储库的 cats-saga:https://github.com/VladKopanev/cats-saga 但是我卡在了 OrderSagaCoordinator.scala L16
假设我有: val x1: Either[String, Int] = Right(1) val x2: Either[String, Float] = Left("Nope") val x3: Ei
我正在重新编码 printf,我从 printf 获得的行为与真正的 printf 略有不同,因为我使用字符串(即 malloc),而真正的 printf 使用写入函数。 做的时候: ./a.out
这个问题在这里已经有了答案: What is PECS (Producer Extends Consumer Super)? (16 个答案) 关闭 5 年前。 这不是一个重复的问题,因为我特别询问
好的,所以我会更具体一些(自从我上一个问题以来)。 基本上,我有一个分页页面 - 有 3 个显示类别,但每个分页页面仅显示 50 个项目。因此,您可以获取占据一页的所有单个类别,或不同类别的组合 -
我在“Abb/test”文件夹中有一些 c 文件和 common.txt,在“Abb”文件夹中有 temp.txt。我想在所有 c 文件的标题中复制 common.txt 的内容。我正在使用以下 un
我有以下脚本 #!/bin/bash set i=0; while read line do echo "$line"; $i INFO 2013-08-16 13:46:48,660 In
我正在尝试为猫寻找一个例子 EitherT.collectRight 。我有一个EitherT[Future, String, Event]当我这样做时collectRight,我明白了 Error:
我有这段代码可以编译并且工作正常 import cats.implicits._ Cartesian[ValidResponse].product( getName(map).toValida
我有两个相同的文件,但它们的大小不同。这让我想到文件中有特殊字符,即 ^M 在第六章中 :set list 不显示 ^M 字符但是 cat -A 确实显示字符。 此外,VI 仅在出现在行尾时才显示特殊
我是一名优秀的程序员,十分优秀!