GNN advanced knowledge

1. BP时 注意loss value

避免构建的GNN model在BP时陷入梯度消失或梯度爆炸,这都会导致model performance很差。

修正方法

  • Batch normalization
    • torch.nn.BatchNorm1d()
  • 激活函数
    • torch.nn.ELU(); torch.nn.ReLU(); torch.nn.Sigmoid()

目标时将BP loss value限定在20-40之间

Note that:一定要在training时将loss value打印出来,时时查看!!! 

print('triplet_loss: ', loss)
print('gcl_loss: ', gcl_loss)
message = '\n triplet_loss{:.2f} '.format(loss)
message += '\n gcl_loss{:.2f} '.format(gcl_loss)
with open(save_path_i + '/log.txt', 'a') as f:
    f.write(message)

你可能感兴趣的:(GNN,algorithms,深度学习,人工智能)