单一网络 – 多输出,还是多网络 – 单输出?

在设计具有多个输出的前馈神经网络时,将单一网络设计为多输出,与设计多个网络每个网络单输出之间,除了计算效率之外,是否存在概念上的差异?

虽然同一网络中的输出神经元不会“实时”相互影响,但它们确实会影响训练,因为每个输出的误差会反向传播并影响隐藏层的权重,进而影响其他输出的值。

是否有些问题更适合采用其中一种方式解决?直觉上,我认为单一网络更适合那些一次只能有一个输出活跃的问题(例如光学字符识别),而多网络更适合那些可以同时有多个输出活跃的问题(例如当每个输出对应输入的某些特征,且这些特征可以同时存在)。但这只是直觉。在实践中是否成立呢?


回答:

正如你自己指出的,概念上的差异在于联合训练与单独训练。我认为在大多数情况下,如果问题是相关的(例如,如果所有输出都是关于识别字符的),联合训练会有所帮助。因此,我认为在你提到的两种问题中,无论是否可以同时有多个输出活跃,联合训练都会有所帮助。

联合训练不会有帮助并且可能会有害的情况是,当任务之间完全没有关联时,例如,如果一个输出是关于“字符a”的,另一个输出是关于“声音x”的。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注