我生成粘贴在200x200大小的白色背景上的单个硬币的图像.硬币是从8欧元硬币图像(每个硬币一个)中随机选择的,并具有:
以下是两个示例(添加了中心标记):两个数据集示例
我正在使用Python + Lasagne.我将彩色图像输入到神经网络中,该网络具有完全连接的2个线性神经元的输出层,一个用于x,一个用于y.与生成的硬币图像相关联的目标是硬币中心的坐标(x,y).
我试过(从使用卷积神经网络检测面部关键点教程):
我总是使用简单的SGD,调整学习率,试图有一个很好的递减误差曲线.
我发现,当我训练网络时,错误会减少,直到输出始终是图像的中心.看起来输出与输入无关.网络输出似乎是我给出的目标的平均值.由于硬币的位置均匀地分布在图像上,因此这种行为看起来像是错误的简单最小化.这不是想要的行为.
我感觉网络没有学习,只是试图优化输出坐标以最小化针对目标的平均误差.我对吗?我怎么能阻止这个?我试图消除输出神经元的偏差,因为我想也许我只是修改了偏差,所有其他参数都设置为零,但这不起作用.
单独一个神经网络是否有可能在这项任务中表现良好?我已经读过,人们还可以为当前/不存在的分类训练网络,然后扫描图像以找到对象的可能位置.但我只是想知道是否可以使用神经网络的正向计算.