I am training a network on 3D array (voxels) which have a range of [1, -1]. The distribution is such that most of values are 1, very few are between 1 and -1. During training the network does optimize but only for the location where there are 1’s as they dominate the loss. I am using adam optimizer. What can be done such that the network also learns for the location where there are no 1’s. I have tried assigning high weights to the location where there values less than 1 but it does not help.