我对神经网络比较陌生,但是我一直在训练多输出网络,该网络可以给我两个输出。我正在使用Keras,并将docker-php-entrypoint docker-php-ext-enable docker-php-source
docker-php-ext-configure docker-php-ext-install
的输出损耗值加权为0.2,num_loss
的输出损耗值加权为1。
训练时,我发现尽管两个单独的损失都减少了,但总损失仍会增加,一个时期的输出是:
output_loss
以及之后的时代:
val_loss: 1.0926 - val_num_loss: 0.3285 - val_output_loss: 1.1055 - val_num_accuracy: 0.8501 - val_output_accuracy: 0.5036
(我没有包括训练集输出,因为它似乎不相关,因为它没有遇到相同的问题)
同一件事又发生了,在某个时期之后,但是尽管两个属性的损失都在增加,但总损失却减少了:
val_loss: 1.1662 - val_num_loss: 0.3036 - val_output_loss: 1.0861 - val_num_accuracy: 0.8655 - val_output_accuracy: 0.5202
值得一提的是,val_loss: 1.1662 - val_num_loss: 0.3036 - val_output_loss: 1.0861 - val_num_accuracy: 0.8655 - val_output_accuracy: 0.5202
val_loss: 1.0745 - val_num_loss: 0.3151 - val_output_loss: 1.1212 - val_num_accuracy: 0.8612 - val_output_accuracy: 0.5165
的输出不是一个完全独立的分支。它从主体中分离出来,给出其输出,然后将其结果再次反馈到网络的主体中。