BME 312: Biomedical Applications in Machine Learning



BME 220 (for statistical analysis and Python applications), EA1 (for linear algebra background). Math 220-1 and 220-2 (for single-variable calculus background). Coding knowledge is encouraged (preferably in Python). For any equivalent classes, please get in touch with the instructor


The course will start with a brief overview on how to upload and handle various types of biomedical data using Python. Supervised learning tasks such as regression and classification will be implemented in Python using data from breast cancer and early diabetes patients and various Machine Learning models such as Linear Regression/Classification and Support Vector Machines. Convolutional Neural Networks and image analysis techniques will be introduced to classify data in image format such as x-ray and MRI data. Hidden Markov Models (HMM) will be introduced to forecast or classify biomedical data in time-series format such as Electrocardiograms, (ECGs) Electromyograms (EMGs) and genomic data. Lastly, unsupervised learning approaches to unlabeled data, such as clustering and dimensionality reduction will be applied to both structured (numerical) and image data. All models will be implemented in Python, either from scratch or using high-level libraries.

Who Takes It?

Junior/Senior undergraduates, MS and PhD students


  • Introduction to Bioinformatics and Exploratory Data Analysis
  • Linear/Logistic Regression on structured datasets
  • Support Vector Machines on structured datasets
  • Image Processing
  • Feed-Forward/Convolutional Neural Networks on image datasets
  • Hidden Markov Models on time-series datasets
  • K-means and hierarchical clustering on unlabeled numerical and image datasets
  • Principle Component Analysis on unlabeled and high-dimensional datasets

Textbook/Required Materials