我刚刚开始了解神经网络,并且我已经使用数值系列进行了几次成功的测试,其中 NN 被训练以找到奇数或缺失值。这一切都很好。
我想要执行的下一个测试是近似数独的解,我认为它也可以被视为一种特殊的数字系列。但是,结果确实令人困惑。
我使用的是一个 MLP,三层中的每一层都有 81 个神经元。所有输出神经元都表现出产生接近 0 或 1 的值的强烈趋势。我已经缩放并截断了输出值。结果如下所示:
Expected/Actual Solution: Neural Net's Solution:
6 2 7 3 5 0 8 4 1 9 0 9 9 9 3 0 0 3
3 4 8 2 1 6 0 5 7 0 9 9 0 0 0 9 9 0
5 1 0 4 7 8 6 2 3 0 9 1 9 9 0 2 0 4
1 6 4 0 2 7 5 3 8 0 0 5 0 0 9 0 0 7
2 0 3 8 4 5 1 7 6 0 0 0 0 0 9 9 0 9
7 8 5 1 6 3 4 0 2 9 9 9 9 0 6 2 9 0
0 5 6 7 3 1 2 8 4 0 0 0 0 9 9 0 9 0
4 3 1 5 8 2 7 6 0 9 9 0 0 0 0 9 0 9
8 7 2 6 0 4 3 1 5 9 9 0 9 9 0 9 0 9
训练集大小为 100000 Sudokus,而学习率为常数 0.5。我将 NodeJS/Javascript 与 Synaptic 库一起使用。
我不期望你们提供完美的解决方案,而是提示这种行为是否是已知问题的典型症状,例如神经元太少/太多、训练集小等。