BioE 301 Deep Learning for Bioengineering

This course is an introduction to the machine learning technique called deep learning or deep neural networks. A focus of the class will be the mathematical formulations of this deep networks and an explanation of how these networks can be structured and “learned” from big data. Multiple application areas with a focus on biology and health will be covered, namely, image classification, text analysis, and generative modeling. The class will be taught with a mathematical foundation in addition to a practical point of view on modern coding practices in deep learning. In particular, the example codes and the homework assignments will be given in the Python programming language with heavy utilization of the scikit-learn and PyTorch packages, a necessity for developing and applying the learned techniques. Students will have homework on every unit and a final project that needs to demonstrate mastery of the topics covered.

Planned topics:

  • Computation graphs and large-scale logistic regression
  • Multi-layer perceptions (first “basic” deep model)
  • Stochastic optimization (with a focus on stochastic gradient descent)
  • Convolutional neural networks (for image and text analysis)
  • Regularization techniques in deep learning
  • Auto-encoders (for data cleaning and unsupervised learning)
  • Generative adversarial networks and Bayesian deep Learning

Credits

3