训练神经网络技巧 [英] Training neural network tips

查看:80
本文介绍了训练神经网络技巧的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

对于对象识别,建议我必须在MATLAB中使用神经网络.我有30个对象,每个对象20个图像,所以我有600个输入数据和20个不同的类.输入矩阵为100x600,目标为1x600.输入矩阵列是100个bin中关键点色相的直方图,如下所示:(m,n)=hist(hue_val,100)我取了m.
如果选择MLP网络,则需要多少层和这些层的神经元,这些函数可以传递函数适合每一层吗?

对于最后一个问题,我是否需要阴性样品?

For object recognition propose I've to use a neural network in MATLAB. I have 30 objects and 20 images for each object, so I have 600 input data and 20 different classes. Input matrix is 100x600 and target is 1x600. Input matrix columns is a histogram of keypoints' Hue in 100 bins like this: (m,n)=hist(hue_val,100) that I took m.
If I chose MLP network, how many layers and neurons for those layers are needed, which transfer functions is suitable for each layer?

And for last question, do I need negative samples?

推荐答案

  • 层数-通常,单个隐藏层就足够了,因为(只要使用非线性激活函数,那么单个层就可以近似任意数量的层.)
  • 传递函数-我不习惯这个术语,但是我假设您指的是激活函数(在将净输入传递到下一层之前对净输入执行的操作).我在此处回答了该问题的一个细微变化,但要点是,在大多数情况下,双曲线正切或逻辑等标准选择都适用案例.
  • 隐藏层中神经元的数量-crodriguezo的链接很好地体现了这一点.我真正能添加的是,根据您的输入大小,我可能会在训练时间上大量使用此数量.
  • 负样本-如果您只需要分类输入也属于30个对象中的哪个,则不需要负样本.但是,如果测试输入可能不包含30个对象,则肯定使用大量否定示例,因此网络不会认为所有是对象.
查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆