首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >CNN关于python和Keras的报道

CNN关于python和Keras的报道
EN

Stack Overflow用户
提问于 2019-11-14 14:33:03
回答 3查看 117关注 0票数 0

我做了一个简单的CNN,对狗和猫进行分类,我想让这个CNN检测出不是猫或狗的图像,这肯定是第三个不同的类别。如何实现这个目标?我应该用R-CNN还是别的什么?

附言:我在CNN使用Keras

EN

回答 3

Stack Overflow用户

发布于 2019-11-14 17:06:20

你想要做的就是所谓的“迁移学习”,使用学到的网络权重来解决一个新问题。

请注意,这是非常困难的,并且在许多约束下起作用,例如,使用可以检测汽车的CNN来检测卡车比使用经过训练的CNN来检测人来检测猫要简单。

在任何情况下,您都可以使用预先训练好的模型,加载权重,并继续使用新数据和示例对其进行训练。

这是否比简单地在所有需要的类上训练新模型更快,甚至更好,取决于实际的实现和问题。

Tl:博士

迁移学习很难!除非你知道你在做什么,或者有特定的原因,否则就在所有的类上训练一个新的模型。

票数 1
EN

Stack Overflow用户

发布于 2019-11-14 17:04:24

你可以用几乎相同的架构来训练它(当然,它取决于这个架构,如果它已经很糟糕了,那么它在更多的类上也不会有用。我建议使用最先进的模型架构进行狗和猫的分类),但除了这个第三类数据集之外,您还需要狗和猫的数据集。不幸的是,不可能使用预训练来在所有三个类别之间进行预测,只需在稍后的第三个类别上进行训练。

因此,简而言之,如果你想在这三个类别之间进行预测,你需要拥有所有三个数据集,并从头开始训练模型,否则使用预训练的,在第三个类别上训练后,它可以预测某个图像是否属于这第三个类别。

票数 0
EN

Stack Overflow用户

发布于 2020-08-18 01:29:57

你应该通过添加更多的类别来训练new_category,它包含了之前不在2个类别中的图像。我是说

代码语言:javascript
运行
复制
--cat_dir
  -*.jpg
--dog_dir
  -*.jpg
--not_at_all_dir
  -*.jpg

所以..。你要训练的类别总共是3个类别。

(类别或类,不管它是什么)

然后添加最终密集全连接的输出(3个类别)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58850711

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档