Machine Learning For Molecular Design