我在Tom Mitchell的“机器学习简介”一书中读到了一个项目的想法。该项目涉及确定面部的方向(左,右,下,直)。我使用我自己开发的神经网络,它可以工作(使用XOR,抛物线函数测试......)但是不能很好地训练它以正确地确定它们。我得到的最好的情况是43%正确,这是非常低的。
以下是该项目的说明:
图像32 x 30,灰度(我使用13人x 32张图像用于训练样例,4张用于x 32张图像用于测试)。
神经网络:3层 - 输入,隐藏,输出
32 x 30输入单位
3个隐藏单位,使用Sigmoid作为转移函数
1个输出单位,使用线性作为传递函数。
OUT:0.2 =左; 0.4 =下降; 0.6 =对; 0.8直接
学习率=动量= 0.3
权重和偏差设置为随机小值。
经过25000次迭代后,我只有约40%的正确率。在他们设法获得的书中 准确率达90%!
有什么想法吗?
答案 0 :(得分:1)
在@ffriend的评论之后,一切都像魅力一样。我使用了4个输出神经元,准确率超过90%。如果我在隐藏层中使用更多神经元,则错误会变小,但程序需要更多时间来运行网络并进行反向传播。