Text this: Learning generalizable device placement algorithms for distributed machine learning