CNN神经网络给图像分类(Matlab)(图神经网络图像分类)

 我来答
猪八戒网
2023-04-26 · 百度认证:重庆猪八戒网络有限公司官方账号
猪八戒网
猪八戒网(zbj.com)创建于2006年,现已形成猪八戒网、天蓬网和线下八戒工场的“双平台+一社区”服务模式,是中国领先的人才共享平台。
向TA提问
展开全部

你要看你的图像是什么。如果是彩色数字,先转成灰度。用MNIST训练网络。如果是各种主题,用彩色的imageNET训练。如果你的数据量大到足以与数据集媲美,那么直接用你的数据训练网络即可。

在流行的数据集上训练完,你需要固定卷积池化层,只训练后面的全连接层参数,用你自己的数据集。

CNN一是调整网络结构,几层卷积几层池化,卷积的模板大小等。而是在确定结构上调整参数,weightscale,learningrate,reg等。

你用CNN做图像分类,无非是把CNN当成学习特征的手段,你可以吧网络看成两部分,前面的卷积层学习图像基本-中等-高层特征,后面的全连接层对应普通的神经网络做分类。

需要学习的话,首先你去看UFLDL教程。然后cs231n

与其问别人,首先你看了imageNet数据集了吗?

对于把流行数据集与自己数据混合训练模型的方法。如果两种数据十分相似,也未尝不可。但是对于流行数据集而言,自己的标注数据量一般不会太大,如果是1:1000,1:100这种比例,那么可能不加自己的数据,完全用数据集训练的模型就能得到一个还好的结果。

如果自己的数据和数据集有些差别,那混在一起我认为自己的是在用自己的数据当做噪声加到数据集中。cnn认为图像是局部相关的,而欺骗CNN的方法则主要出于,自然图像分布在一种流形结构中,训练的模型需要这种流形假设,而人工合成的图像由于添加非自然噪点,不满足模型假设,所以能用肉眼难分辨的噪声严重干扰分类结果。

如果二者相差过大,数据集是一种分布,你的数据是另一种,放到一起训练,我没试过,但我认为结果不会太好。

这时候只能把数据集用来训练cnn的特征提取能力。而后用于分类的全连接层,视你的数据量调整规模。

光点科技
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件... 点击进入详情页
本回答由光点科技提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式