Optimizing Distributed Machine Learning on User-Variant Edge Computing Systems