TensorSocket: Shared Data Loading for Deep Learning Training