machine-learning - 将视觉上不同的对象分类为一类
问题描述
我们正在构建一个神经网络来对对象进行分类,并拥有一个包含 1000 个类别的大型图像数据集。其中一类是“香蕉”,它包含 1000 张香蕉的图像。其中一些图像(约 10%)是香蕉泥,它们在视觉上与该类别中的其他图像非常不同。
如果我们想要对捣碎的香蕉和普通香蕉进行分类,我们应该将香蕉图像分成两个单独的类并单独训练,还是保持两个子集合并?
我试图了解视觉上不同的子类的存在如何影响给定类的识别。
解决方案
这里的问题很简单。你需要你的神经网络来学习两组图像。这意味着您需要反向传播合理的错误信息。如果你确实有关于捣碎的香蕉的真实信息,那么反向传播绝对有用。它帮助第一层学习两组特征。
请注意,神经网络的好处是您可以反向传播任何类型的误差向量。如果您的输出有 3 个节点banana, non-mashed banana, mashed banana
,那么您基本上回避了问题中隐含的二元选择。在推理过程中,您始终可以删除输出节点。
推荐阅读
- package - 如何在 Julia 中找到我的包版本?
- php - 当我再次单击按钮时,Ajax 请求再次显示数据
- sql - SQL Server:具有不同长度的分析窗口函数
- java - 如何在 android studio 中进行布局?
- c# - 为什么不能在主线程中直接捕获和处理工作线程抛出的异常?
- javascript - 在 shopify 中创建水平滚动表
- amazon-cloudformation - AWS CDK Glue 作业 + 触发器已创建但不会运行
- android - 为什么不同的 Android 设备允许的最大同时蓝牙连接数不同?
- html - 为什么设置边框线的高度而不是水平尺寸时称为“border-width”?
- windows - FWPS 标注、用法和参考