3LC: Lightweight and Effective Traffic Compression for Distributed Machine Learning