我已经构建了一个实验神经网络 - 这个想法是它可以查看JPEG图像并识别图像的哪些部分是音乐符号。神经网络和图像分类
为了训练网络,我使用了切割成100 x 100个盒子的页面的各种图像,它们的值可以是1.0(即包含符号)或0.0(不包含符号)。
然而,在训练网络时,似乎已经确定它 - 或多或少 - 每次传递0.5的结果(给出0.25的平方误差)。 sigmoid(后勤)功能用于激活。网络有10,000个输入神经元(对于100×100图像的每个像素),2000个隐藏神经元(每个输入连接到'行'和'列'隐藏神经元)。
有一个输出神经元。
用两个输出神经元会得到更好的结果吗? (即一个激活'是音乐',一个激活'不是音乐')。
(你可以看到C++源出于此位置:https://github.com/mcmenaminadrian/musonet - 尽管在任何给定的时间是什么公共回购可能不是我使用的机器上到底是什么。)
aargh - 可能只是代码中缺少一个负号的问题 - 意味着对隐藏层的纠正是通过对输出层进行错误纠正而发生的。现在就检查一下。 – adrianmcmenamin
我对这个话题根本不了解,但我会选择一个输出神经元。如果它的输出低于某个阈值,则它包含'音乐',如果它高于另一个阈值,则不是'音乐'。 – Professor901