在神经网络中,使用多个输出节点与使用少数输出节点相比,有哪些优点或缺点?
例如,如果一个场景可以用10个、3个、2个或1个输出节点来表示,哪种方式被认为更好?显然,这取决于你如何想要表示输出,但假设这现在不重要。
或者,输出节点的数量是否不会影响网络的准确性,只是影响训练所需的计算时间?
回答:
输出节点的数量应该与你想要计算的值的数量相匹配。对于简单的回归或二元分类,你只需要一个输出节点。对于多类分类或多重回归,你需要多个输出节点。
特别是,使用前馈神经网络进行二元分类是通过计算单个输出节点的激活值,然后检查它是否大于某个阈值(通常为0或0.5)来完成的。对于有k个类别的多类分类,你计算k个输出节点的值,然后选择最大值的索引i来预测类别i。
此外,使用多个输出节点,你可以进行多标签分类,你为每个类别/标签设置一个输出节点,并预测所有超过阈值的节点为“真”。对于有k个类别的多标签分类,也可以通过k个二元分类器来执行,但你需要分别训练所有这些分类器,这在使用神经网络时可能非常耗时。